Program v C
Takže... Začal jsem se učit programovat v C, ale zasekl, jsem se hned ze začátku u příkladu, na výpis mocnin 2ky . Program má fungovat tak, že se další mocnina vypíše, po zadání "a". Můj program ovšem vypíše při zadání "a" 2 mocniny místo jedné a po jedné klidně vypisuje pokud jen mačkám enter (program se neukončí, jak by měl). Myslím, že chyba je v podmínce cyklu, ale nevím, jak jinak ji zapsat.
//Knihovny
#include <stdio.h>
#include <math.h>
#include <conio.h>
//Deklaruju promenne
int p; //poradi
int v; //hodnota 2ky
char o; //pokracovat?
int main (void){
p= 0;
v= 1;
do {p++;
v = v*2;
printf ("%i%s%i%s",p,". mocnina 2ky je ",v,". Chcete pokracovat? (a = ano)\n");
scanf ("%c",&o);
}
while (o ='a');
return 0;
}
P.s.: Moc díky za rady a pokud víte o nějakém uceleném online seriálu / dobré knížce o C, budu jen rád
miesto while (o ='a');
ma byt while (o =='a');
Díky, jinak teď to okamžitě vypíná po zmáčknutí enter, takže ten cyklus asi zas nefunguje A vím, že se ptám jak úplný vůl, ale fakt je to pro mě novinka...
Místo
dej
Ta mezera je tam proto, že když to čte jeden znak, nepřeskakuje bílé znaky (enter ti pořád visí na bufferu) a při druhém průchodu jako by se sám stisknul enter.
Moc díky, tohle je přesně ono, už to jede.