Ziffern anhängen
-
Hallo zusammen,
ich habe gerade ein paar Syntaxprobleme. Ich möchte über cin eine Zahl angeben und diese soll dann einfach an die zuletzt eingegeben Zahl angehängt werden.Also so:
Zahl1 = 3
Ich gebe nun 5 ein:
Zahl1+=5 --> 35 //;)Ich möchte, dass nur eine Variable gebraucht wird, aber das hier funzt ja definiert nicht:
zahl=zahl+cin>>zahl;
Wie kann ich das machen?
Vielen Dank
lg, freakC++
-
void append(int& num) { int tmp; cin >> tmp; num = num*10 + tmp; } // int Zahl; append(Zahl); append(Zahl);z.B.
-
#include <iostream> int main () { int zahl = 22; int temp = 0; std::cin >> temp; zahl *= 10; zahl += temp; }Ich bezweifle, dass es ohne eine temporäre Zahl geht..
-
freakC++ schrieb:
Ich möchte, dass nur eine Variable gebraucht wird
Warum?
edit:
Und hier eine (ungetestete) Möglichkeit, sofern du einen Iterator nicht als Variable ansiehst:istream_iterator<int> in (cin); int zahl=(*in) * 10; in++; zahl += *in;
-
Hallo,
das mit einer Variable war nicht so geistreich! Es dürfen auch mehrere sein.Vielen Dank für eure Hilfe!
lg, freakC++
-
freakC++ schrieb:
Hallo,
das mit einer Variable war nicht so geistreich! Es dürfen auch mehrere sein.Vielen Dank für eure Hilfe!
lg, freakC++
Dann bekommst du es aber doch selber hin, oder?
-
int main() { std::string ZahlAlsString; int ZahlAlsZahl; while(true) //oder was auch immmer { char ziffer; cin>>ziffer; ZahlAlsString+=ziffer; std::stringstream Str; if(Str<<ZahlAlsString) ; //ggf exeption if(Str>>ZahlAlsZahl); //ggf exeption } }Ist nicht wirklich performant aber einfach zu verstehen und Sicher