Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Создать структуру для базы данных авиабилетов :
- //Компания, пункт назначения, номер рейса, стоимость
- //билета. Ввести с клавиатуры данные о нескольких
- //проданных билетах.
- //Распечатать данные о проданных билетах до заданного пункта назначения.
- //Подсчитать суммарную стоимость билетов на заданный рейс.
- #include <stdio.h>
- #include <conio.h>
- #include <iostream>
- #include <random>
- #include <time.h>
- #include <math.h>
- using namespace std;
- struct avia
- {
- char *company;
- char *destiny;
- int numflight;
- int price;
- };
- void Init(avia *a, int length)
- {
- for (int i(0); i < length; i++)
- {
- cout << i + 1 << ":\n";
- cout << "Введите название компании: ";
- a[i].company = new char[20];
- cin >> a[i].company;
- cout << "Введите пункт назначения: ";
- a[i].destiny = new char[20];
- cin >> a[i].destiny;
- cout << "Введите номер рейса: ";
- cin >> a[i].numflight;
- cout << "Введите стоимость билета: ";
- cin >> a[i].price;
- }
- }
- void menu()
- {
- cout << "1.Создать базу авиабилетов (eng): \n";
- cout << "2.Распечатать данные о проданных билетах до заданного пункта назначения: \n";
- cout << "3.Подсчитать суммарную стоимость билетов на заданный рейс: \n";
- cout << "4.Выход: \n";
- }
- void ShowTicket(const avia *a, int lenght)
- {
- char *dest = new char[20];
- cout << "Введите пункт назначения: ";
- cin.clear();
- cin >> dest;
- for (int i(0); i < lenght; i++)
- {
- if (!strcmp(a[i].destiny, dest))
- {
- cout << "Компания:\t ";
- cout << "Пункт назначения:\t ";
- cout << "Номер рейса:\t ";
- cout << "Стоимость билета:\t " << endl;
- cout << "-----------------------------------------------------------------" << endl;
- cout << a[i].company << "\t\t";
- cout << a[i].destiny << "\t\t";
- cout << a[i].numflight << "\t\t";
- cout << a[i].price << "\t\t";
- cout << endl;
- }
- }
- }
- void Free(avia *a, int lenght)
- {
- for (int i(0); i < lenght; i++)
- {
- delete[] a[i].company;
- delete[] a[i].destiny;
- }
- }
- void CountNum(avia *a, int length)
- {
- int flight_number = 0, sum = 0;
- cout << "Введите номер рейса, суммарную стоимость билетов которого хотите узнать: ";
- cin >> flight_number;
- for (int i(0); i < length; i++)
- {
- if (a[i].numflight == flight_number)
- {
- sum = a[i].price + sum;
- }
- }
- cout << "Суммарная стоимость билетов равна: " << sum << endl;
- }
- int main()
- {
- setlocale(LC_ALL, "Russian");
- int N;
- cout << "Введите количество авиабилетов: ";
- cin >> N;
- avia *emp = new avia[N];
- char c;
- do
- {
- menu();
- cin >> c;
- switch (c)
- {
- case '1': system("cls"); Init(emp, N); break;
- case '2': system("cls"); ShowTicket(emp, N); break;
- case '3': system("cls"); CountNum(emp, N); break;
- case '4': break;
- default: cout << "Неверный пункт меню!\n";
- }
- } while (c != '4');
- Free(emp, N);
- delete[] emp;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement