Heyho,
das Problem ist eigentlich recht simpel. Es handelt sich um eine einfache do-while Schleife, die bei Durchlaufen einen Wert erhöht und bei Erreichen eines gewissen Werts stehn bleiben soll.
Die Bedingung sieht folgendermaßen aus:
i hat den Ausgangswert 3, j hat den Ausgangswert 0.
Sofern die Schleife korrekt durchlaufen würde, sollte für "j" der Wert 3 herauskommen (die Schleife läuft 3x durch, bis die Bedingung erfüllt wird).
Das Problem ist jedoch, dass der Code falsch interpretiert wird: "if (i/2)" <- leider meint devcpp, mit dem ich programmiere, dass ein Wert von 3 durch 2 teilbar wäre - und gibt als Ergebnis 1 heraus. Dies ist laut Dev nicht teilbar, weshalb eine 2 im zweiten Durchgang ausgegeben wird - und danach wieder ne 1, schon befindet sich das Programm in der Endlosschleife.
Die Frage nun: Wie kann ich den Code dazu bringen, dass korrekt unterschieden wird, wie eine Int-zahl ganzzahlig teilbar ist, bzw. eben nicht?
Thx im Voraus
Cya, Mäxl (dessen C-Zeiten schon über ein Jahr zurück liegen ^^)
das Problem ist eigentlich recht simpel. Es handelt sich um eine einfache do-while Schleife, die bei Durchlaufen einen Wert erhöht und bei Erreichen eines gewissen Werts stehn bleiben soll.
Die Bedingung sieht folgendermaßen aus:
i hat den Ausgangswert 3, j hat den Ausgangswert 0.
do {
++j;
if (i / 2)
{ --i;
}
else
{ i = i * 2;}
}
while (i < 8);
Sofern die Schleife korrekt durchlaufen würde, sollte für "j" der Wert 3 herauskommen (die Schleife läuft 3x durch, bis die Bedingung erfüllt wird).
Das Problem ist jedoch, dass der Code falsch interpretiert wird: "if (i/2)" <- leider meint devcpp, mit dem ich programmiere, dass ein Wert von 3 durch 2 teilbar wäre - und gibt als Ergebnis 1 heraus. Dies ist laut Dev nicht teilbar, weshalb eine 2 im zweiten Durchgang ausgegeben wird - und danach wieder ne 1, schon befindet sich das Programm in der Endlosschleife.
Die Frage nun: Wie kann ich den Code dazu bringen, dass korrekt unterschieden wird, wie eine Int-zahl ganzzahlig teilbar ist, bzw. eben nicht?
Thx im Voraus
Cya, Mäxl (dessen C-Zeiten schon über ein Jahr zurück liegen ^^)