Informatică, întrebare adresată de Andreea9754, 8 ani în urmă

Scrieți un program care citește de la tastatură un şir de cuvinte separate prin spații și realizează următoarele:
- afișează numărul de cuvinte din șir care conțin mai mult de 4 caractere
- afișează numărul de cuvinte din șir care conțin vocale
- afișează cuvintele din șir ordonate alfabetic

Răspunsuri la întrebare

Răspuns de crow9920
1

#include <iostream>

#include <cstring>

using namespace std;

int main() {

char str[10000];

cin.getline(str, 1000);

char *p = strtok(str, " ");

int cnt_len = 0, cnt_vocale = 0;

char cuvinte[100][100], vocale[10] = "aeiou";

int nr_cuv = 0;

while (p) {

strcpy(cuvinte[nr_cuv], p);

if (strlen(p) > 4)

cnt_len++;

int contine_vocale = 0;

for (int j = 0; j < 5; j++)

if (strchr(cuvinte[nr_cuv], vocale[j]) != NULL)

contine_vocale = 1;

if (contine_vocale)

cnt_vocale++;

p = strtok(NULL, " ");

nr_cuv++;

}

cout << "Cuvinte cu mai mult de 4 caractere: " << cnt_len << "\n";

cout << "Cuvinte care contin vocale: " << cnt_vocale << "\n";

for (int i = 0; i < nr_cuv - 1; i++) {

for (int j = i + 1; j < nr_cuv; j++) {

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

swap(cuvinte[i], cuvinte[j]);

}

}

cout << "Cuvintele ordonate alfabetic:\n";

for (int i = 0; i < nr_cuv; i++)

cout << cuvinte[i] << "\n";

return 0;

}

Alte întrebări interesante