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

Cerinţa

Să se scrie un program care citește un cuvânt și îl afișează după interschimbarea primei vocale cu ultima consoană.
Date de intrare

Programul citeşte de la tastatură un şir de caractere, reprezentând un cuvânt.
Date de ieşire

Programul afişează pe ecran cuvântul obținut prin interschimbarea primei vocale cu ultima consoană.
Restricţii şi precizări

şirul de caractere citit va conţine cel mult 10 caractere, litere mari și mici ale alfabetului englez
se consideră vocale următoarele caractere: a e i o u A E I O U.
dacă cuvântul conține doar vocale sau doar consoane se va afișa IMPOSIBIL

Răspunsuri la întrebare

Răspuns de express
2
#include <iostream>
#include <cstring>
using namespace std;
char s[256],ch;
int n,i,p,u,k;
int main()
{
    cin>>s;
    n=strlen(s);
    for(i=0;i<n;i++)
       if((s[i]=='a')||(s[i]=='e')||(s[i]=='i')||(s[i]=='o')||(s[i]=='u')
        ||(s[i]=='A')||(s[i]=='E')||(s[i]=='I')||(s[i]=='O')||(s[i]=='U')) { p=i; break;}

    for(i=n-1;i>=0;i--)
        if(!((s[i]=='a')||(s[i]=='e')||(s[i]=='i')||(s[i]=='o')||(s[i]=='u')
        ||(s[i]=='A')||(s[i]=='E')||(s[i]=='I')||(s[i]=='O')||(s[i]=='U'))) { u=i; break;}
    if((p==0)||(u==0)) cout<<"IMPOSIBIL";
    else
    {
    ch=s[p];
    s[p]=s[u];
    s[u]=ch;
    cout<<s;
    }
   return 0;
}

Alte întrebări interesante