#include <iostream>
#include <string>
#include <iomanip>
using namespace std;
int SIZE = 5 ;
struct soda
{
string name;
float cost;
int number;
} ;
void printMenu( ) ;
soda allSodas[ 5 ] = {
{ "Cola " , 0.75 , 20 } ,
{ "Root Beer " , 0.75 , 20 } ,
{ "Lemon-Lime" , 0.75 , 20 } ,
{ "Grape Soda" , 0.80 , 20 } ,
{ "Cream Soda" , 0.80 , 20 }
} ;
int main( ) {
int userDecision;
float moneyInserted;
cout << fixed << showpoint << setprecision( 2 ) ;
printMenu( ) ;
cout << "Pick a drink or quit program by pressing number" << endl;
cout << "Cola (1), Root Beer (2), Lemon-Lime (3)" << endl;
cout << "Grape Soda (4), Cream Soda (5), Quit (6)" << endl;
cin >> userDecision;
if ( userDecision == 6 )
cout << "exit program" << endl;
if ( userDecision > 0 && userDecision < 6 )
{
cout << "Enter money inserted: " << endl;
cin >> moneyInserted;
cout << "Change " << moneyInserted - allSodas[ userDecision] .cost << endl;
allSodas[ userDecision] .number = allSodas[ userDecision] .number - 1 ;
printMenu( ) ;
}
if ( userDecision < 0 || userDecision > 6 )
cout << "Try again, must be a number 1 through 6" << endl;
return 0 ;
}
void printMenu( )
{ cout << "Soda price inventory" << endl;
for ( int i = 0 ; i < SIZE; i++ )
{
cout << allSodas[ i] .name << setw( 10 ) ;
cout << allSodas[ i] .cost << setw( 10 ) << allSodas[ i] .number << endl;
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8aW9tYW5pcD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKaW50IFNJWkUgPSA1OwpzdHJ1Y3Qgc29kYQp7CglzdHJpbmcgbmFtZTsKCWZsb2F0IGNvc3Q7CglpbnQgbnVtYmVyOwoJCn07CnZvaWQgcHJpbnRNZW51KCk7Cgpzb2RhIGFsbFNvZGFzWzVdID0gewoJCQkJCXsiQ29sYSAgICAgICIsIDAuNzUsIDIwIH0sCgkJCQkJeyJSb290IEJlZXIgIiwgMC43NSwgMjAgfSwKCQkJCQl7IkxlbW9uLUxpbWUiLCAwLjc1LCAyMCB9LAoJCQkJCXsiR3JhcGUgU29kYSIsIDAuODAsIDIwIH0sCgkJCQkJeyJDcmVhbSBTb2RhIiwgMC44MCwgMjAgfSAKCQkJCQl9OwoKCmludCBtYWluKCkgewoJaW50IHVzZXJEZWNpc2lvbjsKCWZsb2F0IG1vbmV5SW5zZXJ0ZWQ7Cgljb3V0IDw8IGZpeGVkIDw8IHNob3dwb2ludCA8PCBzZXRwcmVjaXNpb24oMik7CglwcmludE1lbnUoKTsKCSBjb3V0IDw8ICJQaWNrIGEgZHJpbmsgb3IgcXVpdCBwcm9ncmFtIGJ5IHByZXNzaW5nIG51bWJlciIgPDwgZW5kbDsKCSBjb3V0IDw8ICJDb2xhICgxKSwgUm9vdCBCZWVyICgyKSwgTGVtb24tTGltZSAoMykiIDw8IGVuZGw7CgkgY291dCA8PCAiR3JhcGUgU29kYSAoNCksIENyZWFtIFNvZGEgKDUpLCBRdWl0ICg2KSIgPDwgZW5kbDsKCSBjaW4gPj4gdXNlckRlY2lzaW9uOwoJIGlmKHVzZXJEZWNpc2lvbiA9PSA2KQoJIGNvdXQgPDwgImV4aXQgcHJvZ3JhbSIgPDwgZW5kbDsKCSAKCSBpZih1c2VyRGVjaXNpb24gPiAwICYmIHVzZXJEZWNpc2lvbiA8IDYpCgkJewoJCQljb3V0IDw8ICJFbnRlciBtb25leSBpbnNlcnRlZDogIiA8PCBlbmRsOwoJCQljaW4gPj4gbW9uZXlJbnNlcnRlZDsKCQkJY291dCA8PCAiQ2hhbmdlICIgPDwgbW9uZXlJbnNlcnRlZCAtIGFsbFNvZGFzW3VzZXJEZWNpc2lvbl0uY29zdCA8PCBlbmRsOwoJCQlhbGxTb2Rhc1t1c2VyRGVjaXNpb25dLm51bWJlciA9IGFsbFNvZGFzW3VzZXJEZWNpc2lvbl0ubnVtYmVyIC0gMTsKCQkJcHJpbnRNZW51KCk7CgoJCX0KCWlmKHVzZXJEZWNpc2lvbiA8IDAgfHwgdXNlckRlY2lzaW9uID4gNikKCQljb3V0IDw8ICJUcnkgYWdhaW4sIG11c3QgYmUgYSBudW1iZXIgMSB0aHJvdWdoIDYiIDw8IGVuZGw7CgkJCglyZXR1cm4gMDsKfQp2b2lkIHByaW50TWVudSgpCnsJY291dCA8PCAiU29kYQkJCXByaWNlCQlpbnZlbnRvcnkiIDw8IGVuZGw7Cglmb3IoaW50IGkgPSAwOyBpIDwgU0laRTsgaSsrKQoJewoJCWNvdXQgPDwgYWxsU29kYXNbaV0ubmFtZSA8PCBzZXR3KDEwKTsKCQljb3V0IDw8IGFsbFNvZGFzW2ldLmNvc3QgPDwgc2V0dygxMCkgPDwgYWxsU29kYXNbaV0ubnVtYmVyIDw8IGVuZGw7Cgl9Cn0=