首页 > 解决方案 > 纸币和硬币我不接受解决方案 Uri Judge

问题描述

我有一个问题,但我不明白它是什么,因为我自己做了测试,它正确地显示了我的结果,非常小和大,我也没有小数减法的问题。你能告诉我我哪里失败了,所以我可以解决它吗?

#include<iostream>
#include<iomanip>

using namespace std;

int main()
{
    double notes[] = { 100, 50, 20, 10, 5, 2, 1, 0.5, 0.25, 0.10, 0.05, 0.01 };
    int my_notes[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
    bool coins = true;
    int i = 0;
    double money;
    cin >> money;
    money *= 100; // To avoid subtraction of decimals
    cout << fixed << setprecision( 2 );
    cout << "NOTAS:" << endl;
    while ( i < 12 ) {
        if ( money - ( notes[ i ] * 100 ) >= 0.00 ) {
            money -= ( notes[ i ] * 100 );
            my_notes[ i ] += 1;
        } else {
            if ( i < 6 ) {
                cout << my_notes[ i ] << " nota(s) de R$ " << notes[ i ] << endl;
            }
            else {
                if ( coins ) {
                    cout << "MOEDAS:" << endl;
                    coins = false;
                }
                cout << my_notes[ i ] << " moeda(s) de R$ " << notes[ i ] << endl;
            }
            i += 1;
        }
    }
    return 0;
}

输入:

888.88

输出:

NOTAS:
8 nota(s) de R$ 100.00
1 nota(s) de R$ 50.00
1 nota(s) de R$ 20.00
1 nota(s) de R$ 10.00
1 nota(s) de R$ 5.00
1 nota(s) de R$ 2.00
MOEDAS:
1 moeda(s) de R$ 1.00
1 moeda(s) de R$ 0.50
1 moeda(s) de R$ 0.25
1 moeda(s) de R$ 0.10
0 moeda(s) de R$ 0.05
3 moeda(s) de R$ 0.01

输入:

576.73

输出:

NOTAS:
5 nota(s) de R$ 100.00
1 nota(s) de R$ 50.00
1 nota(s) de R$ 20.00
0 nota(s) de R$ 10.00
1 nota(s) de R$ 5.00
0 nota(s) de R$ 2.00
MOEDAS:
1 moeda(s) de R$ 1.00
1 moeda(s) de R$ 0.50
0 moeda(s) de R$ 0.25
2 moeda(s) de R$ 0.10
0 moeda(s) de R$ 0.05
3 moeda(s) de R$ 0.01

捕获所需的输出:

在此处输入图像描述

问题链接:

https://www.urionlinejudge.com.br/judge/en/problems/view/1021

区别: n

标签: c++

解决方案


推荐阅读