Informatică, întrebare adresată de Karina03, 9 ani în urmă

Cerinţa

Să se scrie un program care citește un text și inserează după fiecare vocală caracterul *.

Date de intrare

Programul citeşte de la tastatură un şir de caractere, reprezentând texul dat.

Date de ieşire

Programul afişează pe ecran textul obținut.

Restricţii şi precizărişirul de caractere citit va conţine cel mult 100 de caractere, litere mici ale alfabetului englez și spațiise consideră vocale următoarele caractere: a, e, i, o, u.dacă cuvântul nu conține vocale se va afișa doar mesajul FARA VOCALE

Răspunsuri la întrebare

Răspuns de Andreea69
6
#include <iostream>
#include <cstring>
using namespace std;
int main() {
    char v[101];
    int i;
    cin.getline(v,101);
    int n=strlen(v);
    if(strchr(v,'a') || strchr(v,'e') || strchr(v,'i') || strchr(v,'o') || strchr(v,'u')) {
         for(i=0; i<n; i++) {
                 cout<<v[i];
                 if(strchr("aeiou",v[i])!=0) cout<<"*";
          }
    }
    else cout<<"FARA VOCALE";
    return 0;
}

Karina03: verific sa vad daca e bine
Karina03: o doamne e biiiineeeee
Karina03: muuultumeeesc
Karina03: poti sa ma ajuti cu inca o problema daca stii?
Andreea69: spune, poate știu :D
Karina03: iti trimit mesaj
Karina03: nu merge sa iti trimit,trimite -mi tu te rog
feherdarius: In acest cod tu nu inserezi , ci afisezi..
Răspuns de express
5
#include <cstdio>
#include <cstring>
using namespace std;
int i;
char s[300],n;
bool ok;
int main ()
{
    gets(s+1);
    n=strlen(s+1);
    for(i=1;i<=n;i++)
       if(s[i]=='a'||s[i]=='e'||s[i]=='i'||s[i]=='o'||s[i]=='u') {ok=true;break;}
  if(ok)
   for(i=1;i<=n;i++)
   {
       if(s[i]=='a'||s[i]=='e'||s[i]=='i'||s[i]=='o'||s[i]=='u') printf("%c*",s[i]);
       else printf("%c",s[i]);

   }
   else printf("FARA VOCALE");
    return 0;
}

Alte întrebări interesante