niezauważalna różnica między operandem <= a <
Ostatnio zmodyfikowano 2015-02-04 13:05
Nitro Temat założony przez niniejszego użytkownika |
niezauważalna różnica między operandem <= a < » 2015-02-04 12:58:49 witam,
Nie mogę zrozumieć dlaczego jeśli zmienię warunek while(kasia<=ewa) na while(kasia<ewa) to program wskazuje w pierwszej wersji 27 lat a w drugiej 0. Dlaczego?
/*program liczący procent prosty i składowy*/
#include <stdio.h> #include <stdlib.h> #define OPROCENTOWANIE 10.0 #define OPROCENTOWANIE2 1.05
int main (void) {
float kasia=100.0; float ewa=100.0; int licznik=0; printf("Sprawdzmy po ilu latach inwestycje Kasi przekrocza inwestycje Ewy\n"); while(kasia<=ewa) { ewa=ewa+10.0; kasia=kasia*1.05; licznik++; } printf("Bedzie to po %d latach\n",licznik);
system("pause"); return 0; }
|
|
Szadziu |
» 2015-02-04 13:05:59 Ponieważ w przypadku < while(kasia < ewa) program nigdy nie wejdzie do tej pętli. Edit: Ponieważ warunek na starcie nie jest spełniony Kasia == 100, Ewa == 100 wykorzystaj pętlę do { } while( kasia < ewa )
to zadziała tak jak chcesz |
|
« 1 » |