Intership Report Soumya
Intership Report Soumya
Under Supervision of
CERTIFICATE
This is to certify that the “Internship report” submitted by Soumya Ranjan Jena
(Regd. No.:2224100031) is work done by her and submitted during 2023 – 2024
academic year, in partial fulfillment of the requirements for the award of the
degree of MASTER IN COMPUTER APPLICATION, at CODSOFT.
Signature of Signature of
Internship coordinator Head of School of Computer Science
ACKNOWLEDGEMENT
First I would like to express my sincere appreciation for the incredible support and guidance I
have received during my internship at Codsoft. I would like to extend my heartfelt gratitude to
HR Mr. Rajesh Das, Head of the school of Computer Science Dr. Jibitesh Mishra,
Internship Coordinator Mrs. Rojalin Mallick, and all my colleagues who became friends
throughout this enriching experience.
First and foremost, I want to thank Mr. Rajesh Das for their warm welcome and continuous
support. Their insights into the company's policies and procedures have been invaluable, and
their approachability has made my integration into the company seamless.
I am immensely grateful to Dr. Jibitesh Mishra for his leadership and mentorship. His guidance
has not only enhanced my understanding of the industry but has also inspired me to strive for
excellence in my future endeavors.
Special appreciation goes to Mrs. Rojalin Mallick, whose dedication as the Internship
Coordinator has played a pivotal role in making my internship a well-organized and enriching
experience. Her support and encouragement have been instrumental in my professional
development.
This internship has been a remarkable journey, and I am grateful to have had the opportunity to
work with such a supportive team.
ABSTRACT
References
Learning Objectives/Internship Objectives
⮚ An objective for this position should emphasize the skills you already
possess in the area and your interest in learning more
⮚ Utilizing internships is a great way to build your resume and develop skills
that can be emphasized in your resume for future jobs. When you are
applying for a Training Internship, make sure to highlight any special skills
or talents that can make you stand apart from the rest of the applicants so
that you have an improved chance of landing the position.
Task-1: Quiz Application
1.1. Introduction:
The Number Game project is designed to create an interactive guessing game where users can
attempt to guess a randomly generated number within a specified range. This document provides
an overview of the project, its scope, existing system (if any), proposed system, module
descriptions, system requirements, project schedule, code snippets, output screens, and a
conclusion.
The project aims to create an engaging number guessing game with features like limiting
attempts, allowing multiple rounds, and displaying the user's score based on their performance.
The scope also includes implementing user-friendly feedback for each guess.
3. PROJECT SCHEDULE:
Implementation
10/08/23 Thursday
Documentation and
13/08/23 Sunday
Deployment
4. Code Snippets
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
public NumberGameGUI() {
setTitle("Number Guessing Game");
setSize(400, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
instructionLabel = new JLabel("Guess the number between " + lowerBound + " and " +
upperBound + ":");
guessField = new JTextField(10);
guessButton = new JButton("Guess");
resultLabel = new JLabel("");
scoreLabel = new JLabel("Score: " + score);
newGameButton = new JButton("New Game");
add(panel);
generateNewNumber();
guessButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
checkGuess();
}
});
newGameButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
startNewGame();
}
});
}
guessField.setText("");
} catch (NumberFormatException e) {
resultLabel.setText("Please enter a valid number.");
}
}
6. Conclusion:
The Number Game project in Java provides an interactive and entertaining experience for users
to guess randomly generated numbers. With features like multiple rounds and scoring, it offers
a fun and challenging environment. This document serves as a guide for understanding the
project, its development process, and system requirements.
Task-2: Student Grade Calculator
1.1. Introduction:
The Student Grade Calculator project is designed to create a program that calculates the total
marks, average percentage, and assigns grades based on the average percentage obtained in
various subjects. This document provides an overview of the project, its scope, existing
system (if any), proposed system, module descriptions, system requirements, project
schedule, code snippets, output screens, and a conclusion.
The project aims to develop a Java application for calculating total marks, average percentage,
and assigning grades to students based on their performance in multiple subjects. The scope
includes user-friendly input, accurate calculations, and clear grade assignments.
There is currently no existing system for the Student Grade Calculator as it is a new project.
Input Handling
Total Marks Calculation
Average Percentage Calculation
Grade Assignment
Output Display
2. SYSTEM REQUIREMENTS
The hardware is very important in the existence and proper working of any software.
● Intel i5 12th Gen Processor
● 8 GB RAM
● 512 SSD
● Windows 11, 64-bit
3. PROJECT SCHEDULE:
Implementation
27/08/23 Sunday
Documentation and
31/08/23 Thursday
Deployment
4. Code Snippets:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public StudentGradeCalculator() {
frame = new JFrame("Student Grade Calculator");
frame.setLayout(new GridLayout(0, 2));
subjectFields = new JTextField[5]; // Assuming a maximum of 5 subjects
for (int i = 0; i < subjectFields.length; i++) {
frame.add(new JLabel("Subject " + (i + 1) + " Marks: "));
subjectFields[i] = new JTextField(5);
frame.add(subjectFields[i]);
}
JButton calculateButton = new JButton("Calculate");
calculateButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
calculateAndDisplayResults();
}
});
frame.add(calculateButton);
totalMarksLabel = new JLabel("Total Marks: ");
averagePercentageLabel = new JLabel("Average Percentage: ");
gradeLabel = new JLabel("Grade: ");
frame.add(totalMarksLabel);
frame.add(averagePercentageLabel);
frame.add(gradeLabel);
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
private void calculateAndDisplayResults() {
int totalMarks = 0;
int numberOfSubjects = 0;
for (JTextField subjectField : subjectFields) {
try {
int marks = Integer.parseInt(subjectField.getText());
totalMarks += marks;
numberOfSubjects++;
} catch (NumberFormatException e) {
// Handle invalid input here if needed
}
}
if (numberOfSubjects > 0) {
double averagePercentage = (double) totalMarks / (numberOfSubjects * 100);
String grade = calculateGrade(averagePercentage);
totalMarksLabel.setText("Total Marks: " + totalMarks);
averagePercentageLabel.setText("Average Percentage: " + (averagePercentage * 100)
+ "%");
gradeLabel.setText("Grade: " + grade);
}
}
private String calculateGrade(double averagePercentage) {
// You can implement your grading logic here based on the averagePercentage
// For example, you can use if-else statements to assign grades.
// Sample grading logic:
if (averagePercentage >= 0.9) {
return "A+";
} else if (averagePercentage >= 0.8) {
return "A";
} else if (averagePercentage >= 0.7) {
return "B";
} else if (averagePercentage >= 0.6) {
return "C";
} else {
return "F";
}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new StudentGradeCalculator();
}
});
}
}
5. Output Screen:
6. Conclusion:
The Student Grade Calculator project in Java offers a straightforward and efficient solution for
calculating grades based on input marks. It provides a user-friendly interface and accurate
calculations to assist students in understanding their academic performance. This document
serves as a comprehensive guide for the project's understanding, development, and
deployment.
Task-3: ATM Interface
1.1. Introduction:
In the contemporary digital landscape, the development of an engaging and responsive
front-end for e-commerce platforms plays a pivotal role in ensuring user satisfaction and business
success. This report delves into the front-end design aspects of an e-commerce webpage
meticulously crafted using React.js, a powerful JavaScript library for building dynamic user
interfaces.
2. SYSTEM REQUIREMENTS
3. PROJECT SCHEDULE:
Date Day Work
14/08/23 Monday Requirement Analysis.
Documentation and
21/08/23 Monday
Deployment.
4. Code Snippets:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
// Create components
// JLabel balanceLabel = new JLabel("Balance: RS 0.0");
JTextField amountField = new JTextField(10);
JButton depositButton = new JButton("Deposit");
JButton withdrawButton = new JButton("Withdraw");
JButton checkBalanceButton = new JButton("Check Balance"); // New button
checkBalanceButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(frame, String.format("Current Balance: Rs%.2f",
atm.checkBalance()), "Balance", JOptionPane.INFORMATION_MESSAGE);
}
});
// Display the frame
frame.setVisible(true);
}
}
5. Output Screen
6. Conclusion:
The ATM Interface project in Java provides a simulated environment for users to interact
with an ATM machine. It ensures secure and user-friendly transactions, input validation, and
appropriate feedback. This document serves as a comprehensive guide for understanding the
project, its development, and deployment.
REFERENCES
1. Java Documentation:
Oracle Java Documentation
Official documentation provides comprehensive information about the Java
programming language, libraries, and tools.
2. Java Tutorials:
Java Tutorials - Oracle
The official tutorials cover a wide range of Java topics and are suitable for both
beginners and experienced developers.