Mir fehlt gerade echt die Logik!
Ratze
- programmiertechnik
0 Rouven0 steckl0 Ratze /Geholfen/
Hallo,
ich möchte Prüfen ob eine Zahl teilbar ist:
int zahl;
zahl=200;
if(zahl%100)
{
printf("Ja");
}
else
{
printf("Nein");
}
200 ist doch restlos durch 100 teilbar, aber ich bekomme ein klares NEIN, wieso?
Hello,
200 ist doch restlos durch 100 teilbar, aber ich bekomme ein klares NEIN, wieso?
...weil du die Intelligenz des Interpreters falsch einschätzt, er liest in deinem Statement was anderes:
if (zahl % 100)
-> if (200 % 100)
-> if (0)
-> if (false)
=> er führt den else-Zweig aus.
if (zahl%100 == 0)...
MfG
Rouven
Hi,
ich möchte Prüfen ob eine Zahl teilbar ist:
int zahl;
zahl=200;
if(zahl%100)
{
printf("Ja");
}
else
{
printf("Nein");
}200 ist doch restlos durch 100 teilbar, aber ich bekomme ein klares NEIN, wieso?
200%100 = 0
0 = false, darum wird der else-zweig aufgerufen.
Ist mir (wie wohl vielen anderen) auch schon passiert, darum weiss ich das ;)
mfG,
steckl
Hi,
danke, jetzt kapiere ich :)