Se citeste un text de la tastatura, cu maxim 500 de caractere. Sa se afiseze:
a) Cate semne de punctuatie sunt (?!.,:;-)
b) Cate cifre sunt in fraza?
c) De cate ori apare fiecare vocala in text?
Multumesc foarte mult!
Inregistrati-va pentru a beneficia de cunostintele comunitatii, a pune intrebari sau a a raspunde la intrebarilor celorlalti.
Suntem o comunitate care incurajeaza educatia si in care se intalnesc know-how-ul si experienta cu perspective inovative de abordare a problemelor.
Autentificati-va pentru a pune intrebari, a raspunde la intrebarilor celorlalti sau pentru a va conecta cu prietenii.
V-ati uitat parola ? Introduceti adresa de email si veti primi o noua parola.
Please briefly explain why you feel this question should be reported.
Va rugam explicate, pe scurt, de ce credeti ca aceasta intrebare trebuie raportata.
Motivul pentru care raportezi utilizatorul.
Ai macroinstructiuni care rezolva direct problema in fisierul antet <cctype>
Pentru a verifica daca un caracter este un semn de punctuatie ai ispunct(x)
unde x este un element oarecare din sir.
Pentru a verifica daca un caracter este o cifra, ai isdigit(x). Fiecare returneaza adevarat (1) daca un caracter este semn de punctuatie/cifra, sau o un alt numar, sau zero, daca nu este cifra/semn de punctuatie.
Declari un vector de int-uri in care incrementezi fiecare componenta care corespunde vocalei, in functie de indice.
Vocalele sunt a,e,i,o,u, deci vectorul va avea 5 componente. Atunci cand ai gasit vocala a, sa zicem, in sirul de caractere, pui v[1]++; adica elementul de pe pozitia 1 (la nivel conceptual, elementul care corespunde vocalei a), se incrementeaza. Analog si pentru celelalte vocale.
Multumesc frumos! Pana la urma mi-a iesit sau cel putin asa zice Code Block 🙂
#include<iostream>
#include<cstring>
using namespace std;
long nrp,nrc,nra,nre,nri,nro,nru,i;
char v[500],punctuatie[]=”?!.,:;-„,cifre[]=”0123456789”;
int main()
{
cin.get(v,500);
for(i=0;i<=strlen(v)-1;i++)
{
if(strchr(punctuatie,v)!=0)
nrp++;
if(strchr(cifre,v)!=0)
nrc++;
if(‘a’==v || v==’A’)
nra++;
if(‘e’==v || v==’E’)
nre++;
if(‘i’==v || v==’I’)
nri++;
if(‘o’==v || v==’O’)
nro++;
if(‘u’==v || v==’U’)
nru++;
}
cout<<„Avem in total „<<nrp<<„semne de punctuatie”<<endl;
cout<<„Avem in total „<<nrc<<„cifre”<<endl;
cout<<„a de”<<nra<<„ori”<<endl;
cout<<„e de”<<nre<<„ori”<<endl;
cout<<„i de”<<nri<<„ori”<<endl;
cout<<„o de”<<nro<<„ori”<<endl;
cout<<„u de”<<nru<<„ori”<<endl;
return 0;
}