Assignment Project 3

A Company needs to create software for their new line of phone Apps. Customers will have the opportunity to purchase the Apps using the following credit amounts: (1) – $20.00, (2) – $10.00, (3) – $5.00 (4) – $1.00

G – GPS locator $4.99
L -Flashlight $1.99
X – X-ray vision $12.99
F – Food replicator $15.99
P – Game Package $9.99

You must have at least 7 user defined functions:

// Displays the list of apps available
//prompts for the user’s selection and sets the value of the selection
void Menu(char *selection);

//sets the cost of the item based on value in selection
void GetCost(char selection, double *item_cost);

//Displays the codes for money input- gets user input amounts
//compares the int codes and updates the bank amount entered
void MoneyMenu(double *bank, double item_cost);

//compares the amount the user has in the bank to the price of item selected.
//It returns 1 if the amount is enough to cover the cost, 0 if there is not enough.
int CheckMoney(double bank, double item_cost);

//uses MoneyMenu function to display and collect dollar amounts from the user
//uses CheckMoney function to keep comparing the added deposited amount to the item cost.
void GetMoney(double *bank, double item_cost, char selection);

//calculates the amount of leftover in the bank
void GetChange(double *bank, double item_cost);

//Asks the user if they want another app
void Quit(char *again);

Additional Requirements:
• Create a typed algorithm that outlines the steps your program will follow in English/pseudocode. This is worth 10 points of the grade for this assignment.
• Use function prototypes.
• Write comments for each function that will appear in the file before each prototype and again before each function definition.
• Be sure to comment your code adequately.
• Be sure to indent properly. Check your textbook and lecture code examples to see how it should be done.
• Use meaningful variable names.
Electronically submit only your source code, apps.c

Leave a Reply

Your email address will not be published. Required fields are marked *