Einzelne Stellen von Zahlen
-
Hallo,
ich fange gearde erst an C++ zu lernen und zu progarmmieren.
Nun möchte ich (ohne großen mathematischen Aufwand)
einzelne Stellen extrahieren.Beipsiel:
Ein int = 12387
Nun soll z. B. die 3 einer Variable zugewiesen werden.Gibt es da eine Funktion/einen befehl für, oder muss
man dies mit mehreren mathmatischen Funktionen/Befehlen lösen?
-
Hallo
du kannst
- die Zahl in einen String umwandeln und dort die einzelnen chars extrahieren.
- mit Division und Modulo durch 10 die einzelnen Stellen berechnen.bis bald
akari
-
Hier ein Beispiel für die Methode über Strings:
#include<iostream> #include<sstream> int Stelle(int Zahl, int Stelle) { std::stringstream NummerStream; NummerStream << Zahl; // Umwandlung in String return NummerStream.str()[Stelle - 1] - '0'; } int main() { using namespace std; // Auflösen von std:: int Nummer = 123456; // Deine Nummer stringstream NummerStream; NummerStream << Nummer; // Umwandlung in String cout << NummerStream.str()[0] << " " << NummerStream.str()[1] << " " << NummerStream.str()[2] << " " << NummerStream.str()[3] << " " << NummerStream.str()[4] << " " << NummerStream.str()[5] << endl; // Das ganze nochmal mit einer Funktion: cout << Stelle(Nummer, 1) << " " << Stelle(Nummer, 2) << " " << Stelle(Nummer, 3) << " " << Stelle(Nummer, 4) << " " << Stelle(Nummer, 5) << " " << Stelle(Nummer, 6) << endl; system("PAUSE"); }
-
Danke für die Hilfe euch beiden.
Ich werde es mittels Division machen.