Case
An automotive company needs a program that checks gasoline usages. This program can be used to check the gasoline usages based on how fast the car move. As a programmer, you are asked to create the program. Here are some rules about the program:
• At the beginning, the program will set the gasoline to 100 liters.
• Show the main menus, such as:
1. Start Driving
2. Rest
3. Exit
• If user chooses “Start Driving”, then the program will:
o Show the speed (km/hour) with random 1 – 100.
o If speed is less than 50 km/hour, gasoline will be reduced by 20 liters.
o If speed is equals or larger than 50 km/hour, gasoline will be reduced by 40 liters.
o If the gasoline is empty, then the program will show “Your gasoline is not enough to run the car…”
• If user chooses “Rest”, then the program will:
o If the gasoline is full, then the program will show “Your gasoline is full…”, else the gasoline will be increased by 20 liters.
• If user chooses “Exit”, then the program will end.
My attempt:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
int gasoline = 100;
int menu;
char returnMainmenu;
do
{
do
{
cout << "1. Start driving" << endl << "2. Rest" << endl << "3. Exit" << endl << endl;
cout << "What do you want to do: ";
cin >> menu; cout << endl;
}
while(menu<1 || menu>3);
if(menu == 1)
{
int speed = rand() % 100 + 1;
cout << "Your speed: " << speed << endl;
if(speed >= 50)
{
cout << "Current fuel: " << gasoline-40 << endl;
cout << "Keep moving [Y/N]: "; cin >> returnMainmenu; cout << endl;
}
else
{
cout << "Current fuel: " << gasoline-20 << endl;
cout << "Keep moving [Y/N]: "; cin >> returnMainmenu; cout << endl;
}
if(menu == 2)
{
if(gasoline < 100)
{
gasoline+20;
cout << "Fuel added, current fuel: " << gasoline << endl;
cout << "Keep moving [Y/N]: "; cin >> returnMainmenu; cout << endl;
}
if(gasoline==100)
{
cout << "Your fuel is full." << endl;
cout << "Keep moving [Y/N]: "; cin >> returnMainmenu; cout << endl;
}
}
if(menu==3)
{
cout << "Goodbye, have a nice day!" << endl;
}
}
} while(returnMainmenu=='y');
return 0;
}
|
My problem is:
Example, i choose menu 1, lets say gasoline reduced into 60. Then back to main menu, and choose 2. BUT THE GASOLINE STILL 100 not 60 :(
How to store the last gasoline so we can use it for another menu (like rest)? Thanks