Please help – I am having either some logic issues or formatting issues:

My code is the following:

```
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
#include <iomanip>
using std::setw;
using std::setprecision;
#include <cstdlib> // contains prototypes for functions srand and rand
using std::rand;
using std::srand;
#include <ctime> // contains prototype for function time
using std::time;
#include "Tickets.h" // include definition of class Tickets
//constructor
Tickets::Tickets(int initial)
{
// initialize the prices array
int price = 90;
for (int zone = 1; zone < row; zone++)
{
prices[zone] = price;
price -= 5;
}
// initialize the actual seating array
for(int eachRow = 0; eachRow < row; eachRow++)
for(int eachSeat = 0; eachSeat < seat; eachSeat++)
seating[eachRow][eachSeat] = '#';
// initialize the available rows array
for(int row_i = 1; row_i < row; row_i++)
rowSeats[row_i] = seat - 1;
qty = initial;
ticketPrice = initial;
totalPrice = initial;
currentSalesAmount = initial;
seatsSold = initial;
theaterAvailability = (row-1)*(seat-1);
}
void Tickets::displaySeats()
{
// creater the header
cout << "Seats: " << setw(2);
int counter = 1;
do
{
if(counter <= 9)
cout << counter << setw(2);
else
cout << counter << setw(1);
}while(++counter <= 30);
// show the seat availability
for(int row_i = 1; row_i < row; row_i++)
{
if(row_i <= 9)
{
cout << "\nrow 0" << row_i << ": ";
}
else
{
cout << "\nrow " << row_i << ": ";
}
for (int seat_j = 1; seat_j < seat; seat_j++)
cout << seating[row_i][seat_j] << " ";
}
cout << endl;
}
void Tickets::purchaseTickets()
{
srand ( (unsigned)time ( 0 ) );
int counter = rand() % (row - 6);
do
{
qty = rand() % (seat-21);
while(qty == 0)
{
qty = rand() % (seat-21);
}
cout << "\nEnter the ticket quantity: " << qty;
// validateQty(qty);
if(theaterAvailability != 0)
{
seatProcess();
totalPrice = 0;
}
}while(--counter > 0);
}
void Tickets::seatProcess()
{
if(checkQtyAvailability(qty) == true)
{
if(qty == 1)
{
makeSelection();
}
else
{
//displayOptions();
for(int choices = qty; choices > 0; choices--)
{
makeSelection();
}
}
} // end if
displayTotalTicketPrices();
displayTheaterStats();
displaySeats();
}
void Tickets::makeSelection()
{
int selectedRow, selectedSeat;
selectedRow = rand() % row;
while(selectedRow == 0)
{
selectedRow = rand() % row;
}
cout << "\nSelect a row: " << selectedRow << endl;
selectedSeat = rand() % seat;
while(selectedSeat == 0)
{
selectedRow = rand() % row;
}
cout << "Select a seat: " << selectedSeat << endl;
validateSelection(selectedRow, selectedSeat);
}
void Tickets::validateSelection(int chosenRow, int chosenSeat)
{
if(seating[chosenRow][chosenSeat] == '*')
{
cout << "Sorry that seat is taken. Please make another selection.";
makeSelection();
}
else
{
seating[chosenRow][chosenSeat] = '*';
displayTicketPrice(chosenRow);
compute(chosenRow);
}
}
bool Tickets::checkQtyAvailability(int desiredQty)
{
bool answer = false;
if (theaterAvailability == 0)
{
cout << "Sorry the theater is sold out." << endl;
answer = false;
}
else if(theaterAvailability >= desiredQty)
answer = true;
else if(theaterAvailability < desiredQty)
{
qty = rand() % seat;
while(qty == 0)
{
qty = rand() % seat;
}
cout << "Sorry there are less seats available then the quantity entered. \n Re-enter the ticket quantity: " << qty;
// validateQty(qty);
seatProcess();
}
return answer;
}
void Tickets::compute(int purchasedRow)
{
//totalPrice += prices[purchasedRow];
//currentSalesAmount += prices[purchasedRow];
totalPrice += ticketPrice;
currentSalesAmount += ticketPrice;
seatsSold++;
theaterAvailability--;
rowSeats[purchasedRow]--;
}
double Tickets::getTotalPrice()
{
return totalPrice;
}
double Tickets::getCurrentSalesAmount()
{
return currentSalesAmount;
}
void Tickets::displayTicketPrice(int purchasedSeat)
{
ticketPrice = prices[purchasedSeat];
cout << "The purchased ticket price is: $" << setprecision(2) << ticketPrice << endl;
}
void Tickets::displayTotalTicketPrices()
{
cout << "\nYour total amount due for the " << qty << " tickets is: $" << setprecision(2) << getTotalPrice() << endl;
}
void Tickets::displayTheaterStats()
{
cout << "\nCurrent ticket sales amount: $" << setprecision(2) << getCurrentSalesAmount() << endl;
cout << "Seats sold: " << seatsSold << endl;
cout << "\n Row" << setw(22) << "Seats Available" << endl;
cout << "------- --------------" << endl;
for(int rowAnalysis = 1; rowAnalysis < row; rowAnalysis++)
cout << setw(4) << rowAnalysis << setw(17) << rowSeats[rowAnalysis] << endl;
cout << "Seats available in the entire theater: " << theaterAvailability << endl;
cout << endl;
}
void Tickets::displayOptions()
{
cout << "\nThe following blocks are available: " << endl;
for(int openRow = 1; openRow < row; openRow++)
{
cout << "row " << openRow << ": ";
for(int openSeat = 1; openSeat < seat; openSeat++)
{
int neededSeatsOpen = (seat-1) - (openSeat - 1);
if(neededSeatsOpen >= qty)
{
int counter2 = 0;
for(int potential = qty - 1; potential >= 0; potential--)
{
if(char(seating[openSeat + potential]) == '#')
{
counter2++;
}
}
if(counter2 == qty)
{
for(int available = 0; available <= qty - 1; available++)
{
cout << seating[openSeat + available] << " ";
}
}
}
}
}
} // end function display Options
bool Theater::test()
{
Tickets testTicket(0);
bool answer2 = false;
if(testTicket.prices[9] == 50)
{
answer2 = true;
}
else
{
answer2 = false;
}
return answer2;
}
```

Here' is an example of the output I am getting. As you can see total amount due and current ticket sales is not printing correctly. (these are the variables totalPrice and currentSalesAmount). I cannot see what the issue is with the debugger so I do not know what is going on.

example of output, sad face by the problem:

Seats: 1 2 3 4 5 6 7 8 9101112131415161718192021222324252627282930

row 01: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 02: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 03: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 04: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 05: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 06: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 07: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 08: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 09: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 10: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 11: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 12: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 13: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 14: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 15: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

Enter the ticket quantity: 2

Select a row: 13

Select a seat: 8

The purchased ticket price is: $30

Select a row: 15

Select a seat: 23

The purchased ticket price is: $20

Your total amount due for the 2 tickets is: $50

Current ticket sales amount: $50

Seats sold: 2

Row Seats Available

------- --------------

1 30

2 30

3 30

4 30

5 30

6 30

7 30

8 30

9 30

10 30

11 30

12 30

13 29

14 30

15 29

Seats available in the entire theater: 448

Seats: 1 2 3 4 5 6 7 8 9101112131415161718192021222324252627282930

row 01: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 02: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 03: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 04: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 05: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 06: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 07: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 08: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 09: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 10: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 11: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 12: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 13: # # # # # # # * # # # # # # # # # # # # # # # # # # # # # #

row 14: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 15: # # # # # # # # # # # # # # # # # # # # # # * # # # # # # #

Enter the ticket quantity: 3

Select a row: 3

Select a seat: 10

The purchased ticket price is: $80

Select a row: 10

Select a seat: 5

The purchased ticket price is: $45

Select a row: 12

Select a seat: 16

The purchased ticket price is: $35

Your total amount due for the 3 tickets is: $1.6e+002 :'(

Current ticket sales amount: $2.1e+002 :'(

Seats sold: 5

Row Seats Available

------- --------------

1 30

2 30

3 29

4 30

5 30

6 30

7 30

8 30

9 30

10 29

11 30

12 29

13 29

14 30

15 29

Seats available in the entire theater: 445

Seats: 1 2 3 4 5 6 7 8 9101112131415161718192021222324252627282930

row 01: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 02: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 03: # # # # # # # # # * # # # # # # # # # # # # # # # # # # # #

row 04: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 05: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 06: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 07: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 08: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 09: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 10: # # # # * # # # # # # # # # # # # # # # # # # # # # # # # #

row 11: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 12: # # # # # # # # # # # # # # # * # # # # # # # # # # # # # #

row 13: # # # # # # # * # # # # # # # # # # # # # # # # # # # # # #

row 14: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

row 15: # # # # # # # # # # # # # # # # # # # # # # * # # # # # # #

Theater program successful.

Press any key to continue . . .