Welcome to my GitHub repository showcasing the tasks and solutions completed during my internship at Codsoft. Dive into the world of software development as I share the challenges tackled and the innovative solutions devised during this enriching experience.
- Batch: DEC BATCH P20
- Start Date: December 5, 2023
- Last Date: January 5, 2024
Implementing a number guessing game where the user is prompted to guess a randomly generated number within a specified range.
Run the Java program, and you'll see a welcome message indicating the beginning of the game.
You will be prompted to guess a number between 1 and 100. Enter your guess using the keyboard.
After each guess, you'll receive feedback: If your guess is correct, congratulations will be displayed, along with the number of attempts it took. If your guess is too low, you'll be informed, and you can try a higher number. If your guess is too high, you'll be informed, and you can try a lower number.
There is a maximum limit of 10 attempts per round. If you reach this limit without guessing the correct number, the game will inform you, and the correct number will be revealed.
After each round, you'll be asked if you want to play again. Type "yes" if you want to play another round, and the game will generate a new random number.
If you decide not to play again, the game will display your final score. The score is based on the total number of rounds won.
Random Number Generation: A random number between 1 and 100 is generated for each round.
Feedback System: The game provides feedback on whether your guess is correct, too high, or too low.
Attempts Limit: There is a limit of 10 attempts per round, adding a challenge to the game.
Multiple Rounds: You can choose to play the game in multiple rounds. The game keeps track of the total number of rounds won.
Score Display: The game displays the number of rounds won as your final score.
User-Friendly Interface: The game uses a simple and user-friendly interface with clear instructions.
Play Again Option: After each round, you have the option to play again. Typing "yes" will initiate a new round, while typing "no" will end the game.
Creating a word counting tool that takes user input or file content, counts the words, and provides additional features like ignoring common words, displaying unique words, and implementing input validation.
Develop a student management system with classes for individual students and a system to manage student data. Implement a user interface, methods for data storage, and input validation.
Compile and run the StudentManagementSystemApp class. The program will start, displaying a menu in the console.
The menu options are displayed with numbers (1-5). Choose an option by entering the corresponding number and pressing Enter.
Enter the student's name, roll number, and grade as prompted. The new student will be added to the system and saved to the file.
Enter the roll number of the student you want to remove. If the student exists, they will be removed, and the system will be updated.
Enter the roll number of the student you want to search for. If the student exists, their details will be displayed.
All students in the system will be displayed in the console.
Choose this option to exit the program.
Add a New Student: Users can add new students by providing their name, roll number, and grade. Input validation ensures that required fields are not left empty.
Remove a Student: Users can remove a student by entering their roll number. If the student exists, they will be removed from the system.
Search for a Student: Users can search for a student by entering their roll number. If the student exists, their details will be displayed.
Display All Students: Users can view a list of all students currently in the system.
Storage Medium: Student data is stored in a text file (students.txt). Existing student data is loaded from the file at the start of the program. Data is updated in the file after adding or removing a student.
Input Validation: Input validation is implemented to ensure that required fields are not left empty. Roll numbers are used to uniquely identify students.
Adding a New Student: Choose option 1, enter the student's details, and see the confirmation message. The new student is added to the system and saved in the file.
Removing a Student: Choose option 2, enter the roll number of the student to remove, and see the confirmation message. The student is removed from the system, and the file is updated.
Searching for a Student: Choose option 3, enter the roll number of the student to search for, and see their details if they exist.
Displaying All Students: Choose option 4 to see a list of all students currently in the system.
Exiting the Application: Choose option 5 to exit the program.
Creating an ATM interface with options for withdrawing, depositing, and checking the balance. Validate user input, display transaction messages, and connect the interface with the user's bank account class.
Compile and run the ATMApp class.
The program will display an ATM menu with options for Withdraw, Deposit, Check Balance, and Exit.
Enter the corresponding number (1-4) for the desired option and press Enter.
Enter the withdrawal amount when prompted. The program will display a message based on the success or failure of the withdrawal.
Enter the deposit amount when prompted. The program will display a message indicating the success of the deposit.
Choose this option to check the current account balance. The program will display the current balance.
Choose this option to exit the ATM application.
Withdraw: Users can withdraw funds from their account. Input validation ensures sufficient balance and a valid withdrawal amount.
Deposit: Users can deposit funds into their account.
Check Balance: Users can check their current account balance.
Input Validation: The program validates user input to ensure it is within acceptable limits.
Appropriate Messages: The program displays appropriate messages based on the success or failure of transactions.
Build an address book system with classes for individual contacts and a system to manage contact data. Implement a user interface, methods for data storage, and input validation.