Jain
Jain
INTERNSHIP REPORT
Teacher’s Signature:
1
Table of Contents
1. Introduction
2. Company Overview
3. Offer Letter
4. Tasks Assigned
6. Conclusion
2
Introduction
Data structures and algorithms (DSA) are fundamental building blocks
of computer science. They provide efficient and organized ways to
store and manipulate data, enabling the development of complex
software applications. Mastering DSA is essential for aspiring software
engineers, as it equips them with the skills to solve challenging
computational problems and design efficient solutions.
In this report, I will delve into the details of each task assigned during
the internship, providing a comprehensive overview of my approach,
the challenges encountered, and the lessons learned. Each task
presented a unique opportunity to apply DSA concepts in real-world
contexts, reinforcing my understanding of these fundamental
principles.
3
Company Overview:
InternPe is a Jaipur-based IT education and training company that
provides virtual internships to students in India. It is a non-profit
organization that focuses on helping students gain the skills and
experience they need to be successful in the tech industry.
4
Offer Letter:
T
5
asks Assigned:
Developing a Number Guessing Game Using C++ and DSA
Project Overview:
The Number Guessing Game is a classic game where a player attempts
to guess a hidden number within a specified range. This project aimed
to create an interactive and engaging game while implementing
various DSA principles to efficiently manage and evaluate the guessed
numbers. The primary objectives of this project included:
6
Implementation:
Conclusion:
Developing the Number Guessing Game using C++ and DSA principles
was a rewarding experience during my internship at Internpe. It
allowed me to apply theoretical knowledge to practical problem-
solving, enhancing my understanding of DSA's real-world significance.
This project illustrated the importance of optimization and efficiency
in software development while making the learning experience
enjoyable for the end-users.
8
Developing a Rock, Paper, Scissors Game Using C++ and
DSA
Project Overview:
The Rock, Paper, Scissors game is a classic hand game in which two
players simultaneously form one of three shapes with their hands. The
outcome is determined by the rules: Rock crushes Scissors, Scissors
cuts Paper, and Paper covers Rock. This project aimed to develop a
user-friendly and interactive game while integrating DSA concepts for
efficient and random decision-making.
Implementation:
1. User Interface: To ensure accessibility and a positive user
experience, I designed a straightforward and intuitive user interface. It
allowed users to input their choice (Rock, Paper, or Scissors) and
displayed the result promptly.
9
2. Random Selection: Implementing the game logic, a random selection
process was utilized for the computer's choice. This involved
employing DSA techniques for generating random numbers within a
predefined range.
Integrating DSA concepts into the game enhanced the efficiency and
fairness of the Rock, Paper, Scissors game. By employing DSA
techniques for random number generation, the game achieved true
randomness in the computer's selections, ensuring a fair challenge for
the players. This illustrated the practical importance of DSA in creating
enjoyable and unpredictable gaming experiences.
Conclusion:
10
Developing the Rock, Paper, Scissors game using C++ and DSA was an
enjoyable and insightful project during my internship at Internpe. It
highlighted the practical application of DSA in the context of
entertainment software and demonstrated that DSA plays a crucial role
not only in optimizing algorithms but also in creating interactive and
engaging user experiences.
This project reinforced the idea that DSA is not limited to complex
problem-solving but can be applied creatively to create user-friendly
applications that provide enjoyment and challenge for users. I am
grateful to Internpe for providing me with opportunities to work on
projects that combine technology and entertainment, enriching my
learning experience and contributing to my growth as a software
developer.
11
Completion Certificate:
12
Screenshots:
13
14
15
0
16
17
Conclusion:
During my internship at Internpe, I had the opportunity to work on
two engaging projects that highlighted the integration of practical
programming with Data Structures and Algorithms (DSA). These
experiences emphasized the significance of applying DSA principles in
real-world scenarios while crafting user-friendly applications.
The Number Guessing Game and Rock, Paper, Scissors Game, both
developed using C++ and DSA, showcased the power of optimization
and efficiency. The Number Guessing Game demonstrated how DSA
can minimize search complexity, making it an engaging and insightful
project for both myself and the end-users. Meanwhile, the Rock, Paper,
Scissors Game illustrated that DSA is not just about solving complex
problems but also about creating fair, interactive, and unpredictable
user experiences.
18
19