Sunteți pe pagina 1din 3

14. Se citeşte un text într-o variabilă de tip string, in care cuvintele se despart prin spaţii.

Se cere:

a) Să se afişeze cuvintele în ordine alfabetică;

b) Să se numere cuvintele cu minim 4 vocale distincte

#include <iostream>

#include <conio.h>

#include <string.h>

int main()

char text[100], * p, separator[] = " ", cuv[10][10], cuvant[10], aux[10]; int nrv = 0, voc, nr, k, i, j;

std::cout << "Dati sirul:";

std::cin.get(text, 100);

strcpy(p, text);

p = strtok(p, separator);

while (p)

strcpy(cuv[++nr], p);

p = strtok(NULL, separator);

for (i = 1; i < nr; i++)

for (j = i + 1; j <= nr; j++)

if (strcmp(cuv[i], cuv[j]) > 0)

strcpy(aux, cuv[i]);

strcpy(cuv[i], cuv[j]);

strcpy(cuv[j], aux);

for (i = 1; i <= nr; i++)


std::cout << cuv[i];

for (i = 1; i <= nr; i++)

voc = 0;

strcpy(cuvant, cuv[i]);

k = strlen(cuvant);

for (j = 0; j < k; j++)

switch (cuvant[j])

case 'a':

case 'e':

case 'i':

case 'o':

case 'u': {voc++; break; }

if (voc >= 4) nrv++;

std::cout << nrv;

getch();

În fişierul date.in sunt scrise mai multe cuvinte câte unul pe fiecare linie din fişier. Se cere:

a) Să se determine numărul de cuvinte din fişier;

b) Să se afişeze cuvintele care încep cu o vocală.

#include<iostream>

#include<fstream>

#include<string.h>
#include<conio.h>

int main()

char a[10]; int k, i, nr=0;

void clrscr();

fstream f("date.in",ios::in);

while(f.getline(a,10))

{if(a[0]=='a'||a[0]=='e'||a[0]=='i'||a[0]=='o'||a[0]=='u') cout<<a<<endl; nr++;

cout<<nr;

S-ar putea să vă placă și