Система управления туризмом на C/C++
Опубликовано: 7 Октября, 2022
Система управления туризмом реализована на языке C. Это то же самое, что можно увидеть при онлайн-бронировании. Здесь основная идея состоит в том, чтобы предоставить пользователям два варианта пакетов: международный или тур по Индии. Затем в соответствии с выбором будут отображаться доступные пакеты. Следующим шагом является указание общего количества пассажиров и всех необходимых сведений о пассажирах. Общая сумма будет оценена, и на экране появится квитанция.
Подход:
- Реализована структура для получения сведений о пассажирах, таких как имя, пол и возраст.
- Шесть функций — void details(), void add_node(char, char, int), void квитанция(), void heading(), void inter(), void india() созданы для обработки различных функций.
- Объявляется функция heading(), которая будет делать заголовок портала.
- Система («cls») используется для очистки нашего экрана.
- В структуру добавлены три элемента, такие как две строки: одна для получения имени и пола пассажира, а другая — целое число для определения возраста пассажира. Также будет использоваться указатель структуры, который поможет связать следующий узел другого пассажира. Это похоже на связанный список.
- Некоторые массивы символов определены, а некоторые целочисленные массивы определены глобально.
- Пользователь должен выбрать между пакетами International или Indian Tour.
- Если пользователь выберет международные турпакеты, будет вызвана функция inter(). Здесь пользователь должен выбрать определенные пакеты из списка.
- Если пользователь выберет турпакет в Индию, будет вызвана функция india(). Здесь пользователь должен выбрать определенные пакеты из списка.
- Функция details() будет вызываться для подсчета количества пассажиров.
- Цикл for будет выполнен для получения сведений о каждом пассажире. Затем полученные данные будут отправлены в функцию add_node().
- В функции add_node каждая деталь будет храниться в узле для каждого пассажира. Этот узел будет связывать друг друга. Это основано на концепции связанного списка.
- Наконец, будет вызвана функция квитанции(), которая отобразит все необходимые детали.
Исходный код: Ниже приведена реализация вышеуказанного подхода.
C
// C program to implement// the above approach#include <conio.h>#include <stdio.h>#include <stdlib.h>#include <string.h>// Defining Structuretypedef struct mynode { char name[20]; char gen[6]; int age; struct mynode* link;} Node;Node* start = NULL;// Declaring Function Used// In This Programvoid heading();void details();void inter();void india();void receipt();// Global variablesint k, amount;char type[60], place[30], date[20];// Driver Codevoid main(){ int a; // Calling heading() function heading(); // Taking Choice From User printf(" 1. International " "Tour Packages
"); printf(" 2. India Tour Packages
"); printf(" Enter Choice: "); scanf("%d", &a); switch (a) { // Calling inter() function case 1: inter(); break; // Calling india() function case 2: india(); break; default: printf("Enter Right Choice..."); break; } // Calling details() function details(); // Calling receipt() function receipt();}// Function To Take Package// Choice From Indiavoid india(){ int a; // Clearing Screen system("cls"); // Calling heading() function heading(); strcpy(type, "India Tour Package"); printf(" 1. Simla Tour Packages " "6 Days 7 Nights (18880/-)
"); printf(" 2. Kashmir Tour Packages " "5 Days 4 Nights (35500/-)
"); printf(" 3. Kolkata Tour Packages " "11 Days 10 Nights (10000/-)
"); printf(" Enter Choice: "); scanf("%d", &a); if (a == 1) { strcpy(place, "Simla Tour"); amount = 18880; } else if (a == 2) { strcpy(place, "Kashmir Tour"); amount = 35500; } else if (a == 3) { strcpy(place, "Kolkata Tour"); amount = 10000; } else printf("Enter Correct Choice...");}// Function To Take Package Choice// From Internationalvoid inter(){ int a; // Clearing Screen system("cls"); // Calling heading() function heading(); strcpy(type, "International Tour Package"); printf(" 1. England Tour Packages " "6 Days 7 Nights (28880/-)
"); printf(" 2. Thailand Tour Packages " "5 Days 4 Nights (15500/-)
"); printf(" 3. New York Tour Packages " "11 Days 10 Nights (567800/-)
"); printf(" Enter Choice: "); scanf("%d", &a); if (a == 1) { strcpy(place, "England Tour"); amount = 28880; } else if (a == 2) { strcpy(place, "Thailand Tour"); amount = 15500; } else if (a == 3) { strcpy(place, "New York Tour"); amount = 567800; } else printf("Enter Correct Choice...");}// Function To Take Passenger Detailsvoid details(){ int i, a; char val[20], gen[6]; // Clearing Screen system("cls"); // Calling heading() function heading(); printf(" Enter Number Of " "Passengers: "); scanf("%d", &k); printf(" Enter Date " "(DD/MM/YY): "); fflush(stdin); gets(date); for (i = 1; i <= k; i++) { system("cls"); heading(); printf(" Enter The %dth " "Passenger Name: ", i); fflush(stdin); gets(val); printf(" Enter The %dth " "Passenger Gender: ", i); fflush(stdin); gets(gen); printf(" Enter The %dth " "Passenger Age: ", i); fflush(stdin); scanf("%d", &a); // Calling add_node() function add_node(val, gen, a); }}// Function to add details in// node for each passengersvoid add_node(char lol[20], char der[6], int b){ Node *newptr = NULL, *ptr; newptr = (Node*)malloc(sizeof(Node)); strcpy(newptr->name, lol); strcpy(newptr->gen, der); newptr->age = b; newptr->link = NULL; if (start == NULL) start = newptr; else { ptr = start; while (ptr->link != NULL) ptr = ptr->link; ptr->link = newptr; }}// Function For Printing Receiptvoid receipt(){ int i, b; Node* ptr = start; system("cls"); heading(); printf("
**Take Screenshot " "For Further Use**
"); for (i = 1; i <= k; i++) { printf(" %dst Passenger " "Name: ", i); puts(ptr->name); printf(" %dst Passenger " "Gender: ", i); puts(ptr->gen); printf(" %dst Passenger " "Age: %d
", i, ptr->age); ptr = ptr->link; } printf(" Selected Type: "); puts(type); printf(" Package: "); puts(place); printf(" Date: "); puts(date); b = amount * k; printf(" Total Amount: %d", b); printf("
**Thank You For " "registration**");}// Function For Printing Heading// Of Portalvoid heading(){ printf(" ***Tourism Package " "Management System***
"); printf(" ***Vaccination Certificate " "Is Necessary For Travel Purpose***
");} |
Выход: