-
C++ if, else
hmm ich hab vor ner weile angefangen mir die C++ Syntax antuschauen...
ich hab ma eben folgenes kleines programm geschrieben
Code:
#include<iostream>
using namespace std;
int main()
{
int a;
int b;
cout<<"Bitte wertA definieren \n";
cin>>a;
cout<<"Bitte WertB definieren \n";
cin>>b;
if(a != b)
{
cout<<"WertA ist nicht gleich WertB \n";
if(a < b)
{
cout<<"WertB ist grösser als WertA \n";
}
if(a > b)
{
cout<<"WertA ist grösser als WertB \n";
}
}
else
{
if(a == b)
{
cout<<"WertA ist gleich WertB \n";
}
}
}
doch die ausgabe sagt immer
"WertA ist gleich WertB"
aber ich kann nirgends ein fehler im Programm entdecken?
auch beim Kompilieren wird keine fehlermeldung angezeigt?
was mach ich falsch
ich arbeite mit
Dev-C++
mfg
-
welche werte haste denn eingegeben?^^
aus ersten blick ich kein Fehler entdeckt ich hau das ding nochmal durch den compiler warte...
-
Hmm, also das hier verstehe ich nicht so ganz:
else
{
if(a == b)
{
cout<<"WertA ist gleich WertB \n";
}
}
Es reicht doch:
else
{
cout<<"WertA ist gleich WertB \n";
}
Hab das jetzt nicht getestet, aber könnte mir vorstellen, dass da der Fehler ist.
-
so geht es auf jeden Fall:
Code:
#include <iostream>
#include <stdlib.h>
using namespace std;
int main()
{
int a;
int b;
cout << "Gib bitte A an: ";
cin>>a;
cout << endl << "Gib bitte B an: ";
cin>>b;
if(a==b){
cout << a << " = " << b << endl;
}else if(a > b){
cout << a << " ist groesser als " << b << endl;
}else if(b > a){
cout << b << "ist groesser als " << a << endl;
}
system("PAUSE");
return 0;
}
-
hmm ich hab immer den werte zwischen 1 - 10 gebraucht...
also nich im bereich von integer
...
hmm habs schon mehrmals kompiliert...
die codepassage die du da rausgeschnitten hast ist meiner meinung nach korrekt :S
löl spinnt etwa mein compiler xD ?
-
Installiere ihn einfach neu vielleicht geht es dann ;)
PS: Der Code ganz oben funktioniert bei mir und ich benutze auch Dev-C++
-
Code:
blackberry@system:~$ cd Desktop
blackberry@system:~/Desktop$ cat a.cpp
#include<iostream>
using namespace std;
int main()
{
int a;
int b;
cout<<"Bitte wertA definieren \n";
cin>>a;
cout<<"Bitte WertB definieren \n";
cin>>b;
if(a != b)
{
cout<<"WertA ist nicht gleich WertB \n";
if(a < b)
{
cout<<"WertB ist grösser als WertA \n";
}
if(a > b)
{
cout<<"WertA ist grösser als WertB \n";
}
}
else
{
if(a == b)
{
cout<<"WertA ist gleich WertB \n";
}
}
}
blackberry@system:~/Desktop$ g++ a.cpp -o a
blackberry@system:~/Desktop$ ./a
Bitte wertA definieren
2
Bitte WertB definieren
3
WertA ist nicht gleich WertB
WertB ist grösser als WertA
blackberry@system:~/Desktop$
Also bei mir klappt alles wunderbar.
-
Stimmt, habs jetzt auch mal probiert.