biblee Posted June 17, 2015 Report Posted June 17, 2015 Care ar fii conditia la aceasta problema?Se consider? un text cu cel mult 100 de caractere, în care cuvintele sunt formate numaidin litere mari ?i mici ale alfabetului englez ?i sunt separate prin câte un spa?iu. Textulreprezint? numele unei institu?ii sau al unei organiza?ii.Scrie?i un program C/C++ care cite?te de la tastatur? un text de tipul precizat ?i construie?teîn memorie, apoi afi?eaz? pe ecran, un ?ir de caractere ce reprezint? acronimulcorespunz?tor numelui citit. Acronimul este format din primul caracter al fiec?rui cuvânt alnumelui care începe cu majuscul?.Exemplu: dac? ?irul citit esteUniversitatea de Arte Plastice BUCURESTIse va ob?ine ?irulUAPB Quote
Active Members MrGrj Posted June 17, 2015 Active Members Report Posted June 17, 2015 Salutare. Uite:#include <iostream>#include <string>#include <cctype>#include <sstream>using namespace std;string acronym(string str) // creez functia necesara{ stringstream res; char prev = ' '; for (int i = 0; i < str.length(); i++) // parcurg stringul introdus in functia main { if( isspace(prev) && !isspace(str[i]) ) // cauta si vezi ce face 'isspace' { res << (char) toupper(str[i]); } prev = str[i]; } return res.str(); // }int main(){ string str; // aici retin stringul introdus char NumChar; char str_1; cout << "Baga stringul boss: " << endl; // afisez pe ecran mesajul din ghilimele getline(cin,str);// astept inputul din partea userului // aplic functia si afisez acronimele cout << acronym(str) << endl;}Pentru restul liniilor la care nu am pus comment-uri...vezi ce se intampla fara ele Quote