IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Neaktivní uživatel:25.9.2017 18:28

Ahoj.
Snažím se vytvořit výčtenku peněz. Hodnota peněz nepřesahuje 150kč. Napadl mě tedy tento kód:

int main()
{
        int k,x, y;
        int castka = 0;

        int penize[7] = { 100, 50, 25, 10, 5, 2, 1 };
        int pocet[7];

        cout << "Zadejte castku pro vycet minci (P < 50): ";
        cin >> k;

        while (k > 150)
        {
                cout << endl;
                cout << " Castka nesmi byt vetsi jak 150kc." << endl;
                cout << "Zadejte prosim znovu castku pro vycet minci : ";
                cin >> k;
        }


        for (int i = 0; i < 7; i++)
        {
if(castka <= k)
{
                x = k / penize[i];
                y = x * penize[i];
                castka += y;
                cout << x << y << endl;

        }

        system("pause");
    return 0;
}
}

Kod ale nefunguje. Nějak nechápu důvod - v cyklu vydělím peníze a výsledek vynásobím některým z peněz z listu penize[] a tím bych měl vlastně získat nějaký peníze ktery načtu do častky. Mohl by mi prosím někdo vysvětlit jak na to? Nebo kde by mohla být chyba?
Děkuji všem

Odpovědět
25.9.2017 18:28
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Patrik Valkovič:25.9.2017 18:40

Nemodifikuješ částku, takže celou částku vždy vydělíš znovu. Musíš z toho celku odpočítat. Kromě toho máš špatně umístěný return, má být o závorku dál.

for (int i = 0; i < 7; i++)
{
    x = k / penize[i];
    y = x * penize[i];
    k -= y;
    cout << x << "x" << penize[i] << " zbylo " << k << endl;
}
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
25.9.2017 18:40
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Neaktivní uživatel:25.9.2017 18:44

Ahaa, že mě to nenapadlo..
Děkuji mockrát

Nahoru Odpovědět
25.9.2017 18:44
Neaktivní uživatelský účet
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.