Diskuze: Nefunguje mi cyklus do while
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 5 zpráv z 5.
//= 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.
Když používáš scanf, tak potvrzení hodnoty uděláš enterem, tudíž
ti getchar vrátí '\n' okamžitě.
Řešení:
buď změníš podmínku whilu na opakovanie != 'n' nebo použiješ na načtení
znaku opět scanf.
Snad pomohlo
Promiň, večer už mi to moc nemyslí, měnit tu podmínku je ptákovina a
zacyklilo by se
Ale jestliže první getchar zežere první whitespace, můžeš tam mít druhé
volání getchar, které už načte znak nebo scanf(" %c", &znak);
PS ta mezera u scanf musí být jinak by to taky žralo whitespace
Použi toto:
scanf(" %c",&opakovanie);
namiesto:
opakovanie=getchar();
a premennú operácie nemaj ako int, ale char.
Stačí vyprázdniť buffer:
fflush(stdin); // vyprázdni bufer
printf("\nChces este pokracovat v pocitani? a/n :");
opakovanie=getchar();
Zobrazeno 5 zpráv z 5.