diff options
Diffstat (limited to 'wk1/pset/cash')
-rw-r--r-- | wk1/pset/cash/cash.c | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/wk1/pset/cash/cash.c b/wk1/pset/cash/cash.c new file mode 100644 index 0000000..13c6889 --- /dev/null +++ b/wk1/pset/cash/cash.c @@ -0,0 +1,70 @@ +#include <cs50.h> +#include <stdio.h> + +int get_cents(void); +int calculate_quarters(int cents); +int calculate_dimes(int cents); +int calculate_nickels(int cents); +int calculate_pennies(int cents); + +int main(void) +{ + // Ask how many cents the customer is owed + int cents = get_cents(); + + // Calculate the number of quarters to give the customer + int quarters = calculate_quarters(cents); + cents = cents - quarters * 25; + + // Calculate the number of dimes to give the customer + int dimes = calculate_dimes(cents); + cents = cents - dimes * 10; + + // Calculate the number of nickels to give the customer + int nickels = calculate_nickels(cents); + cents = cents - nickels * 5; + + // Calculate the number of pennies to give the customer + int pennies = calculate_pennies(cents); + cents = cents - pennies * 1; + + // Sum coins + int coins = quarters + dimes + nickels + pennies; + + // Print total number of coins to give the customer + printf("%i\n", coins); +} + +int get_cents(void) +{ + int i; + do + { + i = get_int("How many cents? "); + } + while (i < 0); + return i; +} + +int calculate_quarters(int cents) +{ + cents = cents / 25; + return cents; +} + +int calculate_dimes(int cents) +{ + cents = cents / 10; + return cents; +} + +int calculate_nickels(int cents) +{ + cents = cents / 5; + return cents; +} + +int calculate_pennies(int cents) +{ + return cents; +} |