Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
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
Lukáš Havlíček:1.12.2019 13:47

Zdravím, procvičuju si cykly a narazil jsem na jeden problém. Mám vytvořený cyklus na zadávání čísel ten mi funguje v pořádku, ale když ty čísla chci sečíst, tak mi to vypíše uplně nesmyslný výsledek.

/*
Datum vytvoření: 1.12.2019
Vytvořil: Turbošneček

*/

#include<iostream>
#include<cstring>
#include<locale>



using namespace std;

int main()
{
        locale cze("Czech");
        locale::global(cze);

        /*     Promenne     */


        char cislo[6];
        int c;
        int vysledek = 0;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        cout << "\n\n\n";

        /*     Script programu     */



        for (c = 0; c < 5; c++)
        {
                cout << "   Zadejte " << c + 1 << ".číslo z pěti: ";
                cin >> cislo[c];
                vysledek += cislo[c];
        }

        cout << "   " << vysledek;





        cin.get();
        cin.get();
        return 0;
}

Když zadám samé osmičky, tak by mě to mělo vypsat součet 40, ale mě se zobrazí 280. Můžete mi prosím poradit, kde dělám chybu? Předem děkuji za odpovědi.

 
Odpovědět
1.12.2019 13:47
Avatar
Lukáš Havlíček:1.12.2019 14:13

Tak jsem to vyřešil. Promenou char cislo[6] jsem zmeni l na promenou int cislo a podle toho upravil i ten cyklus. Nyni program vypada takto.

/*
Datum vytvoření: 1.12.2019
Vytvořil: Turbošneček

*/

#include<iostream>
#include<cstring>
#include<locale>
#include<cmath>



using namespace std;

int main()
{
        locale cze("Czech");
        locale::global(cze);

        /*     Promenne     */


        int cislo;
        int c;
        int vysledek = 0;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        cout << "\n\n\n";

        /*     Script programu     */



        for (c = 0; c < 5; c++)
        {
                cout << "   Zadejte " << c + 1 << ".číslo z pěti: ";
                cin >> cislo;
                vysledek += cislo;
        }

        cout << "   " << vysledek;





        cin.get();
        cin.get();
        return 0;
}
Akceptované řešení
+5 Zkušeností
Řešení problému
 
Nahoru Odpovědět
1.12.2019 14:13
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 2 zpráv z 2.