c++ neuling mit (lächerlicher?) frage

Begonnen von Kagemusha, 24. September 2007, 17:38:33 Uhr

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

Kagemusha

bin grad dabei mithilfe eines buches c++ zu lernen. die aufgabenstellung war einen countdown zu kreiren und bei der hälfte eine nachricht zu generieren, die eben das erreichen der hälfte verkündet.
dabei ist mir was seltsames bei der zu generierenden nachricht aufgefallen.
schreibt man die for-schleife so (wie sie im buch steht):
for (int i=Startwert; i>=0; i--)
{
// Countdown
cout << "Countdown bei: " << i << endl;
// Hälfte des Countdowns erreicht
if (i == Startwert/2)
cout << "Die Haelfte ist vorbei." << endl;
}

wird die nachricht an der falschen stelle ausgegeben. bei einem startwert von 5 wird sie zwischen 2 und 1 anstatt zwischen 2 und 3 ausgegeben.

schreib ich die schleife so:
for (int i=Startwert; i>=0; i--)
{
// Hälfte des Countdowns erreicht
if (i == Startwert/2)
cout << "Die Haelfte ist vorbei." << endl;
// Countdown
cout << "Countdown bei: " << i << endl;
}

steht die nachricht an der richtigen stelle.
ich versteh jetzt nicht ganz warum das so is. vielleicht kann mir das jemand erklären?!