Probleme mit Felder



  • Hallo,
    ich will ein Programm schreiben, das eine dreistellige Zahl einliest und die Zahl ausgibt, die durch Umkehrung der Ziffernfolge entsteht.(z.b. Input: 321, Output 123)
    Ich hab den Code geschrieben und ich bekomme richtige Ergebnis(Here das code vielleicht jemand will es sehen).

    for (n = 0; zeile[n] != '\0'; n++);
    for (i=n-1; i >= 0; i--)
    {
     cout << zeile[i];
    }
    

    Ich will aber das wenn mein Programm ein vierstellige Zahl einliest, diese als fehler zu behandlen.

    Wie kann ich das machen?? Ich habe mit IF-Anweisung versucht aber war bis jetz unerfolgreich

    Danke und LG
    moni



  • hi,

    ich würde es so machen:

    std::string input;
    std::cin >> input;
    if(input.size() != 3) // Überprüft ob es genau 3 zeichen sind wenn nicht  -> Fehler
      cout << Fehler << endl;
    else // 3 Zeichen -> aber nicht unbedingt zahlen müsste man noch prüfen. z.B. mit is_digit() 
    {
      // umgekehrt aus geben:
      cout << std::string(input.rbegin(),input.rend()) << endl;
    }
    


  • Thx eViLiSSiMo jetzt ist mir alles klar,danke noch einmal und schonen tag noch


Anmelden zum Antworten