TEMA Scrieţi un program C++ care citeşte de la tastatură un text de maxim 100 de caractere, litere mici ale alfabetului englez, în care cuvintele sunt separate prin unul sau mai mulţi separatori (.,: ) punct, virgulă, spațiu, două puncte. Să se afişeze pe câte o linie cuvintele care conţin cel puţin 2 vocale alăturate și au lungimea impară. Dacă nu există astfel de cuvinte se va afișa mesajul „Nu exista”. Exemplu: pentru șirul „in trei feluri se pastreaza un prieten: a-l onora in prezenta, a-l lauda in absenta si a-l ajuta la nevoie.” se va afișa: pastreaza prieten lauda
Răspunsuri la întrebare
Răspuns de
0
Program C++ :
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <string.h>
using namespace std;
int main() {
char txt[100];
char delim[] = ".,: ";
char vocale[] = "aeiouAEIOU";
bool gasit = 0;
cin.get(txt, 100);
char* cuv = strtok(txt, delim);
while (cuv) {
int lungime = strlen(cuv);
if (lungime % 2) {
for (int i = 0; i < lungime - 1; i++) {
if (strchr(vocale, cuv[i]) && strchr(vocale, cuv[i+1])) {
cout << cuv << "\n";
gasit = 1;
break;
}
}
}
cuv = strtok(NULL, delim);
}
if (!gasit)
cout << "Nu exista";
}
Anexe:
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Chimie,
8 ani în urmă
Engleza,
8 ani în urmă
Matematică,
9 ani în urmă
Informatică,
9 ani în urmă