Туристическое агентство wisdom должно будет обобщить информацию о путешествии своего клиента. Сводный отчет будет содержать информацию о бронировании поездки клиента и общую сумму платежных реквизитов.
Напишите программу на языке C++, чтобы продемонстрировать свою способность применять концепцию стека и очереди, методы поиска и сортировки при разработке решений. Вы можете использовать предыдущее задание в качестве продолжения для этого проекта.Ваша программа должна соответствовать всем требованиям, как показано ниже:
а) создайте ввод информации о путешествии клиента min 4;
б) создать один (1) или несколько сводных отчетов о бронировании путешествия клиента и платежных реквизитах с использованием реализации связанного списка.
i. создайте стек или очередь с помощью реализации связанного списка для поддержки генерации сводных отчетов клиента, показанных в списке. [См. примеры на Рис. 1]
Мудрость Туристическое Агентство, Бронирование Резюме
Имя Клиента: ___________________________ Номер Бронирования: #1234
Адрес: ________________________________________ подготовлено: Джон Кертис
Электронная Почта: ____________________________________________ Дата Выпуска: 8/11/18
Контакт Нет: ______________________________________
Телефон: ___________________________________________
Пункт назначения путешествия: Корея (семейная поездка)
Описание услуги количество человек стоимость на человека Отель
(в сутки) Весь
Авиабилеты туда и обратно 3 RM8000.00 RM 24000.00
Размещение гостиница Армада 3 RM300.00 5 RM 4500.00
Путешествие по городу посещение культурного мероприятия в городе 3 RM200.00 RM 600.00
Промежуточный итог счета-фактуры: 29100.00 RM
Налог/сервисный сбор: RM 4656.00
Общая сумма: RM 33756.00
Рисунок 1: краткий пример резюме бронирования с платежными реквизитами
в) каждый окончательный отчет должен иметь номер резервирования и храниться в упорядоченном списке. Администратор или системный пользователь может просмотреть отчет, выполнив поиск по номеру бронирования.
г) Вы можете выбрать любой из методов сортировки (пузырьковый, выделение, вставка, оболочка, быстрый и слияние) для сортировки вашего сводного отчета;
e) ваша система должна быть в состоянии обеспечить все функции, перечисленные ниже, непрерывно на основе выбора пользователя. Ключевыми функциями вашего программного интерфейса являются:
Описание Функций
Отображения меню главного меню
Добавление, обновление, удаление сведений о клиенте и информации о путешествии возможность добавления/обновления/удаления сведений о клиенте и информации о путешествии
Поиск информации о путешествии клиента возможность поиска сведений о клиенте и информации о путешествии
Просмотр информации о клиенте с его описанием возможность просмотра всей информации о клиенте
сводный отчет
- Показать сводку информации о путешествии клиента, например, пункт назначения, бронирование и платежные реквизиты, отсортированные по номеру бронирования/имени/дате.
Exit - выход из программы
f) ваша программа должна работать непрерывно до тех пор, пока пользователь не решит завершить программу;
g) создайте по крайней мере пять (5) записей в качестве заранее заданных данных (жестко закодированных) в вашей программе.
Что я уже пробовал:
#include <string> #include <ctype.h> #include <stdlib.h> #include <stdio.h> #include <conio.h> #include <string.h> #include <math.h> #include <time.h> #include <iostream> #include <sstream> using namespace std; int const MAX=5; int top=-1; int stack [MAX]; void push(); void pop(); void edit(); void display(); void summary(); int exit(); int main() { int ch, i=0; system("cls"); while (i<10) { cout << "\n The Wisdom Travelling Agency \n" << endl; cout << "\n1.Add Customer Detail\n2.Delete Customer Detail\n3.Edit Customer Information\n4.Display Customer ID\nView Summary Report\n6.Exit\n" << endl; cout << "Choose your option : " ; cin >>ch; switch (ch) { case 1: push(); break; case 2: pop(); break; case 3: edit(); break; case 4: display(); break; case 5: summary(); break; case 6: exit(); break; } } getch(); return 0; } void push() { int IDnum; string numphone; string name; string country; string email; int choose; if (top==MAX-1) { cout<<"We Are Full For A Moment! Thank You." << endl; return; } else { cout<<"\n-------------------------------------------------------------------------------------------------------------------"; cout<<"\nCustomer Identification Number (First 6 Number): " ; cin>>IDnum; cout<<"Customer First Name: "; cin>>name; cout<<"Customer Number Phone: "; cin>>numphone; cout<<"Customer Country Name: "; cin>>country; cout<<"Customer Email: "; cin>>email; cout << "\n The Wisdom Travelling Agency\n" << endl; cout << "\n1.-5 Days in Korea-\n2.-5 Days in Japan-\n3.-5 Days in France-\n4.-5 Days in Itali-\n" << endl; cout<<"\nPlease Choose Your Place for Vacation : "; cin>>choose; switch (choose) { } top = top + 1; stack [top] = IDnum; cout<< "\nCustomer ID : " << IDnum<<"\nInformation Was Added."; cout<<"\n-------------------------------------------------------------------------------------------------------------------"; } } void pop() { int IDnum; if (top<0) { cout<<"\n-------------------------------------------------------------------------------------------------------------------"; cout<< "\nCustomer Information Was Empty Already!!"; cout<<"\n-------------------------------------------------------------------------------------------------------------------"; return; } else { IDnum = stack[top]; top=top-1; cout<<"\n-------------------------------------------------------------------------------------------------------------------"; cout<< "Customer Detail For ID " << IDnum << " Is Deleted!!"; cout<<"\n-------------------------------------------------------------------------------------------------------------------"; } } void edit() { cout<<"\n-------------------------------------------------------------------------------------------------------------------"; cout<< "In Progress!!!"; cout<<"\n-------------------------------------------------------------------------------------------------------------------"; } void display() { int i; if (top<0) { cout<<"\n-------------------------------------------------------------------------------------------------------------------"; cout<< "\nCustomer Information Was Empty!! Please Add It First, Thank You!!"; cout<<"\n-------------------------------------------------------------------------------------------------------------------"; return; } else cout<<"\n-------------------------------------------------------------------------------------------------------------------"; cout<< "\n The Wisdom Travelling Agency \n" ; cout<< "\nCustomer ID Number :\n" ; for (i=top; i>=0; i--) cout<< stack[i] << endl; cout<<"\n-------------------------------------------------------------------------------------------------------------------"; } void summary() { cout<<"\n-------------------------------------------------------------------------------------------------------------------"; cout<< "In Progress!!!"; cout<<"\n-------------------------------------------------------------------------------------------------------------------"; } int exit() { int ch; cout<<"\n-------------------------------------------------------------------------------------------------------------------"; cout<<"\nAre You Sure Want To Exit This Program?"; cout<<"\n<1> YES!\n<2> NO!"<<endl; cout<<"Your Option Is: "; cin>>ch; cout<<"\n-------------------------------------------------------------------------------------------------------------------"; if(ch==1) { cout<<"\n-------------------------------------------------------------------------------------------------------------------"; cout<<"\nThank You For Being Our Customer! Have A Good Day."; exit(0); } else return main(); }
Rick York
Очевидно, вы поделились с нами своим домашним заданием. Этот форум создан для того, чтобы люди могли дать ответы на ваши вопросы. Вы не задали ни одного вопроса, так в чем же заключается ваш вопрос?
Patrice T
А у вас есть вопрос или проблема ?