Differences

This shows you the differences between two versions of the page.

Link to this comparison view

programare:teme_2023:tema2_2023_cbd [2023/12/23 19:01]
alin_bogdan.popa
programare:teme_2023:tema2_2023_cbd [2024/01/15 21:49] (current)
alin_bogdan.popa [Changelog:]
Line 1: Line 1:
 ====== Tema 2 - Unix Timestamps ====== ====== Tema 2 - Unix Timestamps ======
  
 +==== Changelog: ====
 +  * 23 Dec 2023 20:35: update schelet de cod typos
 +  * 13 Ian 2023 23:55: adaugat teste pt taskurile 1-8 {{:​programare:​teme_2023:​t2_tests_1-to-8.zip|}}
 +  * 14 Ian 2023 00:55: corectat testele pt taskul 8
 +  * 15 Ian 2024 02:56: adaugat checker {{:​programare:​teme_2023:​t2_checker.zip|}} (thanks Cosmin & Mihnea & Teo pentru debugging la checker noaptea ca hotii)
 +  * 15 Ian 2024 19:57: update checker + reparat teste task 9
 +  * 15 Ian 2024 21:49: update teste sa fie timezone-urile de max 4 caractere
 ==== Responsabili:​ ==== ==== Responsabili:​ ====
   * Alin Popa   * Alin Popa
  
 Termen de predare: Termen de predare:
-  * Deadline soft: **TODO** +  * Deadline soft: **Joi 11 Ianuarie 2024, 23:55** 
-  * Deadline hard: **TODO**+  * Deadline hard: **Duminica 14 Ianuarie 2024, 23:55**
  
 Pentru fiecare zi (24 de ore) de întârziere,​ se vor scădea 10 puncte din nota acordată, până la atingerea deadline-ului hard. Pentru fiecare zi (24 de ore) de întârziere,​ se vor scădea 10 puncte din nota acordată, până la atingerea deadline-ului hard.
  
 ====Întrebări==== ====Întrebări====
-Dacă aveți nelămuriri,​ puteți să ne contactați pe forumul dedicat [[https://​curs.upb.ro/​2023/​mod/​forum/​view.php?​id=80135|temei de casă nr. 1]] sau pe [[https://​teams.microsoft.com/​l/​channel/​19%3a0a648c85e9ed4a2bbb343b5792443551%40thread.tacv2/​Tema%25200?​groupId=1f7c7112-0ea2-4f0b-9131-d5c29590d62c&​tenantId=2d8cc8ba-8dda-4334-9e5c-fac2092e9bac|canalul Temei 1]].\\+Dacă aveți nelămuriri,​ puteți să ne contactați pe forumul dedicat [[https://​curs.upb.ro/​2023/​mod/​forum/​view.php?​id=96053|temei de casă nr. 2]] sau pe [[https://​teams.microsoft.com/​l/​channel/​19%3A894fd875001546b28dec5f997c2097b5%40thread.tacv2/​Tema%202?​groupId=1f7c7112-0ea2-4f0b-9131-d5c29590d62c&​tenantId=2d8cc8ba-8dda-4334-9e5c-fac2092e9bac|canalul Temei 2]].\\
 Nu se acceptă întrebări în ultimele 24 de ore înainte de deadline. Nu se acceptă întrebări în ultimele 24 de ore înainte de deadline.
  
Line 38: Line 45:
 ===== Schelet de cod ===== ===== Schelet de cod =====
  
-Pentru această temă trebuie să porniți de la scheletul de cod de aici: {{:​programare:​teme_2023:​tema1_schelet.zip|}}+Pentru această temă trebuie să porniți de la scheletul de cod de aici: {{:​programare:​teme_2023:​tema2_schelet.zip|}}.
- +
-În scheletul de cod veți găsi următoarele:​ +
-  * Un Makefile cu reguli care compilează și rulează ''​main.c''​ și respectiv ''​interactive.c''​ +
-  * Un fișier ''​imageprocessing.c''​ în care voi va trebui să completați implementările funcțiilor pentru taskurile 1-6 +
-  * Un fișier ''​interactive.c''​ în care voi va trebui să completați implementarea programului pentru taskul 7 +
-  * Un fișier ''​main.c''​ care **nu trebuie trimis în arhiva cu tema**, scopul lui este să vă ofere un exemplu pentru rularea funcțiilor din celelalte fișiere (ca de exemplu, funcțiile ''​read_from_bmp''​ și ''​write_to_bmp''​). +
-  * Un fișier ''​bmp.c''​ ce conține implementările funcțiilor ''​read_from_bmp''​ și ''​write_to_bmp''​ ce trebuie folosite în temă.+
  
 <note important>​ <note important>​
 Atenție! **Nu** aveți voie să: Atenție! **Nu** aveți voie să:
-  * redenumiți fișierele temei (imageprocessing.c și interactive.c) +  * redenumiți fișierele temei (timelib.c, bitpacking.c,​ planner.c) 
-  * schimbați numărul, tipul, sau ordinea parametrilor funcțiilor din imageprocessing.c și imageprocessing.h+  * schimbați numărul, tipul, sau ordinea parametrilor funcțiilor din timelib.c și timelib.h
   * schimbați sau redenumiți comenzile sau regulile din Makefile   * schimbați sau redenumiți comenzile sau regulile din Makefile
 </​note>​ </​note>​
Line 272: Line 272:
   - dacă cele două valori coincid, se consideră că acest unsigned int de date a fost recepționat corect de pe rețea   - dacă cele două valori coincid, se consideră că acest unsigned int de date a fost recepționat corect de pe rețea
   - dacă cele două valori nu coincid, se consideră că acest unsigned int a fost corrupted, prin urmare toate datele ai căror biți fac parte din acest unsigned int vor fi ignorate și nu vor fi afișate în outputul programului.   - dacă cele două valori nu coincid, se consideră că acest unsigned int a fost corrupted, prin urmare toate datele ai căror biți fac parte din acest unsigned int vor fi ignorate și nu vor fi afișate în outputul programului.
 +
 +{{:​programare:​teme_2023:​pclp-complex-network-packing.png?​800}}
  
 Modificați programul de la task 7 (în fișierul ''​bitpacking.c''​) astfel încât, atunci când numărul taskului citit este 8, să ruleze cu următoarele modificări:​ Modificați programul de la task 7 (în fișierul ''​bitpacking.c''​) astfel încât, atunci când numărul taskului citit este 8, să ruleze cu următoarele modificări:​
Line 389: Line 391:
  
 Utilitarul se va rula folosind urmatoarea comanda: Utilitarul se va rula folosind urmatoarea comanda:
-<​code>​ valgrind --tool=memcheck --leak-check=full --error-exitcode=1 ./interactive ​</​code>​+<​code>​ valgrind --tool=memcheck --leak-check=full --error-exitcode=1 ./planner ​</​code>​
  
 ==== Coding Style ==== ==== Coding Style ====
  
-La fel ca la tema 0, există o depunctare de până la -20p pentru coding style. Checkerul verifică coding style-ul în mod automat.+La fel ca la temele precedente, există o depunctare de până la -20p pentru coding style. Checkerul verifică coding style-ul în mod automat.
 ==== Validare locală temă ==== ==== Validare locală temă ====
  
-Pentru a vă ajuta în dezvoltarea temei, arhiva ​{{:​programare:​teme_2023:​tema1_checker.zip|}} ​conține o copie a checkerului. +**Checker: ​{{:​programare:​teme_2023:​t2_checker.zip|}}**
- +
-Pentru a instala dependențele necesare verificării pentru ​**coding style** utilizați scriptul **install-linters.sh**:​ +
-<​code>​ +
-./​install-linters.sh +
-</​code>​ +
- +
-Pentru a rula checkerul local, copiați toate fișierele checkerului în același director în care aveți codul sursă, apoi folosiți comanda: +
-<​code>​ +
-./​check.sh +
-</​code>​ +
- +
-<note important>​ +
-Checkerul trebuie rulat pe Linux! Trebuie să aveți instalat utilitarul Valgrind (care nu există pe Windows). +
-</​note>​+
 ==== Trimitere temă ==== ==== Trimitere temă ====
  
-Tema va fi trimisă folosind Moodle, cursul **Programarea Calculatoarelor (CB & CD)**, activitatea "​Tema ​1".+Tema va fi trimisă folosind Moodle, cursul **Programarea Calculatoarelor (CB & CD)**, activitatea "​Tema ​2".
  
 <note warning> <note warning>
-Se va posta un anunț pe forum când se va deschide upload-ul.+Se va posta un anunț pe forum si Teams când se va deschide upload-ul.
 </​note>​ </​note>​
  
Line 429: Line 417:
  
 Conținutul arhivei trebuie să fie următorul: Conținutul arhivei trebuie să fie următorul:
- - Fișierele **imageprocessing.c**, **imageprocessing.h** + - Fișierele **timelib.c**, **timelib.h** 
- - Fișierele ​**bmp.c**, **bmp.h** + - Fișierul **bitpacking.c** 
- - Fișierul **interactive.c**+ - Fișierul **planner.c**
  - Fișierul **Makefile**  - Fișierul **Makefile**
  - Un fișier [[https://​en.wikipedia.org/​wiki/​README|README]] în care descrieți rezolvarea temei.  - Un fișier [[https://​en.wikipedia.org/​wiki/​README|README]] în care descrieți rezolvarea temei.
programare/teme_2023/tema2_2023_cbd.1703350860.txt.gz · Last modified: 2023/12/23 19:01 by alin_bogdan.popa
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0