Cerința
Se consideră două evenimente a căror durată este exprimată fiecare prin câte trei numere naturale: ore (h
), minute (m
) şi secunde (s
).
Să se scrie în fișierul de ieșire:
a) pe primele două linii, duratele în formatul h: m: s
b) pe următoarele două linii, duratele exprimate în secunde, corespunzătoare fiecărui
eveniment, pe rânduri separate;
c) pe următoarea linie suma obţinută din adunarea duratelor celor două evenimente, exprimată în
ore, minute, secunde, în formatul h: m: s
.
Date de intrare
Fișierul de intrare ore.in
conține două linii pe care sunt scrise câte trei numere naturale, separate prin câte un spaţiu, reprezentând duratele a două evenimente exprimate în: ore (h), minute (m) şi secunde (s)
.
Date de ieșire
Fișierul de ieșire ore.out
va conține pe primele două linii răspuncul de la cerința a)
, apoi pe liniile 3
și 4
răspunsul la cerința b)
, iar pe a 5
-a linie răspunsul la cerința c)
.
Restricții și precizări
1 ≤ h ≤ 24
0 ≤ m ≤ 60
0 ≤ s ≤ 60
Exemplu
ore.in
3 35 55 2 40 8
ore.out
3: 35: 55 2: 40: 8 12955 9608 6: 16: 3
Explicație
În fișierul de intrare sunt detaliile referitoare la duratele cele două evenimente, iar suma lor este 6: 16: 3
.
Cum e corect?
cout < "As la info";
cout << "As la info";
cout >> "As la info";
Felicitări! Poți mai mult?
Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.
Greșit, dar nu-i bai!
Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.
Rezolvare
Iată rezolvarea de 100 de puncte pentru problema ore:
#include <fstream>
using namespace std;
struct ora
{
int h,m,s;
} e1,e2,e;
ifstream f("ore.in");
ofstream g("ore.out");
int main()
{
f>>e1.h>>e1.m>>e1.s;
f>>e2.h>>e2.m>>e2.s;
g<<e1.h<<": "<<e1.m<<": "<<e1.s<<endl;
g<<e2.h<<": "<<e2.m<<": "<<e2.s<<endl;
int s,a,b;
a=e1.h*3600+e1.m*60+e1.s;
b=e2.h*3600+e2.m*60+e2.s;
g<<a<<endl;
g<<b<<endl;
s=a+b;
e.h=s/3600;
s=s%3600;
e.m=s/60;
e.s=s%60;
g<<e.h<<": "<<e.m<<": "<<e.s<<endl;
return 0;
}
Atenție
Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa .
Rezolvarea problemei #2004 ore
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #2004 ore de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.
Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!