Dualzahlen in dezimahl umwandeln
-
Kann mir einer einen tipp geben was ich anders machen muss.
#include <iostream> using namespace std; int main() { int ergebnis,zahl,s1,s2,s3,s4,s5,s6,s7,s8;//vereibarung der variablen stelle,zahl int z1,z2,z3,z4,z5,z6,z7,z8; int e1=1,e2=2,e3=4,e4=8,e5=16,e6=32,e7=64,e8=128;// zuweisung der stellenwerte an e cout<< "Bitte geben Sie eine Dualzahl ein.(bis zu achtsellen moeglich)"; cin >>zahl; while(zahl>11111111) { cout<< "zahl"; cin>>zahl; } s1=zahl%10; //zahl durch modulo rest ist = s1 z1=zahl/10; //zahl wird um eine position verkleinert teilen durch 10 s2=z1%10; //zahl durch modulo rest ist =s2 z2=z1/10; //zahl wird um eine position verkleinert teilen durch 10 s3=z2%10; z3=z2/10; s4=z3%10; z4=z3/10; s5=z4%10; z5=z4/10; s6=z5%10; z6=z5/10; s7=z6%10; z7=z6/10; s8=z7%10; z8=z7/10; if(s1==1) // wenn s1 ist 1 dann ist s1 =e1 e1=s1; if(s2==1) e2=s2; if(s3==1) e3=s3; if(s4==1) e4=s4; if(s5==1) e5=s5; if(s6==1) e6=s6; if(s7==1) e7=s7; if(s8==1) e8=s8; ergebnis=e1+e2+e3+e4+e5+e6+e7+e8; //addition cout<< "Die Dezimahlzahl ist " <<ergebnis<<endl; return 0; }
-
Neuling77 schrieb:
Kann mir einer einen tipp geben was ich anders machen muss.
Nichts, es sei denn, du hast ein Problem.
-
ja ich habe ein problem das programm gibt mir nicht die richtige dezimahlzahl aus.
irgendwie habe ich mich verrant.
-
s1 bis s8 sollen doch am Ende entweder 0 oder 1 sein?
Dann müsste es eher heißen:if(s1 == 0) e1 = 0; //usw. ...
-
Dankeschön
