0% found this document useful (0 votes)
43 views

Java Project

Uploaded by

mr.suyogbadb
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views

Java Project

Uploaded by

mr.suyogbadb
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 9

Class: Sem :

Subject Name :

Experiment No :

Mini Project Title :

D.O.P.: D.O.S.:

Student Roll No:

Student Name:

Sr. Parameters Out of Marks


No. ( 10 Marks) Obtained

1 Timely Submission 2

2 Novelty / Innovation 3

3 Implementation 5

Total Marks 10
Subject In-charge Sign

Computer Graphics Mini Project Report on


Currency Converter
by

Suyog Thorat (80)


Harsh Atakari (84)
Roshan Wavera (82)

Guide:

Prof. HIMA KANTHARIA

Department of Computer Engineering


VIVA Institute of Technology
University of Mumbai 2024 - 25 DECLARATION BY
STUDENT

This is certified that the work of MINI PROJECT done in this report
on topic “Currency Converter” was carried out by me
under the supervision of Prof. Hima Kantharia.
Sign of Student Sign of Guide
The
ABSTRACT

Currency Converter is a Java-based application designed to facilitate the conversion of monetary


values between different currencies, utilizing Object-Oriented Programming (OOP) principles. This mini-
project aims to provide users with a straightforward and efficient tool for converting currency values based
on predefined exchange rates. The application offers an intuitive user interface that enables users to select
source and target currencies, input the amount to be converted, and view the corresponding converted value.
The project is built around the concept of encapsulating currency data and conversion logic within distinct
classes, ensuring a clear separation of responsibilities. The Currency class models individual currencies,
encapsulating attributes such as the currency code (e.g., USD, EUR) and its exchange rate relative to a base
currency (e.g., USD). This approach allows for easy management and manipulation of currency data.
The Converter class encapsulates the logic required to perform currency conversions. It provides a method
that takes the amount to be converted and calculates the converted value based on the exchange rates of the
source and target currencies. This method implements a straightforward conversion formula, ensuring that
users receive accurate results.
By employing OOP principles, such as encapsulation, inheritance, and polymorphism, the project allows for
future scalability. New currencies can be easily added, and the system can be extended to integrate real-time
exchange rate data from external APIs. This flexibility ensures that the application remains relevant and can
adapt to changing requirements.
In addition to its core functionality, the Currency Converter emphasizes user experience by providing a
simple console-based interface. Users can navigate the application with ease, selecting currencies from a
predefined list and entering amounts for conversion. The clear output displays the conversion results in an
understandable format, enhancing usability.This project not only serves as a practical tool for currency
conversion but also provides an educational foundation for understanding OOP concepts in Java
programming. By developing this application, users gainvaluable experience in designing and implementing
a functional system that models real-world scenarios. The Currency Converter stands as an excellent
introduction to Java programming and OOP, preparing students and developers to tackle more complex
software development projects in the future.
1. Introduction

The Currency Converter is a fundamental Java application designed to assist users in converting
monetary values between different currencies, providing an essential tool for individuals engaged in
international travel, business, or financial transactions. In a globalized economy, where the exchange of
goods and services crosses borders, having access to accurate and timely currency conversion is vital for
making informed financial decisions. This project aims to simplify this process by delivering a user-
friendly platform for currency conversion, employing core concepts of Object-Oriented Programming
(OOP).
The application is built on the principles of OOP, which promotes the organization of code into
manageable, reusable components known as classes and objects. By modeling the domain of currency
conversion through OOP, the project ensures better structure, maintainability, and scalability. The system
encapsulates essential features, allowing users to select currencies, input amounts, and view conversion
results without being overwhelmed by complex underlying logic.
The
2. Project Scope

Currency Converter project includes essential features that facilitate currency conversion, focusing on
usability, functionality, and scalability.
1. Currency Management
● Currency Class: Represents different currencies with attributes such as currency code (e.g., USD,
EUR) and exchange rate relative to a base currency.
● The application will maintain a collection of currency objects for easy access.
2. User Interaction
● Console-Based Interface: Users can select currencies, input the amount to convert, and view
conversion results.
● Input Validation: Ensures valid currency selections and positive numerical inputs.
3. Conversion Logic
● Conversion Calculation: Implemented in the Converter class using the formula: Converted
Amount=Amount×(Target RateSource Rate)\text{Converted Amount} =
\text{Amount} \times \left( \frac{\text{Target Rate}}{\text{Source Rate}}
\right)Converted Amount=Amount×(Source RateTarget Rate )
● Error Handling: Provides user feedback for invalid inputs or unexpected errors.
4. Extensibility
● Potential enhancements include:
o Real-Time Exchange Rates: Integrating an API for up-to-date conversion values.
o Graphical User Interface (GUI): Transitioning to a GUI for improved user experience.
o Historical Data Tracking: Allowing users to view past exchange rates.
5. Testing and Documentation
● Testing: Ensures functionality, usability, and reliability of the application.
● Documentation: Includes a user manual and technical documentation to support users and
developers.
The

3. Project Description and Implementation

Currency Converter project is designed to facilitate the conversion of amounts between


different currencies using Java and Object-Oriented Programming (OOP) principles. The
application models essential components of currency conversion while providing a user-friendly
experience through a console-based interface.
The project is structured using the following classes:
1. Currency Class o Purpose: Represents individual currencies.
o Attributes:
▪ String code: The currency code (e.g., "USD" for US Dollar).
▪ double exchangeRate: The exchange rate relative to a base currency (e.g.,
1 USD = 0.85 EUR).
o Methods:
▪ Constructor to initialize currency objects.
▪ Getters for currency code and exchange rate.
2. Converter Class o Purpose: Handles the conversion logic
between currencies.
o Methods:
▪ double convert(double amount, Currency sourceCurrency, Currency
targetCurrency): This method performs the conversion using the formula:
Converted Amount=Amount×(Target RateSource Rate)\text{Converted
Amount} = \text{Amount} \times \left( \frac{\text{Target
Rate}}{\text{Source Rate}}
\right)Converted Amount=Amount×(Source RateTarget Rate )
3. CurrencyConverterApp Class o Purpose: Acts as the main
driver for the application, managing user interaction.
o Methods:
▪ main(String[] args): The entry point of the application.
▪ User input handling for currency selection, amount entry, and displaying
results.
3.2 Core Features
1. Currency Management o A predefined set of currencies is stored in a collection
(e.g., a HashMap) for easy access.
o For example, the system includes:
▪ USD (US Dollar)
▪ EUR (Euro)
▪ GBP (British Pound)
▪ INR (Indian Rupee)
2. User Interaction o The console interface prompts users to select currencies and
input the amount to convert.
o Users can navigate through the options using simple commands.
3. Conversion Logic o The conversion process is executed when the user submits the
amount and selected currencies. o The application calculates and returns the
converted amount, which is then displayed to the user.
The

4. Results

Currency Converter application effectively meets its goal of enabling users to convert
amounts between different currencies. The key results of the project are as follows:
1. Functional Testing
● Currency Selection: Users can easily select from a predefined list of currencies (USD,
EUR, GBP, INR). The application correctly identifies valid currency codes and provides
feedback for invalid entries.
● Amount Conversion: The application accurately converts the input amount based on the
selected currencies using the formula:
Converted Amount=Amount×(Target RateSource Rate)\text{Converted Amount} =
\text{Amount} \times \left( \frac{\text{Target Rate}}{\text{Source Rate}}
\right)Converted Amount=Amount×(Source RateTarget Rate )
2. User Experience
● The console-based interface is user-friendly, allowing for smooth navigation and
interaction.
● Clear prompts and error messages guide users, enhancing usability and preventing
confusion.
3. Performance and Reliability
● The application performs efficiently, providing quick conversion results without
noticeable delays.
● Robust error handling prevents crashes and ensures users are prompted to correct invalid
inputs.
4. Extensibility
● The modular design allows for easy additions, such as:
o Real-Time Exchange Rates: Future integration with APIs for up-to-date rates.
o Graphical User Interface (GUI): Potential transition to a more visually
appealing interface.
5. Conclusion

The Currency Converter project successfully demonstrates the principles of Object-Oriented


Programming (OOP) through a practical application that enables users to convert currency
amounts easily and accurately. By encapsulating currency data and conversion logic within
distinct classes, the project promotes clean code organization and enhances maintainability.
Throughout its development, the Currency Converter has proven to be user-friendly, providing a
clear console-based interface that guides users through the currency selection and conversion
process. The inclusion of error handling ensures that the application remains robust and reliable,
even when faced with invalid inputs.
The project's modular design allows for future enhancements, such as integrating real-time
exchange rates and transitioning to a graphical user interface, ensuring its adaptability to
changing user needs.
In summary, the Currency Converter not only fulfills its functional requirements but also serves
as an excellent educational tool for aspiring developers to understand and apply OOP concepts
in Java. The project provides a solid foundation

You might also like