Programmieren - alles kontrollieren 4.937 Themen, 20.645 Beiträge

Wie mache ich die "if else" passend ?

Selecta / 3 Antworten / Flachansicht Nickles

Vorab möchte ich euch bitte, egal wie schlecht die Umsetzung ist, mir nur im gleichen Stil eine Lösung anzubieten. Bitte keine neuen Mehtoden, wir lernen gerade das.



Also: Mein Code soll bei Eingabe von 2 Zahlen alle dazwischenliegenden, die durch 5 UND 7 teilbar sind ausgeben. Das klappt auch famos, nur leider weiß ich nicht, was ich als "if else" angeben muss, damit da nur 1x die von mir gewünschte "Keine Zahl íst teilbar" Antwort kommt ?

Mein Code:

void main (void)
{


int zahl_a, zahl_b, help;


cout << "Geben sie eine natuerliche Zahl ein: ";
cin >> zahl_a;
cout << endl << "Geben sie eine 2. natuerliche Zahl an: ";
cin >> zahl_b;
cout << endl << endl << "Nun werden alle Zahlen von " << zahl_a << " bis " << zahl_b << " gesucht,";
cout << endl << "die durch 7 UND 5 teilbar sind.";
cout << endl << endl;


while (zahl_a <= zahl_b)
{
help = 1;                                                          // ja zahl_a++ geht auch, ich weiß.
zahl_a = zahl_a + help;
if (zahl_a%7 == 0 && zahl_a%5 == 0)
cout << "Zahl: " << zahl_a << endl;
else if (zahl_a - zahl_b < 0)                       // Das Problem ist mir klar, er gibt für jede Stelle die
cout << "Nicht gefunden !" << endl;         nicht durch das teilbar ist, einmal "Nicht gefunden" aus.
}                                                            Er soll es aber für diesen Fall nur 1x ausgeben !
getch();
}                                                           

bei Antwort benachrichtigen
Rika Selecta „Wie mache ich die "if else" passend ?“
Optionen

Und am besten noch ein break;-Statement rein, daß die Schleife abbricht, sobald etwas gefunden wurde. Oder vorher gefunden mit 0 initialisieren und in die Schleifenbeding aufnehmen.

bei Antwort benachrichtigen