Составить программу, выводящую на экран расписание полетов самолетов C++
Составить программу, выводящую на экран расписание полетов самолетов (пункт посадки, время отправления, время прибытия, время полета, стоимость билета). Определить номер рейса, который позже всех прибывает в заданный пункт. Не могу понять как вывести номер рейса который позже всех прибывает ввожу Moscow и выдает 12 часов, а должен 16.
#include <iostream>
#include <conio.h>
#include <algorithm>
using namespace std;
//Классы, по сути это такой же тип данных как int или float, возможности которых
//ты определяешь в этом районе объявления классов, то есть после объявления класса
//с названием "Aircraft", мы можем создавать переменные Aircraft a, b, c как
//int a, b, c
class Aircraft
{
//private, параметры и функции класса, которые видно только в пределах класса
//Aircraft, то есть если объявить в пределах int main Aircraft a, то при написании
//a.lp или a.dp, выведется ошибка
private:
string lp, dp;
int tl, ft, bc, td, fn;
//public, параметры и функции класса, которые видно НЕ только в пределах класса
//Aircraft, то есть если объявить в пределах int main Aircraft a, то при написании
//a.lp или a.dp, ошибка выводится не будет, а перменная a.dp выведет своё значение
public:
//Когда в основном коде пишем объявление переменной Aircraft a(a1,a2,a3)
//то на месте a1 будет перменная string, на месте a2 переменная int, ну и так
//далее, сопоставь эту функцию снизу под комментарием и 3 параметра при
//объявлении Aircraft чтобы понять
Aircraft (string landing_place, string departure_place, int time_departure, int time_landing, int flying_time, int bilet_cost, int flight_number)
{
lp = landing_place;
dp = departure_place;
tl = time_landing;
ft = flying_time;
bc = bilet_cost;
td = time_departure;
fn = flight_number;
}
string getLanding_Place_Name()
{
return lp;
}
string getDepartue_Place_Name()
{
return dp;
}
int getTime_Departue()
{
return td;
}
int getTime_Landing()
{
return tl;
}
int getFlying_Time()
{
return ft;
}
int getBilet_Cost()
{
return bc;
}
int getFlight_Number()
{
return fn;
}
};
int main()
{
setlocale(LC_ALL, "Russian");
Aircraft Fly1("Saint-Petesburg", "Moscow", 10, 12, 2, 34000, 1), Fly2("Ufa", "Moscow", 12, 16, 4, 45000, 2),
Fly3("Saint-Petesburg", "Ufa", 13, 18, 5, 26000, 3);
//Вывод имеющихся данных
cout << Fly1.getLanding_Place_Name() << endl;
cout << Fly1.getDepartue_Place_Name() << endl;
cout << "Убытие: " << Fly1.getTime_Departue() << " часов" << endl;
cout << "Прибытие: " << Fly1.getTime_Landing() << " часов" << endl;
cout << "Лететь: " << Fly1.getFlying_Time() << " часа" << endl;
cout << Fly1.getBilet_Cost() << " рублей" << endl;
cout << Fly1.getFlight_Number() << " - й рейс" << endl;
cout << endl;
cout << Fly2.getLanding_Place_Name() << endl;
cout << Fly2.getDepartue_Place_Name() << endl;
cout << "Убытие: " << Fly2.getTime_Departue() << " часов" << endl;
cout << "Прибытие: " << Fly2.getTime_Landing() << " часов" << endl;
cout << "Лететь: " << Fly2.getFlying_Time() << " часа" << endl;
cout << Fly2.getBilet_Cost() << " рублей" << endl;
cout << Fly2.getFlight_Number() << " - й рейс" << endl;
cout << endl;
cout << Fly3.getLanding_Place_Name() << endl;
cout << Fly3.getDepartue_Place_Name() << endl;
cout << "Убытие: " << Fly3.getTime_Departue() << " часов" << endl;
cout << "Прибытие: " << Fly3.getTime_Landing() << " часов" << endl;
cout << "Лететь: " << Fly3.getFlying_Time() << " часов" << endl;
cout << Fly3.getBilet_Cost() << " рублей" << endl;
cout << Fly3.getFlight_Number() << " - й рейс" << endl;
cout << endl;
string departure_place;
int flight_number;
cout << "Введите название города куда будет садиться самолёт: ";
cin >> departure_place;
cout << endl;
//25 взято за минимальное число, потому что число по логике не может быть больше 24
int min = 25;
//Поиск номера рейса в заданный город которого прибытие будет позже всего
if (Fly3.getDepartue_Place_Name() == departure_place)
{
if (min > Fly3.getTime_Landing())
{
min = Fly3.getTime_Landing();
flight_number = Fly3.getFlight_Number();
}
}
if (Fly2.getDepartue_Place_Name() == departure_place)
{
if (min > Fly2.getTime_Landing())
{
min = Fly2.getTime_Landing();
flight_number = Fly2.getFlight_Number();
}
}
if (Fly1.getDepartue_Place_Name() == departure_place)
{
if (min > Fly1.getTime_Landing())
{
min = Fly1.getTime_Landing();
flight_number = Fly1.getFlight_Number();
}
}
cout << "В город " << departure_place << " самолёт прибудет в " << min << endl;
cout << "Номер рейса " << flight_number;
_getch();
return 0;
}
Источник: Stack Overflow на русском