Как мне сохранить totalCalc от сброса? - PullRequest
0 голосов
/ 08 мая 2019

Я делаю программу для расчета наиболее эффективного количества изменений, которое нужно дать, когда пользователь вводит определенное значение в долларах.

Программа работала до того, как я пытался превратить ее в функции, и когда я пыталсясделать мою программу более надежной с помощью функций, программа не будет работать должным образом.

double getValueofCoins(int totalCalc, int coinValue, char* coinName) {

    double coinType;

    coinType = totalCalc / coinValue;
    totalCalc = totalCalc % coinValue; 
    printf("\n%s: %.0lf", coinName, coinType);

    return totalCalc;

}



int makeChange(int totalCalc) {

    double total;

    // calculate the most efficient amount of change

    getValueofCoins(totalCalc, 200, "Toonies");
    getValueofCoins(totalCalc, 100, "Loonies");
    getValueofCoins(totalCalc, 25, "Quarters");
    getValueofCoins(totalCalc, 10, "Dimes");
    getValueofCoins(totalCalc, 5, "Nickels");
    getValueofCoins(totalCalc, 1, "Pennies");

    return total;    
}

Я хочу, чтобы код выполнял максимально эффективные изменения (например, если пользователь вводит $ 20, было бы сказано 10 toonies), но он печатает количество монет каждого типа, которое будет составлять стоимость (например: если пользователь введет 20 $, он скажет 10 toonies, 20 loonies, 80 четверти и т. д.)

Я думаю, это потому, что переменная totalCalc сбрасывается до того, что пользователь вводил изначально каждый раз, когда я вызываю getValueofCoins ().Как бы это исправить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...