0% found this document useful (0 votes)
6 views25 pages

Car Rentel Management System

The document outlines a mini project on an Airline Management System submitted by students of SRM Institute of Science and Technology for the academic year 2024-2025. It includes bonafide certificates for three students, an acknowledgment section, and an abstract describing the system's purpose to streamline vehicle rental processes. The project utilizes C++ programming and incorporates various modules for user authentication, car management, booking, and payment processing.

Uploaded by

singhsahil80808
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views25 pages

Car Rentel Management System

The document outlines a mini project on an Airline Management System submitted by students of SRM Institute of Science and Technology for the academic year 2024-2025. It includes bonafide certificates for three students, an acknowledgment section, and an abstract describing the system's purpose to streamline vehicle rental processes. The project utilizes C++ programming and incorporates various modules for user authentication, car management, booking, and payment processing.

Uploaded by

singhsahil80808
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

SRM INSTITUTE OF SCIENCE AND TECHNOLOGY

DELHI NCR CAMPUS, MODINAGAR, GHAZIABAD

MINI PROJECT
On
AIRLINE MANAGEMENT SYSTEM (2024-2025)

Submitted By:

[Link] Reg No: Student Contact Dept/Sec/Yr/Sem Sig.


Name No:
1 RA2411056030021 Sneha 9152992184 CSE-DS/A/1/2
Agarwal
2 RA2411056030007 Kriti 8810807828 CSE-DS/A/1/2
Srivastava
3 RA2411056030053 Bhumi Kumari 7979059714 CSE-DS/A/1/2

Subject in charge:
Dr. Rajneesh Kumar, Assistant Professor
Dept of Computer Science and Engineering,
SRM-IST, Delhi-NCR Campus, Modinagar
BONAFIDE CERTIFICATE
This is to certify that Ms. Sneha Agarwal, D/O of Mr. Vikas Agarwal, is a
Student of CSE (DS), Btech first year, second semester bearing Reg No.
RA2411056030021 for the academic year 2024- 2025. She is a bonafide student
of SRM Institute of Science and Technology, Delhi-NCR campus. She is reliable,
sincere, hardworking, and bears a good moral character.

Subject In Charge​ HOD (CSE)


BONAFIDE CERTIFICATE
This is to certify that Ms. Kriti Srivastava, D/O of Mr. Abhay Kumar, is a
Student of CSE (DS), Btech first year, second semester bearing Reg No.
RA2411056030007 for the academic year 2024- 2025. She is a bonafide student
of SRM Institute of Science and Technology, Delhi-NCR campus. She is reliable,
sincere, hardworking, and bears a good moral character.

Subject In Charge​ HOD (CSE)


BONAFIDE CERTIFICATE
This is to certify that Ms. Bhumi Kumari, D/O of Mr. Shailendar Kumar, is a
Student of CSE (DS), Btech first year, second semester bearing Reg No.
RA2411056030053 for the academic year 2024- 2025. She is a bonafide student
of SRM Institute of Science and Technology, Delhi-NCR campus. She is reliable,
sincere, hardworking, and bears a good moral character.

Subject In Charge​ HOD (CSE)


ACKNOWLEDGEMENT

I would like to express my sincere gratitude to my


faculty guide and mentors for their constant
support and encouragement throughout the
development of this Car Rental System Project.
Their guidance and feedback were instrumental in
the completion of this project.
ABSTRACT

The car rental system is a user-friendly platform


designed to streamline the process of renting
vehicles, making transportation more accessible
and efficient for customers. This system allows
users to browse available cars, make reservations,
manage bookings, and process payments online.
It also supports administrative functions such as
vehicle management, booking tracking, customer
support, and reporting. By integrating
technologies such as web-based interfaces, secure
databases, and real-time availability updates, the
system enhances user experience while ensuring
reliability and operational efficiency. The aim is
to simplify the rental process, reduce manual
workload, and improve overall service quality in
the car rental industry.
TECHNOLOGY USED


​Language: C++

​Compiler: GNU G++ / Code::Blocks /
Dev-C++

​Platform: Console (cross-platform)

​ OOP Concepts: Classes, Inheritance,
Polymorphism, Encapsulation
​ ​ ​ ​ INTRODUCTION

The Car Rental System is a digital platform


designed to automate and manage the process of
renting vehicles. It allows customers to view
available cars, make bookings, and manage their
reservations online. For administrators, the
system provides tools to monitor bookings,
update vehicle availability, and manage customer
details efficiently.

By minimizing paperwork and reducing the need


for in-person interactions, the system improves
customer experience and streamlines operations.
Incorporating technologies such as web
development, database management, and user
authentication, the car rental system aims to offer
a reliable, secure, and user-friendly service for
both customers and providers
OBJECTIVE
The primary objective of the Car Rental System is to develop a
user-friendly and efficient platform that simplifies the process of renting
cars for both customers and administrators. The system aims to:

●​ Automate the Car Rental Process: Eliminate manual tasks by


allowing users to browse, book, and return cars online.

●​ Improve Customer Experience: Provide a smooth and accessible


interface for customers to search for available vehicles based on
location, type, or date.

●​ Enable Real-Time Vehicle Availability Tracking: Keep the system


updated with current availability to avoid double bookings or confusion

●​ Simplify Administrative Tasks: Help

●​ administrators manage vehicle records, customer data, and rental


history efficiently.

●​ Enhance Business Efficiency: Reduce time and cost associated


with manual operations, increasing overall productivity and customer
satisfaction.
SYSTEM OVERVIEW
Key components of the system include:

●​ User Authentication Module – for secure login and


registration.

●​ Car Inventory Management – allows admins to manage


vehicle listings with details like model, type, price, and
availability.

●​ Booking System – enables users to reserve vehicles for


specific time periods with real-time availability updates

●​ Search and Filter Options – to help users find suitable cars ​


​based on type, location, and date.

●​Payment and Billing Module (optional) – for processing rental


charges and generating invoices.

●​Admin Dashboard – provides full control over the system’s


operations, including analytics and reports.

​ Module Description

1.​ Car Management Module:


●​ Used by admins to add, update, or remove car listings.
●​ Stores details like car model, type, number, availability
status, rent per day/hour, and images.

2.​ Booking Module:


●​ Allows users to select cars and book them for a specific date
and time.
●​ Prevents double bookings through real-time availability
checks.
●​ Displays booking history to users.

3.​ Search and Filter Module:


●​ Lets users search cars based on type, brand, price, or
availability date.
●​ Makes the booking process faster and more efficient.
4.​ Rental Management Module:
●​ Handles the start and end of rental periods.
●​ Calculates rental duration and cost.
●​ Optionally includes return tracking and damage reporting.

5.​ Payment Module (Optional/Advanced):


●​ Facilitates online payments (integration with payment
gateways).
●​ Generates invoices and sends confirmation emails.

6.​ Admin Dashboard Module:


●​ Provides an overview of total bookings, available cars, and
customer activity.
●​ Allows full control over car listings, bookings, and user
accounts.

7.​ Feedback and Support Module:


●​ Allows users to give feedback or raise queries.
●​ Helps maintain service quality and user
satisfaction.

8.​ Reporting Module (Optional):


●​ Generates reports on bookings, revenues, and user activity
for business analysis.
#include <iostream>
#include <string>
#include <limits>
using namespace std;

// Base class for booking functionality


class Booking {
protected:
int days;
int carNum;
float total;
string name;

void getRentalDays() {
cout << "Enter number of days you want to rent the car: ";
while (!(cin >> days) || days <= 0) {
cout << "Invalid input. Please enter a positive number: ";
[Link]();
[Link](numeric_limits<streamsize>::max(), '\n');
}
}

void calculatePayment() {
switch (carNum) {
case 1: total = 5500 * days; break;
case 2: total = 2900 * days; break;
case 3: total = 6500 * days; break;
case 4: total = 7000 * days; break;
default: cout << "INVALID CAR NUMBER!" << endl; return;
}

cout << "Enter your name: ";


[Link]();
getline(cin, name);

cout << "\n!!Booking Confirmed for " << name << endl;
cout << "Your Total Payment is: ₹" << total << endl;
}

public:
void processPayment() {
getRentalDays();
calculatePayment();
}
};

// Class for car details and selection


class CarDetails : public Booking {
private:
void clearScreen() {
system("cls"); // For Windows
// system("clear"); // For Linux/Mac
}

void displayCarList() {
cout << "\nAvailable Cars:" << endl;
cout << "1) Audi A4 - ₹5500/day" << endl;
cout << "2) Hyundai Creta - ₹2900/day" << endl;
cout << "3) BMW 6-Series - ₹6500/day" << endl;
cout << "4) Mercedes-Benz E-Class - ₹7000/day" << endl;
}

void displayCarDetails(int selectedCar) {


clearScreen();
switch (selectedCar) {
case 1:
cout << "Audi A4 Details:\n";
cout << "Seating Capacity: 5 Persons\n";
cout << "Fuel Type: Petrol\nTransmission: Automatic\n";
cout << "Mileage: 17-20 km/l\nTop Speed: 244 km/h\n";
cout << "Special Features: Virtual Cockpit, Sunroof, Wireless Charging\n";
cout << "Price: ₹5500/day" << endl;
break;
case 2:
cout << "Hyundai Creta Details:\n";
cout << "Fuel Type: Petrol/Diesel\n";
cout << "Transmission: Manual/Automatic\n";
cout << "Mileage: 18-21 km/l\nTop Speed: 180 km/h\n";
cout << "Special Features: Panoramic Sunroof, Bose Sound System\n";
cout << "Price: ₹2900/day" << endl;
break;
case 3:
cout << "BMW 6-Series Details:\n";
cout << "Seating Capacity: 5 Persons\n";
cout << "Fuel Type: Petrol/Diesel\n";
cout << "Transmission: Automatic (8-speed)\n";
cout << "Mileage: 14-18 km/l\nTop Speed: 250 km/h\n";
cout << "Special Features: Heads-Up Display, Harman Kardon Audio\n";
cout << "Price: ₹6500/day" << endl;
break;
case 4:
cout << "Mercedes-Benz E-Class Details:\n";
cout << "Seating Capacity: 5 Persons\n";
cout << "Fuel Type: Petrol/Diesel\n";
cout << "Transmission: Automatic (9-speed)\n";
cout << "Mileage: 15-18 km/l\nTop Speed: 250 km/h\n";
cout << "Special Features: MBUX Infotainment, Ambient Lighting\n";
cout << "Price: ₹7000/day" << endl;
break;
default:
cout << "Invalid car selection!" << endl;
return;
}
}

public:
void selectCar() {
int choice;
char decision;

do {
displayCarList();
cout << "\nPlease select a car (1-4): ";
while (!(cin >> carNum) || carNum < 1 || carNum > 4) {
cout << "Invalid input. Please enter a number between 1-4: ";
[Link]();
[Link](numeric_limits<streamsize>::max(), '\n');
}

displayCarDetails(carNum);

cout << "\nWould you like to book this car? (Y/N): ";
cin >> decision;

if (toupper(decision) == 'Y') {
clearScreen();
cout << "Great choice! Proceeding with booking...\n";
processPayment();
return;
}

clearScreen();
cout << "Would you like to select another car? (Y/N): ";
cin >> decision;
clearScreen();
} while (toupper(decision) == 'Y');

cout << "\nThank you for visiting. Safe travels!\n";


}
};

// User authentication class


class UserAuthentication {
protected:
string username;
string password;
int age;

void clearScreen() {
system("cls"); // For Windows
// system("clear"); // For Linux/Mac
}

void signUp() {
clearScreen();
cout << "----- SIGN UP -----\n";
cout << "Enter Username: ";
cin >> username;

cout << "Enter Age: ";


while (!(cin >> age) || age <= 0) {
cout << "Invalid age. Please enter a positive number: ";
[Link]();
[Link](numeric_limits<streamsize>::max(), '\n');
}

if (age < 18) {


cout << "You must be at least 18 years old to rent a car.\n";
return;
}

cout << "Enter Password: ";


cin >> password;
cout << "Registration successful!\n\n";
}

bool logIn() {
string inputUser, inputPass;
clearScreen();
cout << "----- LOG IN -----\n";
cout << "Enter Username: ";
cin >> inputUser;
cout << "Enter Password: ";
cin >> inputPass;

if (inputUser == username && inputPass == password) {


cout << "Login successful!\n";
return true;
}
cout << "Invalid username or password.\n";
return false;
}

public:
void authenticate() {
int choice;
bool authenticated = false;

cout << "===== WELCOME TO CAR RENTAL SYSTEM =====" << endl;
cout << "1. Sign Up\n2. Log In\n3. Exit\n";
cout << "Enter your choice: ";

while (!(cin >> choice) || choice < 1 || choice > 3) {


cout << "Invalid choice. Please enter 1, 2, or 3: ";
[Link]();
[Link](numeric_limits<streamsize>::max(), '\n');
}

switch (choice) {
case 1:
signUp();
authenticated = logIn();
break;
case 2:
authenticated = logIn();
break;
case 3:
cout << "Thank you for visiting. Goodbye!\n";
return;
}

if (authenticated) {
CarDetails carRental;
[Link]();
}
}
};

int main() {
UserAuthentication authSystem;
[Link]();
return 0;
}

You might also like