Mám spraviť program, kt. bude riešiť to, koľkokrát sa vo vete dane pismeno vyskytuje.
Snažil som sa ísť na to logicky, ale začal som ešte len s programovanim tak neviem, či dobre rozmyšlam.
1.Zadefinoval som si premenne a typ premennych
2.Zadefinoval som si veľkosť pola, neviem či syntax je spravna, tak sa pozrite.
3.Každe pismeno z abecedy som si nastavil na začinajucu hodnotu nula
4.Program vyzve uživatela na zadanie vety a vetu, resp.pismena uloži do pamäte.
5.Cez cyklus while som sa snažil dosiahnuť to, aby každe pole prešiel a keď sa dane pismeno, kt. prehladava nachadza v danom poli,
zapisal ho do pamate. A takto by sa cyklus opakoval stale dookola, dokedy neskotroluje všetky polia. Keď skontroluje všetky polia,
prejde na ďalši while cyklus a zase bude prehladavať polia, kolkokrat sa pismeno ktore je zadane v cykle nachadza vo vete.
6.Keď prebehnu všetky while cykli, program vypiše uživatelovi na monitor koľko krát sa ktore písmo vo vete nachadza.
Čo si myslite o logike, dava to zmysel? A ako to je so syntaxov, mám ju dobre napisanu?
Kód: Vybrať všetko
//Program zobrazi kolkokrat sa vo vete dane pismeno nachadza
//Pouzite hlavickz
#include <stdio.h>
#include <stdlib.h>
int main()
{
//Zadefinovany typ premennej pre kazde pismeno vo vete
int PismenoA, PismenoB, PismenoC, PismenoD, PismenoE, PismenoF, PismenoG, PismenoH, PismenoI, PismenoJ, PismenoK, PismenoL, PismenoM;
int PismenoN, PismenoO, PismenoP, PismenoR, PismenoS, PismenoT, PismenoU, PismenoV, PismenoW, PismenoX, PismenoY, PismenoZ;
//Zadefinovany typ premennej pre maximalny pocet jedneho pismena vo vete
int MaxA, MaxB, MaxC, MaxD, MaxE, MaxF, MaxG, MaxH, MaxI, MaxJ, MaxK, MaxL, MaxM;
int MaxN, MaxO, MaxP, MaxR, MaxS, MaxT, MaxU, MaxV, MaxW, MaxX, MaxY, MaxZ;
//Velkost pola
int pismena_pole[100];
//Inicialiyacia kazdeho pismena na nulu, aby program prehladaval pismena od zaciatku vety
PismenoA=0;
PismenoB=0;
PismenoC=0;
PismenoD=0;
PismenoE=0;
PismenoF=0;
PismenoG=0;
PismenoH=0;
PismenoI=0;
PismenoJ=0;
PismenoK=0;
PismenoL=0;
PismenoM=0;
PismenoN=0;
PismenoO=0;
PismenoP=0;
PismenoR=0;
PismenoS=0;
PismenoT=0;
PismenoU=0;
PismenoV=0;
PismenoW=0;
PismenoX=0;
PismenoY=0;
PismenoZ=0;
//Vyyve uzivatela na zadanie vety
printf("Zadajte vetu:\n");
//Upozorni uzivatela aby nepouzival diakritiku
printf("Pozn.:Vetu piste bez diakritiky\n");
//Medzera medzi riadkami
printf("\n");
//Vetu ulozi do pamati pod premennou "pismena_pole"
scanf("%d", &pismena_pole);
//Skontroluje kolkokrat sa pismeno A nachadza vo vete
While(PismenoA=0)
{
scanf("%d", &MaxA); //Ulozi do premennej "MaxA", kolkokrat sa pismeno A vo vete vyskytuje
++PismenoA; //Prehladava dalsie pismena
}
//Skontroluje kolkokrat sa pismeno B nachadza vo vete
While(PismenoB=0)
{
scanf("%d", &MaxB); //Ulozi do premennej "MaxB", kolkokrat sa pismeno B vo vete vyskytuje
++PismenoB; //Prehladava dalsie pismena
}
//Vypise uzivatelovi kolkokrat sa vo vete nachadza dane pismeno
printf("A: %d\n", &MaxA);
printf("B: %d\n", &MaxB);
getch(); //Program sa stopne a caka na dalsiu akciu od uzivatela
return 0;
}