# PBinfo #133 – numeprenume – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: andrei

## Enunț

Cerinţa
Scrieți un program care citește de la tastatură două șiruri formate fiecare din cel mult 20 de caractere. Primul șir reprezintă numele unei persoane, iar al doilea șir reprezintă prenumele aceleiași persoane. Atât numele, cât și prenumele sunt formate doar din litere ale alfabetului englez și fiecare conține cel puțin o consoană. 

Programul construiește în memorie și afișează pe ecran un al treilea șir de caractere, care va conține consoanele din prenumele citit dispuse în ordinea în care apar în prenume, urmate de exact un spațiu și de numele citit. 

Date de intrare
Programul citeşte de la tastatură cele două șiruri.

Date de ieşire
Programul afişează pe ecran șirul construit după regula precizată.

Exemplu:
Intrare

Popescu Vasile
Ieşire 

Vsl Popescu

## Cod sursă C++

```cpp
#include <iostream>
#include <string.h>
using namespace std;
int main() {
    char nume[45], prenume[45], temp[45];
    cin >> nume >> prenume;
    for (int i = strlen(prenume) - 1; i >= 0; --i)
        if (strchr("aeiouAEIOU" , prenume[i])) {
            strcpy(temp, prenume + i + 1);
            strcpy(prenume + i, temp);
        }
    strcat(prenume, " ");
    strcat(prenume, nume);
    cout << prenume;
    return 0;
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/133)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/133/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-133/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
