Potrebujem pomoc v C
Moderátori: psichac, Moderátori
Potrebujem pomoc v C
Vedel by mi niekto pomoc ? Potrebujem to v while a C. Napíšte program, ktorý číta znaky z klávesnice až kým nenájde 'X'. Potom vypíše, koľko z prečítaných znakov boli znaky 'A'.
0
Naposledy upravil/-a tomassksk v 03 Mar 2021, 14:08, upravené celkom 3 krát.
Re: Potrebujem pomoc v C
Je to práca na minútku, určite však je potrebné si naštudovať ako to funguje, pretože nie vždy to niekto napíše za teba. Určite nie je zlé skusiť trošku pogoogliť, z týchto "učebnicových" zadaní je prakticky každé už niekde vypracované a aj popísané, ktorý príkaz ako funguje.
Kód: Vybrať všetko
#include <stdio.h>
int main(void){
int c;
int pocitadlo=0;
printf("Zadaj znaky a potvrd [ENTER]: ");
while(c!='X'){
c = getchar( );
if (c=='A') pocitadlo++;
}
printf( "Zadal si znak 'A': %u krat",pocitadlo);
return 0;
}
0
Nieje dôležité všetko vedieť ,ale je podstatné vedieť to nájsť
-
- Ultimate člen
- Príspevky: 2582
- Dátum registrácie: 20 Júl 2010, 00:00
- Bydlisko: okolie KE
- Vek: 27
Re: Potrebujem pomoc v C
Podľa mňa ešte chýba počiatočná hodnota c. Čo ak čírou náhodou bude na mieste v pamäti, kde sa naalokuje c, hodnota 'X'? Nie že by to bolo pravdepodobné, ale predsa.
Alebo použiť cyklus s podmienkou na konci (známy ako do-while).
Alebo použiť cyklus s podmienkou na konci (známy ako do-while).
0
-
- Ultimate člen
- Príspevky: 2582
- Dátum registrácie: 20 Júl 2010, 00:00
- Bydlisko: okolie KE
- Vek: 27
Re: Potrebujem pomoc v C
Tak na jeden bajt v pamäti je 256 možností, kritická je tu jedna.
Určite ale netreba zabúdať na správnu inicializáciu premenných. Pri vyšších jazykoch zvykne premennú vynulovať runtime. Ale pri Cčku sa jej kompilátor ani nedotkne, keď mu neprikážeme. Takže čítať premennú skôr, ako do nej niečo zaručene zapíšeme je lotéria.
Určite ale netreba zabúdať na správnu inicializáciu premenných. Pri vyšších jazykoch zvykne premennú vynulovať runtime. Ale pri Cčku sa jej kompilátor ani nedotkne, keď mu neprikážeme. Takže čítať premennú skôr, ako do nej niečo zaručene zapíšeme je lotéria.
0
Re: Potrebujem pomoc v C
...ale premenná c ako int... njn. Ako v zásade sa dá, ale aj tak...kole mi to oči
0
Re: Potrebujem pomoc v C
To by aj bolo OK, getchar vracia int:
Mne skor vadi pocitadlo ako signed a absencia koncov riadkov.
Vsetko su to ale v tomto pripade skor kozmeticke veci...
EOF je int. Nic ale nebrani tomu pouzit signed char.This function returns the character read as an unsigned char cast to an int or EOF on end of file or error.
Mne skor vadi pocitadlo ako signed a absencia koncov riadkov.
Vsetko su to ale v tomto pripade skor kozmeticke veci...
0
Re: Potrebujem pomoc v C
Je mi jasné, že už to nie je aktuálne ale ak by sa na to pozeral nejaký nováčik v budúcnosti tak pridám ešte jednu trochu expresívnejšiu variantu:
Kód: Vybrať všetko
#include <stdio.h>
#include <stdint.h>
#include <stdbool.h>
int main()
{
bool userEnteredX = false;
char userInput = '\0';
size_t numOfA = 0;
// ask user for an input while X is not found
printf("Zadaj znak alebo 'X' pre ukoncenie:\n");
while (false == userEnteredX)
{
userInput = getchar();
// increment 'A' counter if 'A' has been entered
if ('A' == userInput)
{
numOfA++;
}
// has 'X' been entered?
if ('X' == userInput)
{
userEnteredX = true;
}
}
printf("'A' si zadal %u krat\n", numOfA);
return 0;
}
0
They say the world is turning
But we are stuck upside down...
But we are stuck upside down...
-
- Podobné témy
- Odpovedí
- Zobrazení
- Posledný príspevok
-
- 37 Odpovedí
- 2930 Zobrazení
-
Posledný príspevok od používateľa maco248
-
- 9 Odpovedí
- 1262 Zobrazení
-
Posledný príspevok od používateľa jezevec
-
- 0 Odpovedí
- 1323 Zobrazení
-
Posledný príspevok od používateľa marekbe
-
- 12 Odpovedí
- 1757 Zobrazení
-
Posledný príspevok od používateľa Zaky
-
- 0 Odpovedí
- 1326 Zobrazení
-
Posledný príspevok od používateľa boro