Was ist an diesem Programm-Code falsch?
-
#include <iostream>
using namespace std;int main()
{ cout << " Denken Sie sich eine Zahl zwischen 1 und 10. " << endl;
char answer;
cout << " Ist deine Zahl kleiner als 7? (y/n): "; cin >> answer;
if ( answer == 'y') // 1 <= n <= 6
{ cout << " Ist deine Zahl kleiner als 5? (y/n): "; cin >> answer;
if (answer == 'y') // 1 <= n <= 4
{ cout << " Ist deine Zahl kleiner als 3? (y/n): "; cin >> answer;
if (answer == 'y') // 1 <= n <= 2
{ cout << " Ist deine Zahl kleiner als 2? (y/n): "; cin >> answer;
if (answer == 'y') // 1 <= n
cout << " Deine Zahl ist die 1! " << endl;
else
cout << " Deine Zahl ist die 2! " << endl;
}
else // 3 <= n <= 4
{ cout << " Ist die Zahl kleiner als 4? (y/n): "; cin >> answer;
if (answer == 'y')
cout << " Deine Zahl ist die 3! " << endl;
else
cout << " Deine Zahl ist die 4! " << endl;
}
}
else // 5 <= n <= 6
{ cout << " Ist die Zahl kleiner als 6? (y/n): "; cin >> answer;
if (answer == 'y')
cout << " Deine Zahl ist die 5! " << endl;
else
cout << " Deine ZAhl ist die 6! " << endl;
}
}
else // 7 <= n <= 8
{ cout << " Ist deine Zahl kleiner als 8? (y/n): "; cin >> answer;
if (answer == 'y') // 7 <= n
cout << " Deine Zahl ist die 7! " << endl;
else
cout << " Deine Zahl ist die 8! " << endl;
}
}
else // 9 <= n <= 10
{ cout << " Ist deine Zahl kleiner als 9? (y/n): "; cin >> answer;
if (answer == 'y')
cout << " Deine Zahl ist die 9! " << endl;
else
cout << " Deine Zahl ist die 10! " << endl;
}
cin.sync();
cin.clear();
cin.get();
}
-
siehe selbst:
#include <iostream> using namespace std; int main() { cout << " Denken Sie sich eine Zahl zwischen 1 und 10. " << endl; char answer; cout << " Ist deine Zahl kleiner als 7? (y/n): "; cin >> answer; if ( answer == 'y') // 1 <= n <= 6 { cout << " Ist deine Zahl kleiner als 5? (y/n): "; cin >> answer; if (answer == 'y') // 1 <= n <= 4 { cout << " Ist deine Zahl kleiner als 3? (y/n): "; cin >> answer; if (answer == 'y') // 1 <= n <= 2 { cout << " Ist deine Zahl kleiner als 2? (y/n): "; cin >> answer; if (answer == 'y') // 1 <= n cout << " Deine Zahl ist die 1! " << endl; else cout << " Deine Zahl ist die 2! " << endl; } else // 3 <= n <= 4 { cout << " Ist die Zahl kleiner als 4? (y/n): "; cin >> answer; if (answer == 'y') cout << " Deine Zahl ist die 3! " << endl; else cout << " Deine Zahl ist die 4! " << endl; } } else // 5 <= n <= 6 { cout << " Ist die Zahl kleiner als 6? (y/n): "; cin >> answer; if (answer == 'y') cout << " Deine Zahl ist die 5! " << endl; else cout << " Deine ZAhl ist die 6! " << endl; } } else // 7 <= n <= 8 { cout << " Ist deine Zahl kleiner als 8? (y/n): "; cin >> answer; if (answer == 'y') // 7 <= n cout << " Deine Zahl ist die 7! " << endl; else cout << " Deine Zahl ist die 8! " << endl; } } else // 9 <= n <= 10 { cout << " Ist deine Zahl kleiner als 9? (y/n): "; cin >> answer; if (answer == 'y') cout << " Deine Zahl ist die 9! " << endl; else cout << " Deine Zahl ist die 10! " << endl; } cin.sync(); cin.clear(); cin.get(); }
Der hintere else-Block ist irgendwie verwaist. Das ganze Programm ist murks.