This shows you the differences between two versions of the page.
|
programare:teme_2019:tema4_2019_cbd [2019/11/04 20:39] marius.vintila [Task 3 (5p)] |
programare:teme_2019:tema4_2019_cbd [2020/01/04 00:24] (current) marius.vintila [Task 1 (5p)] |
||
|---|---|---|---|
| Line 5: | Line 5: | ||
| * [[murarugeorgec@gmail.com|George Muraru]] | * [[murarugeorgec@gmail.com|George Muraru]] | ||
| - | * Data publicare: **5 Noiembrie 2019** | + | * Data publicare: **5 Noiembrie 2019, ora 22:20** |
| * Deadline: **6 Ianuarie 2020, ora 23:55** | * Deadline: **6 Ianuarie 2020, ora 23:55** | ||
| + | |||
| + | ==Depunctări== | ||
| + | Deadline-ul hard coincide cu cel soft. \\ | ||
| + | În consecință, [[http://ocw.cs.pub.ro/courses/programare/regulament-cb-cd#temele_de_casa|deadline-ul hard]] este **06.01.2020, ora 23:55**. | ||
| + | |||
| + | ==Întrebări== | ||
| + | Dacă aveți nelămuriri, puteți să ne contactați pe forumul dedicat [[https://acs.curs.pub.ro/2019/mod/forum/view.php?id=6890|temei de casă nr. 4]].\\ | ||
| + | La orice întrebare vom răspunde în maxim 24 de ore.\\ | ||
| + | Nu se acceptă întrebări în ultimele 24 de ore înainte de deadline. | ||
| + | |||
| + | ==Updates== | ||
| + | * 15.12.2019: Update teste | ||
| + | * 3.1.2020: Update teste v2 | ||
| ====== Obiective ====== | ====== Obiective ====== | ||
| * să se respecte formate stricte de intrare/ieșire | * să se respecte formate stricte de intrare/ieșire | ||
| * să se însușească cunoștințele necesare pentru examen | * să se însușească cunoștințele necesare pentru examen | ||
| - | * sa se înțeleagă si sa se utilizeze operații cu vectori de referințe | + | * sa se înțeleagă si sa se utilizeze operații cu array-uri de pointeri |
| * sa se inteleaga si sa se utilizeze scrierea si citirea din fisiere binare | * sa se inteleaga si sa se utilizeze scrierea si citirea din fisiere binare | ||
| ====== Introducere ====== | ====== Introducere ====== | ||
| Line 20: | Line 33: | ||
| ===== Încălzire ===== | ===== Încălzire ===== | ||
| ==== Task 1 (5p) ==== | ==== Task 1 (5p) ==== | ||
| - | Se dă un vector cu n elemente numere întregi. Se cere întoarcerea un nou vector, alocat dinamic, care să aibă pe poziția i produsul tuturor elementelor din vectorul primit, cu excepția elementului de pe poziția i. | + | Se dă un vector cu n elemente numere întregi. Se cere întoarcerea unui nou vector, alocat dinamic, care să aibă pe poziția i produsul tuturor elementelor din vectorul primit, cu excepția elementului de pe poziția i. |
| <note>Veți completa funcția arrayProduct din fișierul project.c</note> | <note>Veți completa funcția arrayProduct din fișierul project.c</note> | ||
| Exemplu: | Exemplu: | ||
| Line 26: | Line 39: | ||
| Input: | Input: | ||
| <code> | <code> | ||
| + | 4 | ||
| 1 2 3 4 | 1 2 3 4 | ||
| </code> | </code> | ||
| Line 39: | Line 53: | ||
| Input: | Input: | ||
| <code> | <code> | ||
| + | 3 | ||
| 1 2 3 | 1 2 3 | ||
| 4 5 6 | 4 5 6 | ||
| Line 50: | Line 65: | ||
| </code> | </code> | ||
| ==== Task 3 (5p) ==== | ==== Task 3 (5p) ==== | ||
| - | Se dă o matrice având dimensiunile n și m, cu elemente întregi și k query-uri de forma <x1, y1, x2, y2>, unde x1, y1, x2, y2 sunt numere întregi ce reprezintă coordonate ale matricei. Se cere calcularea sumei elementelor dintre cele două coordonate pentru fiecare query și întoarcerea lor într-un nou vector alocat dinamic. | + | Se dă o matrice având dimensiunile n și m, cu elemente întregi și k query-uri de forma <x1, y1, x2, y2>, unde x1, y1, x2, y2 sunt numere întregi ce reprezintă coordonate ale matricei. Se cere calcularea sumei elementelor din submatricea definita de cele 2 coordonate. |
| <note>Veți completa funcția subMatrixesSums din fișierul project.c. | <note>Veți completa funcția subMatrixesSums din fișierul project.c. | ||
| Line 64: | Line 79: | ||
| 3 | 3 | ||
| 1 2 2 2 | 1 2 2 2 | ||
| - | 2 2 3 2 | + | 2 2 2 3 |
| 0 0 2 2 | 0 0 2 2 | ||
| </code> | </code> | ||
| Output: | Output: | ||
| <code> | <code> | ||
| - | 13 33 54 | + | 18 23 54 |
| </code> | </code> | ||
| ===== Rezolvarea Subiectului ===== | ===== Rezolvarea Subiectului ===== | ||