umkehren der position von integer-Ziffern?
habe ich zum umkehren der position von integer, wie dies
input = 12345
output = 54321
machte ich dies, aber es gibt falsche Ausgabe e.g 5432
#include <iostream>
using namespace std;
int main(){
int num,i=10;
cin>>num;
do{
cout<< (num%i)/ (i/10);
i *=10;
}while(num/i!=0);
return 0;
}
Sie haben zu bewältigen, die Werte als ganze zahlen oder kann man mit Ihnen umgehen als strings oder Zeichen-arrays?
nur integer, ich kann nicht etwas anderes als Schleifen oder Auswahl...
Viele Duplikate auf ja schon (scheint eine Hausaufgaben-Frage, die aufkommt, diese Zeit des Jahres) - siehe z.B. [c-Programm für die Rückseite die Ziffern ](stackoverflow.com/questions/2351251/...)
nur integer, ich kann nicht etwas anderes als Schleifen oder Auswahl...
Viele Duplikate auf ja schon (scheint eine Hausaufgaben-Frage, die aufkommt, diese Zeit des Jahres) - siehe z.B. [c-Programm für die Rückseite die Ziffern ](stackoverflow.com/questions/2351251/...)
InformationsquelleAutor bbjkdsfj | 2011-01-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ihre Schleife beendet zu früh. Ändern
zu
um eine weitere iteration, und Ihr code funktioniert.
InformationsquelleAutor Doug T.
Hier ist eine Lösung
InformationsquelleAutor Elalfer
Wenn Sie versuchen es einmal als ein Beispiel, sehen Sie Ihren Fehler.
Eingang: 12
erste Schleife:
aus: 12%10 = 2 /1 = 2
i = 100
test: 12/100 = 0 (als ganze Zahl)
bricht man zu früh.
Eine Lösung könnte sein, die Prüfung
Nur als eine von vielen Lösungen.
InformationsquelleAutor StampedeXV
Nun, denken Sie daran, dass die integer-division immer Runden nach unten (oder ist es gegen null?) in C. was würde
num /i
werden, wennnum < 10
undi = 10
?InformationsquelleAutor Jonathan Grynspan
ersetzen Sie Ihre while-Anweisung
mit
InformationsquelleAutor Hans
Wenn ich es mache, würde ich (wahrscheinlich) beginnen Sie, indem Sie den neuen Wert ein
int
, und dann drucken Sie diesen Wert. Ich denke, das sollte den code vereinfachen, ein bisschen. Als pseudocode würde es etwa so Aussehen:Die andere naheliegende Möglichkeit wäre, zu konvertieren zu einem string first, und drucken Sie dann die Zeichenfolge in umgekehrter Richtung:
InformationsquelleAutor Jerry Coffin
InformationsquelleAutor rerun
Dies ist eine Codierung Zuordnung für meine college-Kurs. Diese Zuordnung kommt nur nach einer Diskussion über Operator Überladung in C++. Obwohl es nicht klar, ob eine Überlastung sollte verwendet werden, für die Zuweisung oder nicht.
InformationsquelleAutor StephanM
Der folgende code funktioniert für eine zwei-stellige Zahl, die nur.
InformationsquelleAutor Yiannis Hadjipolycarpou
}
InformationsquelleAutor Saad Mirza
Dieser umkehren wird bits in jedem signed oder unsigned integer (short, byte, int, long ...). Sie können zusätzliche parameter nBits Rahmen der bits beim Rückwärtsfahren.
ich. e.
7 im 8 bit = 00000111 -> 11100000
7 im 4-bit = 0111 -> 1110
InformationsquelleAutor Amith Chinthaka
public class TestDS {
}
InformationsquelleAutor Neel Salpe
Ich dies getan haben, einfach dies ist aber anwendbar bis zu 5-stellige zahlen, aber hoffe es hilft
InformationsquelleAutor Nauman Tauseef