#2304
Scrieţi un program care citeşte de la tastatură, în această ordine, un număr natural n, apoi n cuvinte, separate prin Enter, urmate de un număr natural k. Numerele citite sunt din intervalul [1,20], iar fiecare cuvânt este format din cel mult 20 de caractere, numai litere mici ale alfabetului englez. Cel puţin unul dintre cuvinte are k litere.
Programul construiește în memorie, apoi afișează pe ecran, un șir care să cuprindă cuvintele citite, separate prin câte un spațiu, astfel încât toate cele care au k litere să ocupe primele poziţii, iar celelalte să se regăsească în continuarea acestora, într-o ordine oarecare.
Subiect Bacalaureat 2016, sesiunea specială
| Problema | Cuvinte7 | Operații I/O |
tastatură/ecran
|
|---|---|---|---|
| Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #64615164 | Utilizator | |
| Fișier | cuvinte7.cpp | Dimensiune | 425 B |
| Data încărcării | 18 Mai 2026, 18:27 | Scor/rezultat | Eroare de compilare |
cuvinte7.cpp: In function ‘int main()’: cuvinte7.cpp:13:12: warning: init-statement in selection statements only available with ‘-std=c++17’ or ‘-std=gnu++17’ [-Wc++17-extensions] 13 | if(strlen(m[i]==k) cout<<m[i]<<" "; | ^~~~~~ cuvinte7.cpp:13:23: error: ISO C++ forbids comparison between pointer and integer [-fpermissive] 13 | if(strlen(m[i]==k) cout<<m[i]<<" "; | ~~~~^~~ cuvinte7.cpp:13:23: error: cannot convert ‘bool’ to ‘const char*’ 13 | if(strlen(m[i]==k) cout<<m[i]<<" "; | ~~~~^~~ | | | bool In file included from /usr/include/c++/13/cstring:42, from cuvinte7.cpp:2: /usr/include/string.h:407:35: note: initializing argument 1 of ‘size_t strlen(const char*)’ 407 | extern size_t strlen (const char *__s) | ~~~~~~~~~~~~^~~ cuvinte7.cpp:15:12: error: expected primary-expression before ‘for’ 15 | for(int i=1;i<=n;i++) | ^~~ cuvinte7.cpp:13:44: error: expected ‘)’ before ‘for’ 13 | if(strlen(m[i]==k) cout<<m[i]<<" "; | ~ ^ | ) 14 | 15 | for(int i=1;i<=n;i++) | ~~~ cuvinte7.cpp:13:9: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation] 13 | if(strlen(m[i]==k) cout<<m[i]<<" "; | ^~ cuvinte7.cpp:15:24: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’ 15 | for(int i=1;i<=n;i++) | ^ cuvinte7.cpp:15:24: error: ‘i’ was not declared in this scope cuvinte7.cpp:6:10: warning: unused variable ‘s’ [-Wunused-variable] 6 | char s[22],m[22][22]; | ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Cuvinte7 face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.