#3243
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
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
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.
Problemă de interviu
#4240
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
.
#4268
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:
2
dacă s
este format numai din cifre binare4
dacă s
este format numai din cifre mai mici decât 4
8
dacă s
este format numai din cifre mai mici decât 8
10
dacă s
este format numai din cifre zecimale16
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}
-1
dacă s
mai conține și alte caractere#4271
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
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.
#3798
Scrieți funcția care are antetul:
int NrMinMaxAp(vector<int> &a)
Funcția va returna numărul care apare de cele mai multe ori în a
. Dacă există mai multe numere care apar de număr maxim de ori, se va returna minimul dintre ele.
Folclorul informatic
#4706
Scrieţi definiția completă a subprogramului C++ Peak
cu antetul:
void Peak(int a[], int n, int &isPeak, int &poz)
unde a
este un tablou unidimensional cu maximum 1000
de numere întregi, n
, numărul efectiv de elemente ale tabloului. Dacă vectorul a
memorează un șir peak, atunci isPeak
va fi egal cu 1
, iar poz
va reține poziția numărului maxim din a
. Dacă vectorul a
nu este un șir peak, atunci isPeak
va fi egal cu 0
, iar poz
va reține valoarea 0
.