Peršokti į turinį

Prašau pagalbos su C++ užduotimi


Recommended Posts

#include <iostream>
#include <fstream>

using namespace std;

const char CDfv[] = "Duomenys.txt";
const char CRfv[] = "Rezultatai.txt";

void KelionesTrukme(int isvykimo_h, int isvkimo_min, int atvykimo_h, int atvykimo_min, int &trukme_h, int &trukme_min);

int main()
{
	int n;
	ifstream fd(CDfv);
	ofstream fr(CRfv);
	fd >> n;
	for(int i = 0; i < n; i++)
	{
		int is_h, is_m, at_h, at_m, tr_h = 0, tr_m = 0, sum_h = 0, sum_m = 0;
		fd >> is_h >> is_m >> at_h >> at_m;
		KelionesTrukme(is_h, is_m, at_h, at_m, tr_h, tr_m);
		sum_h = tr_h;
		sum_m = tr_m;
		fd >> is_h >> is_m >> at_h >> at_m;
		if(is_h != 0 || is_m != 0 || at_h != 0 || at_m != 0)
		{
			KelionesTrukme(is_h, is_m, at_h, at_m, tr_h, tr_m);
			sum_h += tr_h;
			sum_m += tr_m;
			while(sum_m >= 60) 
			{
				sum_h++;
				sum_m -= 60;
			}

		}
		fr << sum_h << " " << sum_m << endl;
	}
	fd.close();
	fr.close();
	return 1;
}



void KelionesTrukme(int isvykimo_h, int isvkimo_min, int atvykimo_h, int atvykimo_min, int &trukme_h, int &trukme_min)
{
	if(atvykimo_h > isvykimo_h)
		trukme_h = atvykimo_h - isvykimo_h;
	else 
		trukme_h = 24 - isvykimo_h + atvykimo_h;

	if(atvykimo_min >= isvkimo_min)
		trukme_min = atvykimo_min - isvkimo_min;
	else 
	{
		trukme_min = 60 - isvkimo_min + atvykimo_min;
		trukme_h--;
	}
}

Patikrinau su visais duotais duomenimis, visi atsakymai sutampa.

  • Teigiamai 3
Nuoroda į komentarą
Dalintis per kitą puslapį

Svečias
Ši tema yra užrakinta.
  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

×
×
  • Sukurti naują...