Sunteți pe pagina 1din 1

#include <iostream>

#include <cstring>
using namespace std;
int main()
{
char s[100];
cout << "Dati sirul : ";
cin.get(s, 100);
for (unsigned int i = 0; i < strlen(s); ++i) // parcurgem sirul de la stanga
la dreapta
{
if (s[i] >= 'A' && s[i] <= 'Z') // daca caracterul curent este majuscula
{
cout << s[i] << "; "; // il afisam
}
}
cout << endl;
for (unsigned int i = strlen(s)-1; i >= 0; --i) // parcurgem sirul de la dre
apta la stanga
{
if (strchr("bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ", s[i]) != 0) //
daca caracterul curent este consoana**
{
cout << s[i]; // il afisam
break; // si ne oprim fortat, pentru ca avem nevoie doar de ultima c
onsoana! Se putea si mai elegant dar na, e ok :D
}
}
return 0;
/*
strchr("bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ", s[i]) :: asta e smecher
ia: cautam caracterul s[i] in sirul
"bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ" (consoanele majuscule si minusc
ule)
deci practic verificam daca caracterul s[i] este consoana(majuscula sau minu
scula). Daca este,
functia va returna o valoare pozitiva(un pointer catre acel caracter in cadr
ul sirului "bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ"),
in caz contrar, va returna 0.
Mai scurt si ceva mai rapid, puteam verifica daca e litera SI nu e vocala.
*/
}
Succes!

S-ar putea să vă placă și