Hej,
Która będzie/była godzina za X godzin? Dość opornie mi idzie pisanie... Jakieś sugestie jak to bardziej poprawnie napisać?
struct Time
{
int h, min;
};
Time scan()
{
Time time;
cout << "Podaj godzine i minute" << endl;
cin >> time.h >> time.min;
return time;
}
Time scan2()
{
Time interwal;
cout << "Podaj interwal czasowy" << endl;
cin >> interwal.h >> interwal.min;
return interwal;
}
/*funkcję valid przyjmującą strukturę typu Time i zwracającą prawdę, jeśli reprezentuje ona godzinę
lub fałsz w przeciwnym razie. Godziny liczymy od 00 : 00 do 23 : 59.*/
int valid(Time time)
{
if(time.h<24)
{
if(time.min<60)
return true;
else
return false;
}
else
return false;
}
/*funkcję advance obliczającą godzinę, która nastąpi po upływie danego czasu od danej godziny.
Przykładowo, po upływie czterdziestu ośmiu godzin i pięciu minut od dwunastej trzydzieści będzie
dwunasta trzydzieści pięć. Funkcja przyjmuje dwie struktury typu Time, pierwszą traktuje jako
godzinę, a drugą jako interwał, i zwraca struktuę typu Time zawierającą wynik.*/
int advance(Time time, Time interwal)
{
Time time;
int godzina = (time.h * 60) + time.min;
int inter = (interwal.h * 60) + interwal.min;
int wynik = godzina - inter;
float w = wynik/60;
return w;
}
int main()
{
Time time = scan();
Time interwal = scan2();
bool sprawdz = valid(time);
int godzina = advance(time, interwal);
cout << endl << "Godzina: " << godzina << endl;
system("pause");
return 0;
}