Limbaje de programare: Laborator 8

La intrarea în laborator trebuie predată tema 8.

Citirea după un format dat

  1. Scrieți un program care citește de la intrare un text care conține doar numere întregi, și afișează suma numerelor de pe fiecare linie.
    Atenție, citirea cu %d sare peste toate spațiile albe dinainte, inclusiv caracterul de linie nouă. De aceea, înainte de a citi un număr vor trebui consumate toate spațiile albe dinaintea lui, fără însă a trece la linie nouă.
  2. Scrieți un program care afișează fragmentele dintr-un text care corespund cu anumite tipare: De regulă prelucrarea necesită două etape: o primă filtrare citind cu scanf doar anumite tipare, și apoi verificarea unor condiții pentru șirul citit.
  3. Scrieti un program care citește de la intrare o listă de timpi obținuți la o alergare (presupuși în ordine crescătoare), în forma h:mm:ss, câte unul pe linie. Programul va afișa pe câte o linie întâi primul timp, iar pentru ceilalți timpi, diferența față de timpul anterior și față de primul timp.
    De exemplu, pentru intrarea
    3:51:38
    4:05:47
    4:11:28
    
    programul va afișa
    3:51:38
    +0:14:09  0:14:09
    +0:05:41  0:19:50
    
  4. Scrieți un program care citește de la intrare și prelucrează un tabel în format CSV (comma-separated values), în care fiecare linie de text conține date separate prin virgule.
    Fiecare linie conține un nume de student, si apoi trei note (reali între 1 și 10) dintre care unele pot lipsi. De exemplu:
    Andrei Ionascovici,8, 7.5, 5
    Vlad Prisacescu,5  ,,6.5
    
    Eventualele spații de ambele părți ale virgulelor nu contează.
    Citiți textul și afișați fiecare student cu media lui. Dacă una din note e sub 5 sau lipsește, afișați "nepromovat".
    Atenție la citire când ultima notă de pe o linie lipsește
  5. Scrieți un program care citește de la intrare un text în format HTML cu tabele, și numără câte rânduri conține fiecare tabel.
    Un tabel începe cu <table și se încheie cu </table iar un rând începe cu <tr (presupunem că formatarea e corectă).
    Indicație: putem parcurge textul succesiv până la caracterul < și verifica dacă după el urmează table, /table, tr sau altceva.

Marius Minea
Last modified: Tue Nov 13 11:00:00 EET 2012