EX NO 8A: OOPS LAB - CLASS TEMPLATE

 

EX NO 8A: Class Templates

 

1. Generic Bank Account System  ( RNO – 1 TO 5)

Steps:

  1. Define a class template Account<T>
  2. Declare data members: balance (T), account holder name
  3. Initialize balance using constructor
  4. Create function deposit(T amount)
    • Check if amount > 0
    • Add amount to balance
  5. Create function withdraw(T amount)
    • Check if amount <= balance
    • Deduct amount, else display “Insufficient Balance”
  6. Create function to display account details
  7. In main(), create multiple objects with different data types
  8. Perform multiple transactions
  9. Display updated balance after each transaction

2. Student Management System ( RNO – 6 TO 10)

Steps:

  1. Define class template with parameters <T1, T2, T3>
  2. Declare roll number, name, and marks
  3. Create constructor to initialize values
  4. Create function to calculate grade based on marks
  5. Create function to display student details with grade
  6. Allow input for multiple students using loop
  7. Store and process each student record
  8. Display all student records

 

 

 

 

 

3. Shopping Cart System ( RNO – 11 TO 15)

Steps:

  1. Define class template <T1, T2> for price and quantity
  2. Declare item name, price, quantity
  3. Create function to input multiple items
  4. Calculate total cost for each item
  5. Maintain grand total for all items
  6. Apply discount if total exceeds a limit
  7. Display item-wise bill and final amount

4. Generic Stack Implementation ( RNO – 16 TO 20)

Steps:

  1. Define class template <T>
  2. Declare array, top, and max size
  3. Initialize stack using constructor
  4. Create push()
    • Check overflow condition
  5. Create pop()
    • Check underflow condition
  6. Create peek() to view top element
  7. Use menu-driven approach (push/pop/display)
  8. Repeat until user exits

5. Employee Payroll System ( RNO – 21 TO 25)

Steps:

  1. Define class template <T> for salary
  2. Declare employee ID, name, basic salary, bonus
  3. Create function to calculate gross salary
  4. Deduct tax based on salary range
  5. Compute net salary
  6. Display payroll details
  7. Handle multiple employees using loop

6. Library Management System ( RNO – 26 TO 30)

Steps:

  1. Define class template <T1, T2, T3>
  2. Declare book ID, title, price
  3. Add availability status (issued/not issued)
  4. Create function to issue book
  5. Create function to return book
  6. Display available books
  7. Use menu-driven system

7. Matrix Addition System ( RNO – 31 TO 40)

Steps:

  1. Define class template <T>
  2. Declare matrices and size variables
  3. Input matrix elements using loops
  4. Check if matrix dimensions match
  5. Perform matrix addition
  6. Display resultant matrix
  7. Repeat for different data types

8. Generic Sorting System ( RNO – 41 TO 45)

Steps:

  1. Define class template <T>
  2. Declare array and size
  3. Input elements
  4. Implement sorting algorithm (bubble/selection sort)
  5. Compare elements using template type
  6. Display sorted array
  7. Allow user to repeat sorting

9. Result Processing System ( RNO – 46 TO 55)

Steps:

  1. Define class template <T>
  2. Declare marks for multiple subjects
  3. Input marks using loop
  4. Calculate total and average
  5. Assign grade using conditions
  6. Display result summary
  7. Handle multiple students

10. Queue Management System ( RNO – 56 TO 61)

Steps:

  1. Define class template <T>
  2. Declare array, front, rear, size
  3. Initialize queue
  4. Create enqueue()
    • Check overflow
  5. Create dequeue()
    • Check underflow
  6. Create display()
  7. Implement menu-driven system
  8. Perform operations repeatedly

Comments