| | |
| Stránka: 1 z 1
| [ Príspevkov: 8 ] | |
Autor | Správa |
---|
Registrovaný: 26.04.14 Prihlásený: 15.06.19 Príspevky: 61 Témy: 22 |
Zdravim .. robim program na zistenie suctu cisel kde vysledny sucet musi byt jednociferny ..s tym by ani nebol problem ale je potrebne nahrat vstup zo stdin a ten vstup moze mat aj 4000 cifier, rozmyslal som nad tym tak ze nahram to cez getchar(); a spravim prvy sucet cize nieco take Kód: long long int c = getchar(); while((c=getchar()!= EOF)){ printf("%lld - toto je getchar\n", c); do { s += (c % 10); c /= 10; } while (c > 0); } c = cislo; algoritmus_na_sucet_cifier(cislo);
deje sa mi to ze po zadani napr 10tky sa c zrazu rovna 48 .. nejake rady ako to opravit ? dakujem
|
|
Registrovaný: 15.06.14 Prihlásený: 18.04.24 Príspevky: 17930 Témy: 142 Bydlisko: Bratislava |
Prečo nacitavas číslo cez getchar?
_________________ ITX >>> ATX |
|
Registrovaný: 26.04.14 Prihlásený: 15.06.19 Príspevky: 61 Témy: 22 | Napísal autor témy Vetrolam: 11.04.2018 22:27 | |
|
nevedel som ako inak spracovat stdin
|
|
Registrovaný: 15.06.14 Prihlásený: 18.04.24 Príspevky: 17930 Témy: 142 Bydlisko: Bratislava |
_________________ ITX >>> ATX |
|
Registrovaný: 26.04.14 Prihlásený: 15.06.19 Príspevky: 61 Témy: 22 | Napísal autor témy Vetrolam: 11.04.2018 22:52 | |
|
ale nepotrebujem si pri scanf zadefinovat pole ? ma zmysel vytvarat napr buffer[4000] ?
|
|
Registrovaný: 15.06.14 Prihlásený: 18.04.24 Príspevky: 17930 Témy: 142 Bydlisko: Bratislava |
Kód: scanf("%d", &x); tymto nacitas priamo cislo do int-u. ziadne pole si vytvarat nemusis
_________________ ITX >>> ATX |
|
Registrovaný: 26.04.14 Prihlásený: 15.06.19 Príspevky: 61 Témy: 22 | Napísal autor témy Vetrolam: 11.04.2018 23:13 | |
|
myslim, ze som sa uz niekde pohol, ale stale viem spracovat len okolo 20 cifier ..viem nacitavat zo scanf cisla a hned ist scitavat ? ci mam ist na to nejak inak ?
|
|
Registrovaný: 15.06.14 Prihlásený: 18.04.24 Príspevky: 17930 Témy: 142 Bydlisko: Bratislava |
konkretnejsie 19 cifier, je to horna hranica pre int v c-cku ak chces aj dlhsie cisla, ty si na to isiel spravnym smerom budes nacitavat po jednom znaku zo vstupu, nasledne pomocou tohto prikazu znak skonvertujes na cislo, ktore pripocitas k cif.suctu: Kód: int i = c - '0'; cifSucet += i; Potom este zostava osetrit situaciu ked bude sucet vacsi ako 10: Kód: while (cifSucet >= 10) { s = 0; for(;cifSucet>0; s+=cifSucet%10, cifSucet/=10); cifSucet = s; } printf("ciferny sucet je %d\n", cifSucet);
_________________ ITX >>> ATX |
|
| Stránka: 1 z 1
| [ Príspevkov: 8 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| Ciferný súčet čísla v C v Assembler, C, C++, Pascal, Java | 4 | 1031 | 10.04.2018 8:46 BX | | Súčet inputov v JavaScript, VBScript, Ajax | 3 | 496 | 25.02.2012 12:30 shaggy | | Excel - sucet s podmienkou v Ostatné programy | 1 | 311 | 08.01.2014 16:44 Peeppo | | Sucet jednotiek z DB v PHP, ASP | 4 | 582 | 01.12.2009 14:47 jtomcik | | Sucet viac ako 32 buniek v Ostatné programy | 0 | 464 | 02.08.2013 13:17 freem1 | | Rozklad na súčet Fibonacciho čísel v Assembler, C, C++, Pascal, Java | 4 | 1178 | 15.11.2009 19:47 joebaxx | | Sucet cien tovaru vo formulary v JavaScript, VBScript, Ajax | 2 | 801 | 09.02.2008 19:30 eiger33 | | sucet za sebou nasledujucich cisel v Assembler, C, C++, Pascal, Java | 10 | 1037 | 08.06.2008 19:44 petos | | Pascal - sucet 2 kladnych binarnych cisel v Assembler, C, C++, Pascal, Java | 0 | 717 | 15.04.2010 21:51 arzenop | | Co znamena logicky sucet a logicky sucin v Assembler, C, C++, Pascal, Java | 9 | 1105 | 21.03.2015 8:46 Venco |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|