Rezolvare completă PbInfo #1423 VocaleVector

Cerința

Se citesc de la tastatura n elemente ale unui vector alcatuit exclusiv din litere mici ale alfabetului englez. Rearanjati vectorul astfel incat vocalele sa fie plasate pe primele pozitii. Vocalele (si consoanele) isi vor pastra ordinea initiala, de la stanga la dreapta.

Date de intrare

Programul citește de la tastatură numărul n, iar apoi n litere mici, separate prin spații.

Date de ieșire

Programul va afișa pe ecran componentele vectorului rearanjat, separate prin spatii.

Restricții și precizări

  • 1 ≤ n ≤ 4000
  • Codurile ASCII ale vocalelor sunt:
    a: 97
    e: 101
    i: 105
    o: 111
    u: 117

Exemplu

Intrare

12
b a e d x y p i m f i c

Ieșire

a e i i b d x y p m f c

Exemplu 2:

Intrare

5
h t a k e

Iesire

a e h t k

Explicație

Ex. 1: Se iau toate vocalele (a, e, i, i) si se plaseaza pe primele locuri, in ordinea initiala, iar consoanele ramase (b, d, x, y, p, m, f, c) se vor aseza dupa ele, tot in ordinea initiala.

Ex. 2: Se iau toate vocalele (a, e) si se plaseaza pe primele locuri, in ordinea initiala, iar consoanele ramase (h, t, k) se vor aseza dupa ele, tot in ordinea initiala.

Cum e corect?

cout < "As la info"; cout << "As la info"; cout >> "As la info";

Felicitări! Poți mai mult?

Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.

Greșit, dar nu-i bai!

Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.

Rezolvare

Iată rezolvarea de 100 de puncte pentru problema VocaleVector:

#include <iostream>

using namespace std;

char vocale[10001];
char consoane[10001];

int main()
{
    int n;
    char c;
    int contorVocale=0;
    int contorConsoane=0;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>c;
        if(c==97 || c==101 || c==105 || c==111 || c==117) //Caracterul citit este o vocala
        {
            vocale[contorVocale]=c;
            contorVocale++;
        }
        else //Caracterul citit este o consoana
        {
            consoane[contorConsoane]=c;
            contorConsoane++;
        }
    }

    for(int i=0;i<=contorVocale-1;i++)
    {
        cout<<vocale[i]<<" ";
    }

    for(int i=0;i<=contorConsoane-1;i++)
    {
        cout<<consoane[i]<<" ";
    }
}

Atenție

Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa Adresa de email.

Rezolvarea problemei #1423 VocaleVector

Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #1423 VocaleVector de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.

Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!