Zahl in Zeichen darstellen (Anfänger)
-
Hallo!
Es handelt sich hier um eine einfache KonsolenApplikation.
Ich würde gerne eine int-Zahl eingeben und diese als eine Reihe von Sternchen repräsentieren lassen. Z.B. 3 --> ***Zuerst habe ich mich darum gekümmert, dass wirklich nur Zahlen verarbeitet werden.
#include<iostream> #include <cstring> using namespace std; int istZahl(char zahl[10]) { int laenge=strlen(zahl); for(int i=0; i<laenge; i++) if ( !((int)zahl[i] > 47 && zahl[i] < 58)) { return false; } return true; } int main() { char a[20]; cout<<"Bitte eine Zahl eingeben: "; cin.getline(a,20); while (istZahl(a)==false) { cout<<"\nUngueltige Eingabe. \nBitte nur Zahlen eingeben: "; cin.getline(a,20); } cout<<a<<" ist eine Zahl."<<endl; cin.ignore(); cin.get(); return 0; }Jetzt dachte ich mir, dass ich die Sternchen als char in einer Schleife sooft aneinander hängen kann bis die eingegebene Zahl erreicht wurde.
Nur leider weiß ich nicht, wie ich an diese Zahl "rankomme" bzw. in der Schleife richtig darauf zeige.
Ich hoffe ihr habt Tipps für mich und ein bisschen Nachsicht mit einem Anfänger
-
Wie wäre es, wenn du die Eingabe so machst?
int zahl; cin >> zahl;Dadurch hattest du mit einem Schlag alle Probleme gelöst.
Woher hast du eigentlich diese andere Vorgehensweise? Und woher die Idee, cstring zu benutzen?
-
Die Idee mit der Länge der Zeichenkette war nicht meine,
konnte ich aber ziemlich schnell im Internet finden und es sah für mich auch ganz
sinnvoll aus.
Also wenn das auf diese Weise nichts wird oder nicht ratsam ist,
dann werd ich's wohl erstmal so machen wie du geschrieben hast.
Danke
-
Aber bei dem, was ich geschrieben habe, läutet doch irgendeine Glocke, oder? Deine Antwort klingt, als hättest du so etwas noch nie gesehen.