NBKRIST Java Hub

← Back to Home
Strengthen Your Problem-Solving Skills - Using CORE JAVA

Introduction

As a software engineer, understanding how data is processed under the hood is crucial. Many engineers can write code but have limited insight into the mechanics of data handling or algorithmic problem-solving. Solving problems with datasets like RDBMS tables or arrays helps you build a strong foundation for your career. These exercises will boost your confidence as a systems engineer and teach you to think creatively beyond conventional solutions.

Scenario: Student Marks Dataset

We have 10 students from NBKRIST Vidyanagar Kota Tirupathi with marks in 5 subjects: Maths, Java, Python, C, and C++. Some students may have missed subjects, highlighted as Absent in red. Marks vary to simulate a realistic classroom scenario.

Student Name Maths Java Python C C++
Revathi8590887692
Diya7882Absent75Absent
Shakthi78806083Absent
Meera9184889090
Venkat5569507274
Meenakshi8890859289
Vikram4045Absent35Absent
Saroja8082848183
Aditya9295Absent9388
Saravana21Absent1942Absent

1. Calculate Student Average Marks

Compute the average marks for each student considering only the subjects they attended. Solving this problem teaches how to handle incomplete datasets and ensures accurate calculations, an essential skill for real-world software systems where data may be missing or inconsistent.

Expected Output Example: Aarav: 86.2% Diya: 77.5% Karan: 73.7% Meera: 88.6% Rohan: 60.0% Sanya: 88.8% Vikram: 40.0% Isha: 82.0% Aditya: 92.0% Neha: 79.0% Class Average: 76.3%

2. Identify Topper and Lowest Scorer

Using the averages from Problem 1, identify the student with the highest and lowest marks. This develops analytical skills and teaches you to extract meaningful insights efficiently—a key skill for evaluating performance metrics in software engineering.

Expected Output Example: Topper: Aditya (92.0%) Lowest Scorer: Vikram (40.0%)

3. Conditional Selection of Students

Select students based on the number of subjects attended and their average marks. Identify students who attended all subjects, those with at least 4 subjects, and students below 50%. For students below 50%, calculate a running cumulative sum. This problem develops analytical thinking and decision-making skills essential for out-of-the-box problem-solving.

Expected Output Example: All Subjects: Aarav, Meera, Sanya, Isha At least 4 Subjects: Aarav, Diya, Karan, Meera, Rohan, Sanya, Isha, Aditya, Neha Below 50%: Vikram (Cumulative Sum: 75)

4. Grade Distribution Analysis

Group students into grade ranges: 100%-90%, 89%-80%, 79%-70%, 69%-60%, 59%-50%, and below 50%. Display the count and names per range. This exercise enhances skills in summarizing datasets and reporting insights—crucial for software systems engineers.

Expected Output Example: 100%-90%: Aditya, Meera 89%-80%: Aarav, Sanya, Isha 79%-70%: Karan, Neha 69%-60%: Rohan Below 50%: Vikram, Diya

5. Highest and Lowest Marks per Subject

Identify the highest and lowest marks for each subject along with the students who achieved them, ignoring absentees. This teaches mapping arrays to real-world entities and handling missing data—skills vital for professional software development.

Expected Output Example: Maths - Highest: Aditya (92), Lowest: Vikram (40) Java - Highest: Aditya (95), Lowest: Vikram (45) Python - Highest: Aarav (88), Lowest: Rohan (50) C - Highest: Aditya (93), Lowest: Vikram (35) C++ - Highest: Aarav (92), Lowest: Rohan (74)

← Back to Home