Lista de probleme 12

Filtrare

#4268 FBaza C++

Scrieți funcția cu următorul antet:

int FBaza(const char s[])

Parametrul s memorează un șir de caractere. Funcția trebuie să returneze:

  • valoarea 2 dacă s este format numai din cifre binare
  • valoarea 4 dacă s este format numai din cifre mai mici decât 4
  • valoarea 8 dacă s este format numai din cifre mai mici decât 8
  • valoarea 10 dacă s este format numai din cifre zecimale
  • valoarea 16 dacă s este format numai din cifre zecimale și litere din mulțimea {A, B, C, D, E, F} sau {a, b, c, d, e, f}
  • valoarea -1 dacă s mai conține și alte caractere

#4270 FConcat C++

Să se scrie o funcție care concatenează un șir de caracterele cu un alt șir.

#4271 Intercalate C++

Scrieți funcția cu următorul antet:

void Intercalate(char a[], char b[], char c[])

Funcția primește ca parametri trei șiruri de caractere a, b și c. Inițial c este vid și se vor depune în el caracterele din a și b astfel: întâi primul caracter din a, apoi primul caracter din b, apoi al doilea caracter din a, al doilea din b și procedeul continuă până când fie se termină caracterele din a, fie caracterele din b, fie ambele. Dacă au mai rămas caractere nedepuse din a sau din b, acestea se adaugă la final în c.

#4277 UpperLower C++

Scrieți funcția cu următorul antet:

void UpperLower(const char a[], char U[], char L[])

Funcția primește ca parametri trei șiruri de caractere a, U și L. Șirul U trebuie să memoreze caracterele din a, dar în care literele mici au fost convertite la majuscule, iar șirul L trebuie să memoreze caracterele din a, dar în care literele mari au fost convertite la litere mici.

#2666 Trim C++

Scrieți funcția Trim care primește ca parametru un șir de caractere s, elimină eventualele spații de la începutul și sfârșitul șirului și returnează tot prin intermediul lui s șirul de caractere rezultat.

#2997 prescurtat C++

Scrieți funcția cu următorul antet:

void Prescurtat(char s[])

Funcția primește ca parametru un text de cel mult 50 de caractere, alcătuit din cuvinte separate prin câte un spațiu și formate din litere mari ale alfabetului englez, urmate eventual de caracterul . (punct), dacă sunt scrise prescurtat. Textul reprezintă numele unei instituții de învățământ și doar cuvintele din mulțimea {COLEGIUL, LICEUL, NATIONAL, TEORETIC} pot fi prescurtate, eliminându-se ultimele lor litere. Funcția va returna tot prin intermediul parametrului s numele instituției scris fără prescurtări.

#3243 Path C++

Scrieți funcția cu următorul antet:

int Path(const char cale[], char d[101][101])

Parametrul cale memorează un șir de caractere format din litere mici și semnul \ și reprezintă o succesiune de foldere incluse unul în altul. Funcția trebuie să memoreze fiecare folder pe câte o linie a matricei d și să returneze numărul de foldere conținute în cale.

#3252 Alphanum C++

Scrieți funcția cu antetul:

void Alphanum(char s[], char cuv[][21], int &n, int num[], int &m)

Șirul s conține cuvinte formate din litere mici, numere formate cu cifre, iar cuvintele și numerele sunt separate prin unul sau mai multe spații. Să se memoreze cuvintele în vectorul cuv și numerele în num. Numărul de cuvinte va fi reținut în n, iar numărul de numere în m.

#3269 ReverseWords C++

Scrieți funcția având următorul antet:

void ReverseWords(char s[])

Funcția primește ca parametru un șir s format din cuvinte separate prin câte un spațiu. Cuvintele sunt formate doar din litere mici. Funcția va returna, tot prin intermediul parametrului s, cuvintele în ordine inversă, separate tot prin câte un spațiu.

#4240 NrSecv01 C++

Scrieți funcția cu următorul antet:

long long NrSecv01(const char s[])

Funcția primește ca parametru un șir format doar din 0 și 1 și returnează numărul se secvențe care conțin exact un caracter 1.