62.3k views
0 votes
This method will sell the seat in row i and column j unless it is already sold. A ticket is sold if the price of that seat in the array is 0. If the ticket is not sold, add the price of the seat in row i and column j to the totalSales and then set the price of that seat to 0 to designate it has been sold and return true since a sell was made. If the ticket was already sold, then return false.

User Nikagra
by
5.7k points

1 Answer

5 votes

Answer:

The solution code is written in Java.

  1. public class Movie {
  2. private double [][] seats = new double[5][5];
  3. private double totalSales;
  4. public Movie(){
  5. for(int i= 0; i < this.seats.length; i++){
  6. for(int j = 0; j < this.seats[i].length; j++){
  7. this.seats[i][j] = 12;
  8. }
  9. }
  10. this.totalSales = 0;
  11. }
  12. public boolean bookSeat(int i, int j)
  13. {
  14. if(this.seats[i][j] != 0){
  15. this.totalSales += this.seats[i][j];
  16. this.seats[i][j] = 0;
  17. return true;
  18. }else{
  19. return false;
  20. }
  21. }
  22. }

Step-by-step explanation:

The method, bookSeat(), as required by the question is presented from Line 16 - 26 as part of the public method in a class Movie. This method take row, i, and column, j, as input.

By presuming the seats is an two-dimensional array with all its elements are initialized 12 (Line 7 - 10). This means we presume the movie ticket price for all the seats are $12, for simplicity.

When the bookSeat() method is invoked, it will check if the current price of seats at row-i and column-i is 0. If not, the current price, will be added to the totalSales (Line 19) and then set the price to 0 (Line 20) and return true since the ticket is successfully sold (Line 21). If it has already been sold, return false (Line 23).

User Seaders
by
5.9k points