Concept explainers
Define a class called TicTacToe. An object of type TicTacToe is a single game of tic-tac-toe. Store the game beard as a single two-dimensional array of base type char that has three rows and three columns. Include methods to add a move, to display the board, to tell whose turn it is (X or O), to tell whether there is a winner, to say who the winner is, and to reinitialize the game to the beginning. Write a main method for the class that will allow two players to enter their moves in turn at the same keyboard.
Want to see the full answer?
Check out a sample textbook solutionChapter 7 Solutions
Java : Introduction To Prob...-MyProgrammingLab
Additional Engineering Textbook Solutions
Starting Out with Python (3rd Edition)
Database Concepts (8th Edition)
Concepts of Programming Languages (11th Edition)
Objects First with Java: A Practical Introduction Using BlueJ (6th Edition)
Modern Database Management (12th Edition)
Starting Out with Python (4th Edition)
- Define a static void method, which receives as an parameter an array of salaries (of type double) and increases them as follows • salaries <$ 800 - by 10% • 800 <= salaries <= $1500 - by 5% • salaries over $1,500 - by 3% In the test function, define an initialized array of salaries and display it. Call the written method and display the array again.arrow_forwardCreate a class called Employee with threeattributes: Name, Salary and Id. Make constructors, getters, setters, tostring, displayand compareTo methods. Write a method qsort(e) that will accept an array ofEmployees and sort the results by ID. Write a method bsearch(e, id) that will accept asorted array of Employees and use a binary searchalgorithm to find a specific employee by Id.In your test driver create an array with 10employees. Be sure to populate that data sothat the ids are in random order. Display the array, call qsort then display it again andcall the bsearch with a valid id and an invalid id.arrow_forward1. write a static method that receive as parameter an array of type student and print the names of all students excepted to graduate. The student is expected to graduate if he/she in year 4 and GPA >2. 2. Write a java program that: a. Asks the user to enter the number of the Student, then the data of each Student and store then inside an array of type Student. b. Ask the user to read a value d of type double then displays the name of all the Student who have GPA greater than the value d. c. Call the above method and print the name of student who excepted to graduate.arrow_forward
- Modify WorkerTester class in such a way it reads from a file (workers.txt) the workers information andstores it in a polymorphic array called workers(of type Worker). The array is then passed to a method calledstatistics() to display the basic information and the received pay for all Salaried paid workers, the less paidworker and the most paid worker.Assume that each line in the workers.txt contains information about one workerIf the worker is a salaried worker, the line contains S name salaryIf the worker is hourly paid, the line contains H name hourlyRate numHoursarrow_forwardWrite a RainFall class that stores the total rainfall for each of 12 months into an array of double s. The program should have methods that return the following: • the total rainfall for the year • the average monthly rainfall • the month with the most rain • the month with the least rain • Test the RainFall class by writing a tester class, RainFallDemo , to produce the outputs similar to the sample execution below. For the rainfall values, you must get them from the user’s input as double values in the tester class. For the class RainFall you must write standard Java Documentation for the whole class on the top, and for every method. Input Validation: Do not accept negative numbers for monthly rainfall figures. If a value is negative, ask the user to re-enter the input.arrow_forwarda)Implement all the classes. The formula for calculating salary for each class is shown below: For the Employee class, salary = basic salary + allowance For the Manager class , salary = basic salary + allowance + travel claims For the Clerk class , salary = basic salary + allowance + overtime pay,where overtime pay = overtime hours x overtime rate. Set overtime rate as RM3.50. Use java to write a client program that creates an array named empArray that stores an object of an Employee,a Manager and a Clerk.In your program, include a method called printElements() that takes an array as parameter and prints the type of employee, the object’s data field values (by invoking thetoString() method) and the monthly salary.arrow_forward
- Write a Java 7 program with proper whole code and Explatation too,,. & Dont use JAVA8... Shil got an array of N integers as a present on his birthday. But he didn't liked it. Shil wants to make this array beautiful. Shil considers an array A1,A2,A3 . . . AN beautiful if A1 > AN. Inorder to make it beautiful Shil can swap any two numbers in the array. Also Shil can perform this operation any number of times on any adjacent pairs of integers in the array A.Find the number of ways in which Shil can make this array beautiful.Two ways are considered same if resulting array after making all the swaps have same A1 and AN. Input First line of input contains an integer N denoting the number of elements in an array A. Next line of input contains N space separated integers denoting A1,A2,A3 . . . AN respectively. Output Number of ways in which you can make given array beautiful. Constraints 1 ≤ N ≤ 1061 ≤ Ai ≤ 106 SAMPLE INPUT 5 1 4 3 2 5 SAMPLE OUTPUT 10 Explanation…arrow_forwardImplement the Solver class. The point of the solver class is the solve method which takes a board/puzzle configuration represented as a 2D array of bytes and returns a byte array containing a minimal sequence of moves that will lead to the solved board. The 2D array of bytes is “triangular” and represents a valid board configuration. Namely, the 2D array has 5 rows (0 – 4) and the size of every row is 1 more than its index.The array contains one 0, five 1s, four 2s and five 3s. The solve method then returns an array of bytes representing a minimal sequence of moves that solves the puzzle. In other words, if the numbers from the returned array are used in order as inputs to the move method on the Board object representing the initial configuration, the resulting board configuration represents the solved board. If the input to the solve method is a board configuration that is already solved, then solution requires no moves and an array of size 0 must be returned. impliment the solver…arrow_forwardImplement the Solver class. The point of the solver class is the solve method which takes a board/puzzle configuration represented as a 2D array of bytes and returns a byte array containing a minimal sequence of moves that will lead to the solved board. The 2D array of bytes is “triangular” and represents a valid board configuration. Namely, the 2D array has 5 rows (0 – 4) and the size of every row is 1 more than its index.The array contains one 0, five 1s, four 2s and five 3s. The solve method then returns an array of bytes representing a minimal sequence of moves that solves the puzzle. In other words, if the numbers from the returned array are used in order as inputs to the move method on the Board object representing the initial configuration, the resulting board configuration represents the solved board. If the input to the solve method is a board configuration that is already solved, then solution requires no moves and an array of size 0 must be returned. import…arrow_forward
- Implement the Solver class. The point of the solver class is the solve method which takes a board/puzzle configuration represented as a 2D array of bytes and returns a byte array containing a minimal sequence of moves that will lead to the solved board. The 2D array of bytes is “triangular” and represents a valid board configuration. Namely, the 2D array has 5 rows (0 – 4) and the size of every row is 1 more than its index.The array contains one 0, five 1s, four 2s and five 3s. The solve method then returns an array of bytes representing a minimal sequence of moves that solves the puzzle. In other words, if the numbers from the returned array are used in order as inputs to the move method on the Board object representing the initial configuration, the resulting board configuration represents the solved board. If the input to the solve method is a board configuration that is already solved, then solution requires no moves and an array of size 0 must be returned. import…arrow_forwardImplement the Solver class. The point of the solver class is the solve method which takes a board/puzzle configuration represented as a 2D array of bytes and returns a byte array containing a minimal sequence of moves that will lead to the solved board. The 2D array of bytes is “triangular” and represents a valid board configuration. Namely, the 2D array has 5 rows (0 – 4) and the size of every row is 1 more than its index.The array contains one 0, five 1s, four 2s and five 3s. The solve method then returns an array of bytes representing a minimal sequence of moves that solves the puzzle. In other words, if the numbers from the returned array are used in order as inputs to the move method on the Board object representing the initial configuration, the resulting board configuration represents the solved board. If the input to the solve method is a board configuration that is already solved, then solution requires no moves and an array of size 0 must be returned. import java.util.Arrays;…arrow_forwardImplement the Solver class. The point of the solver class is the solve method which takes a board/puzzle configuration represented as a 2D array of bytes and returns a byte array containing a minimal sequence of moves that will lead to the solved board. The 2D array of bytes is “triangular” and represents a valid board configuration. Namely, the 2D array has 5 rows (0 – 4) and the size of every row is 1 more than its index.The array contains one 0, five 1s, four 2s and five 3s. The solve method then returns an array of bytes representing a minimal sequence of moves that solves the puzzle. In other words, if the numbers from the returned array are used in order as inputs to the move method on the Board object representing the initial configuration, the resulting board configuration represents the solved board. If the input to the solve method is a board configuration that is already solved, then solution requires no moves and an array of size 0 must be returned. impliment the solver…arrow_forward
- 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