fbpx

Problema #84 – InterschimbareLitere – Rezolvari PBInfo

de Mihai-Alexandru

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

Exemplu

Date de intrare

PrograM

Date de ieşire

PrMgrao
#include <bits/stdc++.h>
using namespace std;

int main()
{
    char ch[11];
    cin >> ch;
    int i = 0;
    int indicevoc=-1 , ok=0;
    int indicecons=-1;
    char cons=0 , voc=0;
    while(ch[i]!='\0')
    {
        if(ch[i]=='a' || ch[i]=='A' || ch[i]=='e' || ch[i]=='E' || ch[i]=='i' || ch[i]=='I' || ch[i]=='o' || ch[i]=='O' || ch[i]=='u' || ch[i]=='U')
        {
            if(ok==0)
                indicevoc=i , voc=ch[i] , ok++;
        }
        else
            indicecons=i , cons=ch[i];
        i++;
    }
    i=0;
    if(indicevoc!=-1 && indicecons!=-1)
    {
        while(ch[i]!='\0')
        {
            if(i==indicevoc)
                cout << cons;
            else if(i==indicecons)
                cout << voc;
            else
                cout << ch[i];
            i++;
        }
    }
    else
    cout << "IMPOSIBIL";
    return 0;    
}
Comentarii

S-ar putea sa iti placa