
EBK BIG JAVA: EARLY OBJECTS, INTERACTIV
6th Edition
ISBN: 8220102010314
Author: Horstmann
Publisher: YUZU
expand_more
expand_more
format_list_bulleted
Question
Chapter 10, Problem 19PP
Program Plan Intro
Tic-Tac-Toe game
Program plan:
- In a file “TicTacToeStrategy.java”, create an interface “TicTacToeStrategy”,
- Declare the method “get_Move ()” to compute the next move.
- In a file “TicTacToeStrategyMock.java”, create a class “TicTacToeStrategyMock” that implements “TicTacToeStrategy” interface,
- Define the method “get_Move ()”,
- Assign the string representation of board.
- Assign the position.
- Initialize the variable.
- Assign the row value.
- Assign the column value.
- Return the value.
- Define the method “get_Move ()”,
- In a file “TicTacToeBoard.java”, create a class “TicTacToeBoard”,
- Declare the array.
- Declare and initialize the row and column.
- Define the constructor to create the empty board.
- Create 2D array.
- Iterate over rows,
- Iterate over columns,
- Fill the array with spaces.
-
- Declare the method “makeMove()” to set the field,
- Initialize the variables.
- Check the condition,
- Set the field.
- Define the method “toString()”,
- Declare the string variable.
- Create a loop,
- Concatenate the string with “|”.
- Create a loop,
- Concatenate the string with value.
- Concatenate the string with new line character.
- Concatenate the string with value.
- Return the string representation of the board.
- Define the method “isOver()”,
- Create a loop,
- Assign the board location.
- Check the condition,
- If it is true, return true.
- Iterate over columns,
- Assign the board location,
- Check the condition,
- If it is true, return true.
- Assign the value for diagonal.
- Return the value.
- Create a loop,
- Declare the method “makeMove()” to set the field,
- Iterate over columns,
- In a file “TicTacToeUI.java”, import necessary package, and create a class “TicTacToeUI”,
- Define the method “main()”,
- Create “Scanner” object.
- Create “TicTacToeBoard” object.
- Create “TicTacToeStrategyMock” object.
- Execute loop for true,
- Prompt the user to enter the move.
- Get the move from the user.
- Call the method “makeMove()”.
- Print the string representation of the board.
- Check whether the game is over,
- If it is true, return nothing.
- Assign the move of the computer.
- Print the computer’s move.
- Call the method “makeMove()”.
- Print the board.
- Check whether the game is over,
- If it is true, return nothing.
- Define the method “main()”,
Expert Solution & Answer

Want to see the full answer?
Check out a sample textbook solution
Students have asked these similar questions
also provide the number of moves(actions) made at state A and moves(actions) made state B. INCLUDE Java program required(this question is not graded)
You are given a class that processes purchases for an online store. The class receives calls to:
•
Retrieve the prices for items from a database
• Record the sold items
•
Update the database
•
Refresh the webpage
a. What architectural pattern is suitable for this scenario? Illustrate your answer by drawing a
model for the solution, showing the method calls/events.
b. Comment on how applying this pattern will impact the modifiability of the system.
c. Draw a sequence diagram for the update operation.
2. The memory management has contiguous memory allocation, dynamic partitions,
and paging. Compare the internal fragmentation and external fragmentation for
these three approaches. [2 marks]
3. Suppose we have Logical address space = 24 = 16 (m = 4), Page size=2² =4 (n = 2),
Physical address space = 26 = 64 (r = 6). Answer the following questions: [4 marks]
1) Total # of pages ?
2) Total # of frames ?
3) Number of bits to represent logical address?
4) Number of bits to represent offset ?
5) Number of bits to represent physical address?
6) Number of bits to represent a page number?
7) Number of bits to represent a frame number /
4. What is translation look-aside buffers (TLBS)? Why we need them to implement the
page table? [2 marks]
5. Why we need shared pages for multiple processes? Give one example to show the
benefits. [2 marks]
6. How to implement the virtual memory by using page out and page in? Explain with
an example. [2 marks]
7. We have a reference string of referenced page…
Chapter 10 Solutions
EBK BIG JAVA: EARLY OBJECTS, INTERACTIV
Ch. 10.1 -
Suppose you want to use the average method to...Ch. 10.1 - Prob. 2SCCh. 10.1 - Prob. 3SCCh. 10.1 -
What is wrong with this code?
Measurable meas =...Ch. 10.1 -
What is wrong with this code?
Measurable meas =...Ch. 10.2 -
Can you use a cast (BankAccount) meas to convert...Ch. 10.2 - Prob. 7SCCh. 10.2 -
Why is it impossible to construct a Measurable...Ch. 10.2 -
Why can you nevertheless declare a variable whose...Ch. 10.2 -
What does this code fragment print? Why is this...
Ch. 10.3 - Prob. 11SCCh. 10.3 - Prob. 12SCCh. 10.3 - Prob. 13SCCh. 10.3 -
Write a method max that finds the larger of any...Ch. 10.3 -
Write a call to the method of Self Check 14 that...Ch. 10.4 -
Suppose you want to use the average method of...Ch. 10.4 - Prob. 17SCCh. 10.4 - Prob. 18SCCh. 10.4 - Write a method max with three arguments that finds...Ch. 10.4 - Write a call to the method of Self Check 19 that...Ch. 10.5 - Why would you use an inner class instead of a...Ch. 10.5 - When would you place an inner class inside a class...Ch. 10.5 - How many class files are produced when you compile...Ch. 10.6 - Why is it necessary that the real class and the...Ch. 10.6 - Why is the technique of mock objects particularly...Ch. 10.7 - Prob. 26SCCh. 10.7 - Prob. 27SCCh. 10.7 - Prob. 28SCCh. 10.7 - Prob. 29SCCh. 10.7 - If an inner class accesses a local variable from a...Ch. 10.8 - Prob. 31SCCh. 10.8 - Prob. 32SCCh. 10.9 - Prob. 33SCCh. 10.9 - Prob. 34SCCh. 10.10 - Prob. 35SCCh. 10.10 - Why must the MousePressListener class supply five...Ch. 10 - Prob. 1RECh. 10 - Prob. 2RECh. 10 - Prob. 3RECh. 10 - Prob. 4RECh. 10 - Prob. 5RECh. 10 - The classes Rectangle2D.Double, Ellipse2D.Double,...Ch. 10 - Suppose r contains a reference to a new...Ch. 10 - Classes such as Rectangle2D. Double,...Ch. 10 - Prob. 9RECh. 10 - What happens if you try to use an array of String...Ch. 10 - Prob. 11RECh. 10 - What happens if you pass an array of strings and...Ch. 10 - Consider this top-level and inner class. Which...Ch. 10 - What happens when an inner class tries to access a...Ch. 10 - Prob. 15RECh. 10 - Prob. 16RECh. 10 - Prob. 17RECh. 10 - What is the difference between an ActionEvent and...Ch. 10 - Prob. 19RECh. 10 - Prob. 20RECh. 10 - Prob. 21RECh. 10 - Prob. 22RECh. 10 - Prob. 23RECh. 10 - Prob. 24RECh. 10 - Add a method
public static Measurable...Ch. 10 - Prob. 2PECh. 10 - A person has a name and a height in centimeters....Ch. 10 - Add static methods largest and smallest to the...Ch. 10 - In the Sequence interface of Worked Example 10.1,...Ch. 10 - In Worked Example 10.1, add a default...Ch. 10 - In Worked Example 10.1, make the process method a...Ch. 10 - Add a method to the Data class that returns the...Ch. 10 - Prob. 9PECh. 10 - Modify the Coin class from Chapter 8 to have it...Ch. 10 - Repeat Exercise E10.9, making the Measurer into an...Ch. 10 - Repeat Exercise E10.9, making the Measurer an...Ch. 10 - Implement a class Bag that stores items...Ch. 10 - Prob. 14PECh. 10 - Reimplement Exercise E10.14 where the grid is...Ch. 10 - Prob. 16PECh. 10 - Enhance the ButtonViewer program so that it prints...Ch. 10 - Prob. 18PECh. 10 - Prob. 19PECh. 10 - Prob. 20PECh. 10 - Prob. 21PECh. 10 - Prob. 22PECh. 10 - Prob. 23PECh. 10 - Reimplement the program in Section 10.7.2,...Ch. 10 - Prob. 25PECh. 10 - Prob. 26PECh. 10 - Prob. 27PECh. 10 - Prob. 28PECh. 10 - Prob. 29PECh. 10 - Prob. 30PECh. 10 - Prob. 1PPCh. 10 - Write a class PrimeSequence that implements the...Ch. 10 - Prob. 3PPCh. 10 - Prob. 4PPCh. 10 - Prob. 5PPCh. 10 - Prob. 6PPCh. 10 - Prob. 7PPCh. 10 - Prob. 8PPCh. 10 - Prob. 9PPCh. 10 - Prob. 10PPCh. 10 - Prob. 11PPCh. 10 - Prob. 12PPCh. 10 - Prob. 13PPCh. 10 - Prob. 14PPCh. 10 - Prob. 15PPCh. 10 - Prob. 16PPCh. 10 - Prob. 17PPCh. 10 - Prob. 18PPCh. 10 - Prob. 19PPCh. 10 - Prob. 20PPCh. 10 - Prob. 21PPCh. 10 - Prob. 22PPCh. 10 - Prob. 23PPCh. 10 - Prob. 24PPCh. 10 - Prob. 25PPCh. 10 - Prob. 26PPCh. 10 - Prob. 27PP
Knowledge Booster
Similar questions
- Good morning, please solve this trying to follow this criteria. (use Keil) Abstract describing the requirements and goals of the assignment. List file with no errors or warnings. Brief description of your implementation design and code. Debugging screen shots for different scenarios with your reference and comments. Conclusion (and please give me the code without errors, make sure it is working)arrow_forwardGood mrng, please solve this trying to follow this criteria. (use Keil) Abstract describing the requirements and goals of the assignment. List file with no errors or warnings. Brief description of your implementation design and code. Debugging screen shots for different scenarios with your reference and comments. Conclusion (and please give me the code without errors, make sure it is working)arrow_forward#include <stdio.h> #include <stdlib.h> #include <unistd.h> int global_var = 42; // int* function(int *a) { int local_var = 10; // *a = *a + local_var; int *local_pointer = (int *)malloc (size of (int) * 64); // Allocated array with 64 integers return local_pinter; } int main() { int local_main[1024*1024*1024*1024*1024] = {0}; // initialize an array and set all items as 0 int *heap_var = (int *)malloc(size of(int) * 16); // Allocated array with 16 integers *heap_var = 100; function(heap_var); printf(“the value is %d\n”, *heap_var); free(heap_var); // release the memory return 0; } 1) draw the memory layout of the created process, which should include text, data, heap and stack [2 marks]. 2) Indicate which section the variables are allocated [2 marks]: global_var local_var, local_pointer local_main heap_var, *heap_var (the data that it points to) 3) Does this code have memory leaking (heap memory is not released)? [2 marks] 4) The…arrow_forward
- 8. List three HDD scheduling algorithms. [2 marks] 9. True or False? The NVM has the same scheduling algorithms with HDD. Explain why? [2 marks] 10. Why the modern mouses use polling to detect movements instead of interrupts? [2 marks] 11. What is thrashing? How does it happen? [2 marks] 12. Given a reference string of page numbers 7, 0, 1, 2, 0, 3, 0, 4, 2, 3, 0, 3, 0, 3, 2, 1, 2, 0, 1, 7, 0, 1 and 4 frames show how the page replacement algorithms work, and how many page faults? [6 marks], 1) FIFO algorithm? [2 marks] 2) Optimal algorithm? [2 marks] 3) LRU algorithm? [2 marks] 13. List at least three file systems that you know. [2 marks] 14. In C programming, how the seek to a specific position in the file by offset? [2 marks]arrow_forwardA Personal Address Book application program allows the user to add, delete, search, save, and load contact information. The program separates the user interface (command-line) and the internal processing subsystem. The internal processing system consists of the following classes: • • Contact Manager (responsible for add and delete operations) Contact Finder (responsible for the search operation) pataManager (responsible for save and load operations) a. What design pattern can be used to implement the user interface? Explain your answer using a class diagram for the entire system. b. Draw a UML sequence diagram to show the behavioral view of the Personal Address Book program, demonstrating what happens when a user enters new contact information.arrow_forwardA system comprises three components: A, B, and C. Calling A requires calling B, and calling B requires calling A. Component C is responsible for dissimilar tasks T#1, #2, and T#3. a. Comment on the modifiability of this system. What problems do you see in this system, and how would you solve them? b. Suppose that T#1 is performed by both component A and C. What does this indicate about A and C? How would you solve this problem?arrow_forward
- Please answer questions from number 1 to 3 if these questions in the image provided below(NOTE: THESE QUESTIONS ARE NOT GRADED!)arrow_forwardIn a client-server system for a hypothetical banking application, the clients are ATM machines, and the server is the bank server. Suppose the client has two operations: withdraw and deposit. Use the broker architectural pattern to document an initial architecture design for this system: a. Draw a class diagram for this system. Use a client-side proxy to encrypt the data using an encrypt operation and a server-side proxy to decrypt the data. b. Discuss how you plan to apply redundancy tactics on the server. Additionally, identify the quality attribute that this tactic will achieve and discuss any potential side effects of applying it.arrow_forwarda. Comment on how you would achieve higher performance for a hypothetical Trent Course Registration System, assuming it utilizes a client-server architecture. b. Suppose we want greater availability of the server. Discuss what kind of tactics should be used to achieve that.arrow_forward
- Implement a C program to find the largest element in a given array. You must have a main function and a max function. The function int main() will declare an array with the values {12, 100, 10, 1000, 20, 5}. This array will be passed to the max function. The function int max() will perform the necessary operations to find the largest element of the array. After max () is finished, have main () print the largest value and its index in the array. Do not hard code your solution! If we test your code with different array values, we should still get the correct output. The following link may help you get started: https://www.tutorialspoint.com/cprogramming/c_function_call_by_reference.htmarrow_forwardPlease run the following program and answer the questions. #include int main(void) { int arr[6] = int *pointer pointer *pointer = {10, 20, 30, 40, 50, 60}; = &arr[0]; pointer + 2; = 5 ; pointer++; *pointer - (*pointer) 5 ; pointer++; *pointer * (pointer+1) - 5%; return 0; 1. [10 pts] Please list the values of elements in array arr after line 8 (*pointer why. = 5; ) and explainarrow_forward> Comparable Method - methodName: String -priority: int + Method() + Method(methodName: String, priority: int) + abstract specificWay(): void + Getters and setters for all fields compareTo(otherMethod: Method): int + toString(): String ReadMethod - language: String + ReadMethod() + ReadMethod(methodName: String, priority: int, language: String) + specificWay(): void + Getters and setters for language + toString(): String Part 1.1. Implement the abstract class Method implements Comparable interface according to its UML diagram. Add comments stating where data fields, constructors, toString(), and other methods are (if any). Neither method should have an empty body unless abstract methods. 1. two constructors (default and the constructor with all fields) 2. getters and setters for all fields (methodName and priority). 3. toString() method: modify by yourself to match the example output. 4. Abstract method void specificWay(). 5. Implement compara To(Method otherMethod) to compare…arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education

Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON

C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON

Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning

Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education