Documente Academic
Documente Profesional
Documente Cultură
EVALUARE: GRILE, +
PB PE CALCULATOR
Scrieţi un program C/C++ care citeşte de la tastatură un şir de cel mult 50 de caractere (litere
mici şi mari ale alfabetului englez, cifre şi spaţii) şi afişează pe ecran litera mică cel mai des
întâlnită în şirul citit. Dacă există mai multe litere mici cu număr maxim de apariţii, programul o
va afişa pe prima dintre ele în ordine alfabetică. Dacă şirul nu conţine litere mici, atunci pe
ecran se va afişa mesajul nu. Exemplu: dacă se citeşte şirul:
///V60 cu FRECVENTA
#include <iostream>
#include <string.h>
int main()
{
char s[51];
cin.getline(s,50);
int f[27]={0}, nn;
for(int i=0;i<strlen(s);i++)
if(s[i]>='a' && s[i]<='z')
f[s[i]-96]++;///frecventa literei din sir
int maxx=0;
for(int i=1;i<=26;i++)///determinam frecventa maxima
if(f[i]>maxx)
{
maxx=f[i];
nn=i;///retinem in nn pozitia primei litere din alfabet de frecventa maxima
}
if(maxx==0)
cout<<"nu";
else
cout<<(char)(nn+96);///afisam caracterul de cod asci stabilit
return 0;
}
V 60 FARA FRECVENTA
#include <iostream>
}
if (cnt==maxi && s[i]<=cmax)
{
cmax=s[i];
}
}
cout<<char(cmax);/// afisam litera cu numarul maxim de aparitii
return 0;
}
V60
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
char s[50],litera;
cin.get(s,49);
int maxy,nrap,ok;
maxy=0;
ok=0;
for(int i=0; i<strlen(s); i++)
{
nrap=0;
for(int j=i+1; j<strlen(s); j++)
{
///daca este litera
if(s[i]>='a' && s[i]<='z')
{
if(s[i]==s[j])///daca este aceeasi litera
{
///crestem numarul de aparitii
ok=1;///avem litere mici
nrap++;
}
}
if(nrap>maxy)
{
///maxim primeste nr. de aparitii
maxy=nrap;
litera=s[i];
}
else if(nrap==maxy)
{
if(litera<s[i])
litera=s[i];
///vedem care litera este prima in alfabet
}
}
}
if(ok==1)
cout<<litera;
else
cout<<"nu";
///daca nu avem litere mici
return 0;
}
V62
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
char s[256];
cin.get(s,255);
int ok;
for(int i=0; i<strlen(s); i++)
{
if(s[i]!=' ' && 'a'<=s[i] && s[i]<='z') ///testam daca e litera minuscula
///comparam litera cu toate literele precedente
{
ok=1;
for(int j=0; j<i; j++)
if(s[i]==s[j])
ok=0;
if(ok==1)
cout<<s[i]<<" ";
}
}
return 0;
}
Scrieţi un program C/C++ care citeşte de la tastatură un text format din cel mult 200 de litere
ale alfabetului englez, în care cuvintele sunt separate printr-un singur spaţiu şi afişează pe
ecran numărul de cuvinte din textul citit, care au prima respectiv ultima literă vocală. În cazul în
care în text nu există un astfel de cuvânt, se va afişa pe ecran mesajul NU EXISTA. Se consideră
vocală orice literă din mulţimea {a,A,e,E,i,I,o,O,u,U}. 5. Exemplu: dacă textul introdus este:
Eratostene a sugerat ca anii bisecti se repeta la fiecare patru ani pe ecran se va afişa: 4