Diskuze: Po první volbě program proběhne a nic neudělá
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 4 zpráv z 4.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Nevrátí se ti žádná volba, protože ji ukládáš jen v lokální proměnné.
Tento kód ti do hlavní funkce nepředá žádnou hodnotu.
volba(2, 4);
Máš dvě možnosti, jak to udělat. Použít globální proměnnou (horší) nebo přečtenou volbu vracet jako návratovou hodnotu.. Použij druhou možnost:
int volba(int dolniMez, int horniMez) {
int v;
printf("Vase volba: ");
scanf("%d", &v);
while (v < dolniMez && v > horniMez) {
printf("Tato volba nebyla v nabidce! Zadejte znovu a spravne: \n");
scanf("%d", &v);
}
return v;
}
A v main pak funkci volej takto:
v = volba(2, 4);
To stejné samozřejmě platí i pro ostatní funkce - nikde si tu načtenou hodnotu neuložíš..
Zobrazeno 4 zpráv z 4.