Ich bin neu in der Programmierung Ich studiere über for-Schleife Ich habe es auf verschiedene Arten versucht und jedes Mal war Ausgabe anders. -Code, wenn ich schrieb nur "a" for-Schleife zu initialisieren:Warum sich Schleife in verschiedenen Situationen unterschiedlich verhalten
Eingang war "Enter binäre Zahl: 11011"
Ausgabe war "Dezimalzahl = 27"
#include <iostream>
using namespace std;
int main(){
int a,b,c=1,d=0;
cout<<"Enter binary number:";
cin>>a;
for (a;a!=0;a=a/10) {
b=a%10;
d=d+b*c;
c=c*2;
}
cout<<"Decimal Number="<<d<<endl;
}
-Code, wenn ich schrieb "int a" for-Schleife zu initialisieren:
Eingabe war "Enter-Binärzahl: 11011"
Output war "Dezimalzahl = 0"
#include <iostream>
using namespace std;
int main(){
int a,b,c=1,d=0;
cout<<"Enter binary number:";
cin>>a;
for (int a;a!=0;a=a/10) {
b=a%10;
d=d+b*c;
c=c*2;
}
cout<<"Decimal Number="<<d<<endl;
}
-Code, wenn ich schreibe nichts für Schleife zu initialisieren:
Eingang war "Enter binäre Zahl: 11011"
Ausgabe war "Dezimalzahl = 27"
#include <iostream>
using namespace std;
int main(){
int a,b,c=1,d=0;
cout<<"Enter binary number:";
cin>>a;
for (;a!=0;a=a/10) {
b=a%10;
d=d+b*c;
c=c*2;
}
cout<<"Decimal Number="<<d<<endl;
}
Ich möchte es mit for loop nicht während –
@UsmanQamar lösen Dann verwenden Sie Ihre dritte Version. Es ist etwas weniger konventionell als ein 'while'. – dasblinkenlight