Forum » Programiranje » C++ - Razbijanje števila na števke
C++ - Razbijanje števila na števke
Giller0 ::
Imam problem, kjer kot vhod dobim 11 mestno število, ki jo je potrebno razbiti na števke.
Sam sem poskušal tako:
Prevajalnik ne javi napak, a program ne deluje pravilno. For zanko za izpis polja sem dodal, da vidim kaj se polni v polje.
Vnesel sem število 94798814112, elementi v polju pa so bili 1,0,7,3,7,4,1,8,2,3,9. Skratka narobe. Poizkušal sem z različnimi variacijami float, long int a ni pomagalo.
Torej, kje je napaka? Ob enem pa bi še vprašal, če obstaja za rešitev tega problema kakšen bolj prefinjen način, mogoče celo fukncija ?
Hvala in LP!
Sam sem poskušal tako:
#include <iostream.h> #include <stdio.h> #include <stdlib.h> int main() { div_t divresult; int st_vagona=0; int polje_stevil[11]; float deljenec=10000000000; cout << "Vnesite številko: "; cin >> st_vagona; for (int stevec = 0; stevec < 11; stevec++) { divresult = div ( st_vagona, deljenec); polje_stevil[stevec] = divresult.quot; st_vagona = divresult.rem; deljenec=deljenec/10; } for (int stevec1 = 0; stevec1 < 11; stevec1++) { cout << "polje " <<stevec1 << ". : "<< polje_stevil[stevec1] <<endl; } return 0; }
Prevajalnik ne javi napak, a program ne deluje pravilno. For zanko za izpis polja sem dodal, da vidim kaj se polni v polje.
Vnesel sem število 94798814112, elementi v polju pa so bili 1,0,7,3,7,4,1,8,2,3,9. Skratka narobe. Poizkušal sem z različnimi variacijami float, long int a ni pomagalo.
Torej, kje je napaka? Ob enem pa bi še vprašal, če obstaja za rešitev tega problema kakšen bolj prefinjen način, mogoče celo fukncija ?
Hvala in LP!
Jow..
Jean-Paul ::
Tukaj imaš malo bolj prefinjen način:
#include <iostream> #include <string> int main(int argc, char* argv[]) { std::string str = argv[1]; for(size_t i = 0; i < str.size(); ++i) std::cout << " " << str[i] - '0'; std::cout << std::endl; return 0; }
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Združevanje polj [C]Oddelek: Programiranje | 995 (859) | ragezor |
» | Spreminjanje vrednosti v polju [C]Oddelek: Programiranje | 2188 (1987) | specing |
» | java pomočOddelek: Programiranje | 1980 (1372) | kr?en |
» | Diagram poteka - pomočOddelek: Programiranje | 1555 (1510) | Ciklamen |
» | [C++][Naloga_polja]MIN in MAX polja, izpis za x.100 stevilOddelek: Programiranje | 2944 (2755) | snow |