我正在編寫一個程序,要求用戶輸入一個0到99之間的數(shù)字,并讓我的程序計(jì)算零錢(硬幣)的最小金額

#include <cmath>
#include <iostream>

using namespace std;

int main() {
    
    int num, q, d, n, p;

    cout << "Enter a numner between 0 to 99 for cents: ";
    cin >> num;

    q = num / 25;
    cout << "The number of quarters: " << q << endl;
    d = (num % 25 ) / 10;
    cout << "The number of dimes: " << d << endl;
    n = (num % 10) / 5;
    cout << "The number of nickels: " << n << endl;
    p = (num % 5) / 1;
    cout << "The number of pennies: " << p << endl;

    return 0;

}

我輸入了78,結(jié)果是:25美分:3美分:0美分:1便士:3

一切都是正確的,除了鎳幣的價(jià)值。我不知道我在五分硬幣的計(jì)算上做錯了什么。

? 最佳回答:

您需要在每次計(jì)算后更新num,以將其金額減去您剛剛計(jì)算的硬幣的價(jià)值,以便對剩余的調(diào)整后的金額進(jìn)行下一次計(jì)算。

按照你現(xiàn)在的做法,你計(jì)算的是原始金額的五分硬幣和便士的數(shù)量,而不是調(diào)整后的金額,這就是為什么你得到了錯誤的結(jié)果。

IOW,在您計(jì)算了四分之一硬幣的數(shù)量后,在計(jì)算一角硬幣的數(shù)量時忽略了四分之二硬幣的價(jià)值,但在計(jì)算五分硬幣的數(shù)量之前,您沒有隨后忽略一角硬幣價(jià)值,也沒有在計(jì)算硬幣的數(shù)量前忽略五分硬幣價(jià)值。

請嘗試以下操作:

q = num / 25;
num %= 25; // <-- add this!
cout << "The number of quarters: " << q << endl;
d = num / 10;
num %= 10; // <-- add this!
cout << "The number of dimes: " << d << endl;
n = num / 5;
num %= 5; // <-- add this!
cout << "The number of nickels: " << n << endl;
p = num / 1;
cout << "The number of pennies: " << p << endl;

Online Demo

公眾號:1024技術(shù)圈

?? 提供互聯(lián)網(wǎng)知識和資訊,分享IT前沿技術(shù),熱門資源,大廠面試題 ??

主站蜘蛛池模板: 国产亚洲情侣一区二区无码AV| 国产乱码精品一区二区三区四川人| 人妻无码一区二区不卡无码av| 日本精品视频一区二区| 武侠古典一区二区三区中文| 91在线一区二区三区| 国产自产V一区二区三区C| 国产一区二区三区内射高清| 五十路熟女人妻一区二区 | 色一乱一伦一图一区二区精品 | 精品国产免费一区二区三区| 日韩视频在线一区| 无码中文字幕乱码一区| 蜜臀AV免费一区二区三区| 精品一区二区三区免费| 国产在线无码视频一区二区三区 | 亚洲熟女少妇一区二区| 国产一区二区三区高清视频| 国产激情一区二区三区成人91| 日韩一区二区在线免费观看| 天堂一区二区三区在线观看| 精品深夜AV无码一区二区老年 | 久久久久人妻精品一区二区三区 | 亚洲视频一区二区在线观看| 久久99精品波多结衣一区| 亚洲啪啪综合AV一区| 国产一区二区三区久久精品| 国产精品毛片一区二区三区| 性色A码一区二区三区天美传媒| 亚洲国产精品一区二区久久hs| 日本精品一区二区三区在线观看| 久久一本一区二区三区| 99久久精品日本一区二区免费 | 国产成人一区在线不卡| 国产在线观看一区精品| 国产爆乳无码一区二区麻豆| 亚洲av无码一区二区三区天堂古代 | 少妇人妻偷人精品一区二区| 久久国产精品一区二区| 91精品一区二区三区久久久久 | 日本一区二区三区四区视频|