Cursul de programare pentru performanță - clasa a 5-a, anul 2024 - 2025
-
Informații administrative
Prezentarea instructorilor -
Prezentarea cursului de programare pentru performanță
-
Despre conținutul cursului
-
Rezultate teme
-
Cursuri1. Algoritmi și scheme logice4 Subiecte|1 Evaluare
-
2. Operatori, structura liniară și alternativă și exerciții5 Subiecte|1 Evaluare
-
3. Structura repetitivă de tip WHILE-DO și exerciții5 Subiecte|1 Evaluare
-
4. Exerciții cu structura repetitivă WHILE-DO4 Subiecte|1 Evaluare
-
5. Recapitulare scheme logice4 Subiecte
-
6. Rezolvarea testelor de calificare, introducere în limbajul C, citire/scriere/atribuire7 Subiecte|1 Evaluare
-
7. Limbajul C: instrucțiunea if și instrucțiunea while5 Subiecte|1 Evaluare
-
8. Exerciții cu instrucțiunile if și while în limbajul C: palindrom, divizori, numere prime3 Subiecte|1 Evaluare
-
9. Descompunere în factori primi, algoritmul lui Euclid și interschimbare de variabile (swap)5 Subiecte|1 Evaluare
-
10. Fișiere, radical și exerciții6 Subiecte|1 Evaluare
-
11. Exerciții și recapitulare6 Subiecte|1 Evaluare
-
12. Secvențe și operații pe bază de secvențe6 Subiecte|1 Evaluare
-
13. Instrucțiunea de incrementare/decrementare și instrucțiunea for8 Subiecte|1 Evaluare
-
Înregistrare video lecție
-
Comentarii despre tema 12 de pe NerdArena
-
Rezolvarea temei 12
-
Exercițiu: elementul maxim într-o secvență
-
Instrucțiunea de incrementare / decrementare
-
Instrucțiunea for
-
Exercițiu: elementul maxim într-o secvență, utilizând instrucțiunea for
-
Tema 13 - cercul de informatică pentru performanță clasa a cincea - NerdArena
-
Înregistrare video lecție
-
14. Recapitulare4 Subiecte
-
15. Acomodare concurs (în sală)3 Subiecte
-
16. Discutare probleme4 Subiecte
-
17. Concurs (în sală)1 Subiect
-
18. Tehnici de depanare ale programelor C10 Subiecte
-
Înregistrare video lecție
-
Rezolvarea temei 16
-
Rezolvarea concursului din 03.12.2024
-
Despre warning-uri și erori de compilare
-
Diferențele de rezultat din CodeBlocks și NerdArena sau altă platformă de probleme
-
Înțelegerea mesajelor din evaluator
-
Identificare erorilor din codul unui program
-
Testarea unui program
-
Exerciții pe cod
-
Tema 18 - cercul de informatică pentru performanță clasa a cincea
-
Înregistrare video lecție
-
19. Exerciții cu secvențe3 Subiecte
-
20. Introducere vectori și vectori de frecvență6 Subiecte
-
21. Probleme cu vectori și vectori de frecvență4 Subiecte
-
22. Exerciții cu secvențe (partea 2)3 Subiecte
-
23. Probleme elementare cu vectori4 Subiecte
-
24. Vectori preinițializați și probleme cu manipularea timpului5 Subiecte
-
25. Concurs (în sală)1 Subiect
-
26. Concurs (în sală)1 Subiect
-
27. Concurs (în sală)2 Subiecte
-
28. Concurs (în sală)1 Subiect
-
29. Sfaturi pentru concursuri / olimpiadă2 Subiecte
-
30. Discuții probleme OJI 20251 Subiect
-
31. Discuții probleme OJI 2025 (2)1 Subiect
-
32. Rezolvare probleme1 Subiect
-
33. Rezolvare probleme (2)1 Subiect
-
34. Rezolvare probleme (3)1 Subiect
-
35. Rezolvare probleme (4)1 Subiect
-
36. Rezolvare probleme (5)1 Subiect
-
37. Rezolvare probleme (6)1 Subiect
-
38. Rezolvare probleme (7)1 Subiect
-
39. Rezolvare probleme (8)1 Subiect
-
40. Rezolvare probleme (9)1 Subiect
-
41. Rezolvare probleme (10)1 Subiect
-
41bis. Rezolvare probleme (11)1 Subiect
-
42. Dimineata - Rezolvare probleme1 Subiect
-
42. Seara - Rezolvare probleme1 Subiect
-
43. Rezolvare probleme (12)1 Subiect
-
44. Rezolvare probleme (13)1 Subiect
-
45. Rezolvare probleme (14)1 Subiect
-
46. Rezolvare probleme (15)1 Subiect
Rezolvarea temei 6
Exercițiul 1
Pentru următoarea problemă, scrieți programul în limbajul C și testați-l în aplicația CodeBlocks: să se calculeze suma numerelor de la 1 la n.
#include <stdio.h>
int main() {
int n;
scanf( "%d", &n );
printf( "Suma este %d", n * (n + 1) / 2 );
return 0;
}

Exercițiul 2
Alin vrea să construiască un zid între doi stâlpi verticali, aflați la distanța D unul de altul. El dispune de n cărămizi de lungime l și înălțime h pe care le așează orizontal, una după alta, ca în figură. Pe fiecare rând orizontal, Ionel așează câte cărămizi încap, lăsând eventual un gol la capătul din dreapta. În sus, el se oprește atunci când se termină cărămizile.
Scrieți o schemă logică care citește D, n, l și h și afișează înălțimea maximă a zidului construit.
În exemplul din figură: dacă D = 11, n = 8, l = 3 și h = 2 atunci înălțimea maximă a zidului va fi 6 (3 cărămizi fiecare de înălțime 2).

Rezolvare
Alin va așeza numărul maxim posibil de cărămizi pe fiecare rând orizontal. Acest număr este câtul împărțirii lui D (distanța dintre stâlpi) la l (lungimea unei cărămizi). Acest cât se calculează în mod natural cu operatorul împărțire întreagă, /.
Vom avea, deci, D/l cărămizi pe rând.
Câte rânduri va așeza Alin? Deoarece avem n cărămizi și D / l cărămizi pe orizontală, pentru a calcula numărul de cărămizi pe verticală vom împărți n la numărul de cărămizi pe orizontală, adică D / l.
n / ( D / l ) este numărul de cărămizi pe verticală, dacă n se împarte la D / L, altfel trebuie să adunăm unu, deoarece ultimul rând de cărămizi nu va fi complet.
Pentru a acoperi ambele cazuri vom împărți ( n + D / l – 1 ) la D / L. Acesta este numărul maxim de cărămizi pe verticală.
Pentru a afla înălțimea zidului vom înmulți acest număr cu h, înălțimea unei cărămizi. Iată o soluție posibilă, schema logică și programul C:
#include <stdio.h>
int main() {
int D, n, l, h;
scanf( "%d%d%d%d", &D, &n, &l, &h );
printf( "%d", (n + D/ l - 1) / (D / l) * h );
return 0;
}

Răspunsuri