URL: https://www.overclockers.at/coding-stuff/solved_c_zahlen_einlesen_213150/page_1 - zur Vollversion wechseln!
Guten Morgen,
meine C Kenntnisse sind leider schon etwas eingerostet, deswegen wende ich mich an euch.
Problem: ich möchte eine 4 stellige Zahl einlesen und dabei jede Ziffer in einem eigenen Array haben. Problem dabei ist, dass die 4 Zahlen eingegeben werden sollen und dann erst enter gedrückt wird (nicht nach jeder Ziffer ein Enter)
z.B. Eingabe: 9856 Enter
dann soll zahl[0]=9, zahl[1]=8, zahl[2]=5 und zahl[3]=6
hab das jetzt umständlich versucht zu lösen, mit in einer int einlesen und dann mittels komplizierten hinundherrechnen auf die ziffern zu kommen.
int help;
int zahl[4];
printf("Zahl zwischen 0000 und 9999 eingeben: ",x);
scanf("%i", &help);
zahl[0]=help/1000;
zahl[1]=(help-((help/1000)*1000))/100;
...
das muss doch eleganter gehn oder?
Tia
mir würden zwei sachen einfallen
1) chars einlesen und umrechnen/wandeln
2) nicht deine komplizierte rechnung, sondern modulo verwenden
also
zahl[0]=help/1000
zahl[1]=(help%1000)/100
zahl[2]=(help%100)/10
zahl[3]=(help%10)
Hi,
danke für die schnelle Antwort. Hab natürlich wieder mal viel zu kompliziert gedacht. Werd die modulo Lösung nehmen.
DANKE.
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026