#564 · Subiectul II · Programare
Momente ale zilei în format hh:mm:ss, cu tipul struct clipa (subprogramul timp)
✓ Rezolvare explicatăBucurești 2020 · nr. 17
Enunț
Se consideră tipul de date clipa, definit astfel:
struct clipa
{
int sec, mi, ora;
};
unde valorile memorate în câmpurile sec și mi sunt numere naturale din intervalul [0, 59], iar valoarea memorată în câmpul ora este un număr natural din intervalul [0, 23].
a) Subprogramul timp primește ca parametru variabila c de tip clipa și afișează pe ecran conținutul acesteia în format hh:mm:ss. Scrieți la calculator definiția completă a subprogramului.
Exemplu: pentru c.sec=35, c.min=4 și c.ora=6, se va afișa 06:04:35.
⚠️ Exemplul oficial scrie
c.min, dar câmpul declarat în structură se numeștemi. În cod se foloseștec.mi; cuc.minprogramul nu compilează.
b) Fișierul clipa.in conține pe primul rând un număr natural n (1 ≤ n ≤ 20), iar pe următoarele n rânduri câte trei valori, corespunzătoare câmpurilor structurii clipa, separate prin câte un spațiu. Se cere scrierea și executarea la calculator a unui program care citește datele din fișier, apoi afișează pe ecran, unul sub altul, momentele citite, în format hh:mm:ss. Programul afișează apoi, pe rândul următor, momentul cel mai apropiat de sfârșitul zilei, în format hh:mm:ss. Programul va folosi apeluri utile ale subprogramului timp.
Exemple
Date de intrare (clipa.in) |
Date de ieșire | Explicații |
|---|---|---|
520 45 61 2 34 56 359 59 2334 3 4 |
06:45:2003:02:0103:56:0423:59:5904:03:3423:59:59 |
Valorile vin în ordinea câmpurilor: secunde, minute, oră. Ultimul rând e momentul cel mai târziu |
Rezolvare
Exersează mai departe