Practical 9: Implement application using suitable data structure for Railway Reservation System - SCIENCE BUZZ

Practical 9: Implement application using suitable data structure for Railway Reservation System

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// Define the node structure
typedef struct Passenger {
char name[20];
 char gender[6];
 int age;
 struct Passenger* next;
} Passenger;
// Global variables
Passenger* start = NULL; // Head pointer to the linked list
int a[60]; // Seat numbers array
char source[20], des[20], station[20], train[20], cla[20];
int time1, time2;
// Function prototypes
void details(int k);
void add_node(char val[20], char gen[6], int age);
int seat(int p);
void bill(int y, int j);
// Main function
int main() {
int numberOfPassengers, totalBill, boardingTime1,
boardingTime2;
 // Get input details
 printf("Enter Source: ");
 gets(source);
 printf("Enter Destination: ");
 gets(des);
 printf("Enter Boarding Station: ");
 gets(station);
 printf("Enter Train Name: ");
 gets(train);
 printf("Enter Class: ");
 gets(cla);
 printf("Enter Boarding Time (HH MM): ");
 scanf("%d %d", &time1, &time2);
 printf("Enter Number of Passengers: ");
 scanf("%d", &numberOfPassengers);
 details(numberOfPassengers); // Take passenger details
seat(numberOfPassengers); // Choose seats
 totalBill = 500 * numberOfPassengers; // Sample calculation for
total bill
 bill(totalBill, numberOfPassengers); // Generate and print bill
 return 0;
}
// Function for taking details of passengers
void details(int k) {
 int i, age;
 char name[20], gender[6];
 for (i = 1; i <= k; i++) {
 printf("Enter the %dth Passenger Name: ", i);
 fflush(stdin);
 gets(name);
 printf("Enter the %dth Passenger Gender: ", i);
 fflush(stdin);
gets(gender);
 printf("Enter the %dth Passenger Age: ", i);
 fflush(stdin);
 scanf("%d", &age);
 printf("-------------------------------------------------\n");
 // Call add_node() to add the passenger to the linked list
 add_node(name, gender, age);
 }
}
// Function to add a node (passenger details) to the linked list
void add_node(char name[20], char gender[6], int age) {
 Passenger* newPassenger =
(Passenger*)malloc(sizeof(Passenger));
 strcpy(newPassenger->name, name);
 strcpy(newPassenger->gender, gender);
 newPassenger->age = age;
 newPassenger->next = NULL;
if (start == NULL) {
 start = newPassenger;
 } else {
 Passenger* ptr = start;
 while (ptr->next != NULL) {
 ptr = ptr->next;
 }
 ptr->next = newPassenger;
 }
}
// Function for choosing seats
int seat(int p) {
 int i;
 printf("\t -:SEAT MATRIX:- \n");
 printf("\t(U) (M) (L) (L) (U)\n\n");
 printf("\t01 02 03\t04 05\n\n");
 printf("\t06 07 08\t09 10\n");
 printf("\t11 12 13\t14 15\n\n");
 printf("\t16 17 18\t19 20\n");
printf("\t21 22 23\t24 25\n\n");
 printf("\t26 27 28\t29 30\n");
 printf("\t31 32 33\t34 35\n\n");
 printf("\t36 37 38\t39 40\n");
 printf("\t41 42 43\t44 45\n\n");
 printf("\t46 47 48\t49 50\n");
 printf("\t51 52 53\t54 55\n\n");
 printf("\t56 57 58\t59 60\n");
 printf("\nEnter Seat Numbers for %d Passengers: \n", p);
 for (i = 0; i < p; i++) {
 scanf("%d", &a[i]);
 }
 return 0;
}
// Function to print the bill and generate the receipt
void bill(int totalAmount, int numPassengers) {
 int i;
 Passenger* ptr = start;
for (i = 1; i <= numPassengers; i++) {
 printf("\t\t%dth Passenger Name: ", i);
 puts(ptr->name);
 printf("\t\t%dth Passenger Gender: ", i);
 puts(ptr->gender);
 printf("\t\t%dth Passenger Age: %d\n\n", i, ptr->age);
 ptr = ptr->next;
 }
 printf("\t\tSource Place: ");
 puts(source);
 printf("\t\tDestination Place: ");
 puts(des);
 printf("\t\tThe Boarding Station: ");
 puts(station);
 printf("\t\tTrain Name: ");
 puts(train);
 printf("\t\tAllocated Class: ");
 puts(cla);
 printf("\t\tBoarding Time: %d:%d\n", time1, time2);
printf("\t\tTotal Bill Amount: %d\n", totalAmount);
 printf("\t\tAllocated Seats Are: \n");
 for (i = 0; i < numPassengers; i++) {
 printf("\t\t%d ", a[i]);
 }
 printf("\n\t\t\t\tThank You......\n");
}
Practical 9: Implement application using suitable data structure for Railway Reservation System Practical 9: Implement application using suitable 
data structure for Railway Reservation System Reviewed by RISHI and ARYAN on 09:20 Rating: 5

No comments:

May I help you ?

Powered by Blogger.