Skip to content
Snippets Groups Projects
Commit a6aa17d0 authored by Andreas Blakli's avatar Andreas Blakli
Browse files

Fikset bug i tabell() funk i rute.cpp.

parent dcea8219
No related branches found
No related tags found
No related merge requests found
...@@ -149,7 +149,7 @@ void Rute::skrivDataBaklengs() { ...@@ -149,7 +149,7 @@ void Rute::skrivDataBaklengs() {
bool forste = true; bool forste = true;
totalTid = 0; totalTid = 0;
cout << "\n\n..::Stoppested navn\tTid mellom stopp" cout << "\n\n\t..::Stoppested navn\tTid mellom stopp"
<< "\tTotal tid fra rutestart::.."; << "\tTotal tid fra rutestart::..";
for (auto it = alleStoppestedenePaaRuten.rbegin(); for (auto it = alleStoppestedenePaaRuten.rbegin();
...@@ -421,18 +421,14 @@ void Rute::tabell() { ...@@ -421,18 +421,14 @@ void Rute::tabell() {
tilKlTime < tmpTime || tilKlTime < tmpTime ||
tilKlMin > MAX_MINUTTER || tilKlMin < 0); tilKlMin > MAX_MINUTTER || tilKlMin < 0);
/*if (fraKlTime == 0 && fraKlMin == 0 ||
tilKlTime == 0 && tilKlMin == 0)
cout << "\nAvbryter" << '\n';*/
// Legger til tider i vector // Legger til tider i vector
if (ikkeFullt) { if (ikkeFullt) {
valgtTid.push_back({fraKlTime, tmpTime, tmpMin, avgangsTid, valgtTid.push_back({fraKlTime, fraKlMin, tmpTime,
tilKlTime, tilKlMin}); tmpMin, avgangsTid,
tilKlTime, tilKlMin, tmpTime});
} }
} else { } else {
fraKlTime = fraKlMin = tilKlTime = tilKlMin = 0; fraKlTime = fraKlMin = tilKlTime = tilKlMin = 0;
// cout << "\nAvbryter" << '\n';
} }
} while (fraKlTime > 0 || fraKlMin > 0 || tilKlTime > 0 || tilKlMin > 0); // fraKlTime != 0 || fraKlMin != 0 && tilKlTime != 0 || tilKlMin != 0 && ikkeFullt); } while (fraKlTime > 0 || fraKlMin > 0 || tilKlTime > 0 || tilKlMin > 0); // fraKlTime != 0 || fraKlMin != 0 && tilKlTime != 0 || tilKlMin != 0 && ikkeFullt);
...@@ -449,26 +445,93 @@ void Rute::tabell() { ...@@ -449,26 +445,93 @@ void Rute::tabell() {
<< "\n\n"; << "\n\n";
// Klokkeslett // Klokkeslett
for (int i = valgtTid.front()[0]; for (int i = valgtTid.front()[0];
i <= valgtTid.back()[4]; i++) { i <= valgtTid.back()[5]; i++) {
if (i <= 9) if (i <= 9)
cout << "\t\t0" << i; cout << "\t\t0" << i;
else else
cout << "\t\t" << i; cout << "\t\t" << i;
cout << ":"; cout << ":";
// Tabell for stopp på 'i' klokkeslett // Tabell for stopp på 'i' klokkeslett
for (const auto& val : valgtTid) { int tall = 0;
if (i >= val[0] && i <= val[4]) { int pos = 0;
int timeAvgang = 0;
int minutterAvgang = 0;
for (auto& val : valgtTid) {
if (i >= val[0] && i <= val[5]) {
igjen = true;
timeAvgang = (val[4] + totTid) / 60;
minutterAvgang = (val[4] + totTid) % 60;
if ((val[4] + totTid) % 60 != 0)
timeAvgang++;
// val[7] += totTid + val[4];
/*if (val[7] > 0)
tall = val[7];
else {
tall = minutterAvgang + totTid;
val[7] = val[4] + totTid;*/
//}
// Hvis i er
/*if (i + timeAvgang != + val[0]+timeAvgang )
tall = 60;*/
// timeAvgang += i;
if (val[7] == i )//&& totTid + val[4] > MAX_MINUTTER)
tall = minutterAvgang;
else
tall = totTid + val[4];
while (igjen) {
if (i >= val[2]) {
// cout << timeAvgang << "\n\n";
if (tall < MAX_MINUTTER && val[7] == i) {
cout << "\t";
if (tall <= 9)
cout << "0" << tall;
else
cout << tall;
if (val[4] > MAX_MINUTTER)
igjen = false;
tall += totTid + val[4];
} else {
igjen = false;
}
} else
igjen = false;
}
if (val[7] == i)
val[7] += timeAvgang;
// val[7] -= 60;
// if (val[7] < 0)
// val[7] = 0;
// cout << "inne i if!\n\n"; // cout << "inne i if!\n\n";
// int iEnTime = (60 / (totTid + val[2])); // int iEnTime = (60 / (totTid + val[2]));
int tall = totTid + val[2];
/*int antTimer;
if (tall > MAX_MINUTTER) {
antTimer = tall / 60;
}else antTimer = 0;
igjen = true; igjen = true;
while (igjen) { while (igjen) {
if (tall < MAX_MINUTTER) { if (tall >= val[1] &&
i == val[2] &&
tall < MAX_MINUTTER) {
// tall -= val[3];
cout << "\t" << tall;
tall += tall;
} else if (tall < MAX_MINUTTER && i > val[2]) {
cout << "\t" << tall; cout << "\t" << tall;
tall += tall; tall += tall;
} else } else
igjen = false; igjen = false;
} }*/
// else cout << "\t" << totTid + val[2]; // else cout << "\t" << totTid + val[2];
/* utregning = (totTid + val[2]) / 60; /* utregning = (totTid + val[2]) / 60;
...@@ -530,14 +593,14 @@ void Rute::lesFraFil(ifstream& inn) { ...@@ -530,14 +593,14 @@ void Rute::lesFraFil(ifstream& inn) {
linjenSplittet = hjelp.splittStreng('*', heleLinjen); linjenSplittet = hjelp.splittStreng('*', heleLinjen);
pos = 0; pos = 0;
if (heleLinjen != "Buss" && heleLinjen != "Bane" && heleLinjen != "X") { if (heleLinjen != "Buss" && heleLinjen != "Bane" && heleLinjen != "X") {
for (int i = 0; i < linjenSplittet.size() -1; i++) { for (int i = 0; i < linjenSplittet.size() - 1; i++) {
// if (!hjelp.erBokstav(val)) { // if (!hjelp.erBokstav(val)) {
switch (i) { switch (i) {
case 0:{ case 0: {
stopp = new Stopp; stopp = new Stopp;
stopp->indexStoppested = stoi(linjenSplittet[0]); stopp->indexStoppested = stoi(linjenSplittet[0]);
break; break;
} }
case 1: { case 1: {
stopp->minutterFraForrigeStoppested = stoi(linjenSplittet[1]); stopp->minutterFraForrigeStoppested = stoi(linjenSplittet[1]);
alleStoppestedenePaaRuten.push_back(stopp); alleStoppestedenePaaRuten.push_back(stopp);
...@@ -547,11 +610,11 @@ void Rute::lesFraFil(ifstream& inn) { ...@@ -547,11 +610,11 @@ void Rute::lesFraFil(ifstream& inn) {
// } // }
cout << stopp->indexStoppested << '\n' cout << stopp->indexStoppested << '\n'
<< stopp->minutterFraForrigeStoppested << '\n'; << stopp->minutterFraForrigeStoppested << '\n';
cout << alleStoppestedenePaaRuten.size() << " size \n\n"; cout << alleStoppestedenePaaRuten.size() << " size \n\n";
pos++; pos++;
} }
//alleStoppestedenePaaRuten.push_back(stopp); // alleStoppestedenePaaRuten.push_back(stopp);
} }
} while (heleLinjen != "Buss" && heleLinjen != "Bane" && heleLinjen != "X"); } while (heleLinjen != "Buss" && heleLinjen != "Bane" && heleLinjen != "X");
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment