AIPT practical exam codes
AIPT practical exam codes
class Student:
def __init__(self, roll_no, name, sem1_marks, sem2_marks):
self.roll_no = roll_no
self.name = name
self.sem1_marks = sem1_marks
self.sem2_marks = sem2_marks
def average_marks(self):
total = sum(self.sem1_marks) + sum(self.sem2_marks)
return total / (2 * len(self.sem1_marks))
def display_info(self):
print(f"Roll No: {self.roll_no}, Name: {self.name}")
print(f" Semester 1 Marks: {self.sem1_marks}")
print(f" Semester 2 Marks: {self.sem2_marks}")
print(f" Average Marks: {self.average_marks():.2f}")
print()
class IGDTUWClass:
def __init__(self):
self.students = []
def display_all_students(self):
for student in self.students:
student.display_info()
def plot_marks_comparison(self):
roll_nos = [student.roll_no for student in self.students]
sem1_totals = [sum(student.sem1_marks) for student in self.students]
sem2_totals = [sum(student.sem2_marks) for student in self.students]
plt.figure(figsize=(10, 6))
plt.plot(roll_nos, sem1_totals, label="Semester 1 Total Marks", marker="o")
plt.plot(roll_nos, sem2_totals, label="Semester 2 Total Marks", marker="x")
plt.title("Comparison of Total Marks Between Semesters")
plt.xlabel("Roll Numbers")
plt.ylabel("Total Marks")
plt.legend()
plt.grid()
plt.show()
subjects_sem1 = [
"Data Structures",
"Algorithms",
"Database Systems",
"Operating Systems",
"Computer Networks",
"Software Engineering",
]
subjects_sem2 = [
"Artificial Intelligence",
"Machine Learning",
"Cyber Security",
"Cloud Computing",
"Big Data",
"IoT",
]
names = ["Aarav", "Vivaan", "Diya", "Anaya", "Ishaan", "Avni", "Aadhya", "Arjun", "Riya",
"Aryan",
"Kavya", "Ira", "Shaurya", "Nisha", "Reyansh", "Meera", "Advika", "Yuvaan", "Aarohi",
"Krish"]
igdtuw_class = IGDTUWClass()
igdtuw_class.display_all_students()
Output:
Program: Use any two packages of python which is use for AI
# Student Class
class Student:
def __init__(self, roll_no, name, sem1_marks, sem2_marks):
self.roll_no = roll_no
self.name = name
self.sem1_marks = sem1_marks
self.sem2_marks = sem2_marks
def average_marks(self):
total = sum(self.sem1_marks) + sum(self.sem2_marks)
return total / (2 * len(self.sem1_marks))
def display_info(self):
print(f"Roll No: {self.roll_no}, Name: {self.name}")
print(f" Semester 1 Marks: {self.sem1_marks}")
print(f" Semester 2 Marks: {self.sem2_marks}")
print(f" Average Marks: {self.average_marks():.2f}")
print()
# IGDTUWClass Class
class IGDTUWClass:
def __init__(self):
self.students = []
def display_all_students(self):
for student in self.students:
student.display_info()
def plot_marks_comparison(self):
roll_nos = [student.roll_no for student in self.students]
sem1_totals = [sum(student.sem1_marks) for student in self.students]
sem2_totals = [sum(student.sem2_marks) for student in self.students]
plt.figure(figsize=(10, 6))
plt.plot(roll_nos, sem1_totals, label="Semester 1 Total Marks", marker="o")
plt.plot(roll_nos, sem2_totals, label="Semester 2 Total Marks", marker="x")
plt.title("Comparison of Total Marks Between Semesters")
plt.xlabel("Roll Numbers")
plt.ylabel("Total Marks")
plt.legend()
plt.grid()
plt.show()
subjects_sem2 = [
"Artificial Intelligence",
"Machine Learning",
"Cyber Security",
"Cloud Computing",
"Big Data",
"IoT",
]
names = ["Aarav", "Vivaan", "Diya", "Anaya", "Ishaan", "Avni", "Aadhya", "Arjun", "Riya",
"Aryan",
"Kavya", "Ira", "Shaurya", "Nisha", "Reyansh", "Meera", "Advika", "Yuvaan", "Aarohi",
"Krish"]
# Main Logic
igdtuw_class = IGDTUWClass()
import numpy as np
import pandas as pd
# Semester Class
class Semester:
def __init__(self, semester_num, subjects):
self.semester_num = semester_num
self.subject_marks = {subject: np.random.randint(40, 101) for subject in subjects}
def get_total_marks(self):
return sum(self.subject_marks.values())
def get_average_marks(self):
return np.mean(list(self.subject_marks.values()))
def get_marks(self):
return self.subject_marks
# Student Class
class Student:
def __init__(self, student_id, name):
self.student_id = student_id
self.name = name
self.semester_1 = Semester(1, semester_1_subjects)
self.semester_2 = Semester(2, semester_2_subjects)
def get_total_marks(self):
return self.semester_1.get_total_marks() + self.semester_2.get_total_marks()
def get_average_marks(self):
return (self.semester_1.get_total_marks() + self.semester_2.get_total_marks()) / 2
def get_all_marks(self):
marks = {}
marks.update({f"Sem1_{subject}": mark for subject, mark in
self.semester_1.get_marks().items()})
marks.update({f"Sem2_{subject}": mark for subject, mark in
self.semester_2.get_marks().items()})
return marks
plt.figure(figsize=(10, 6))
sns.barplot(x="Name", y="Semester 1 Total", data=df, color="blue", label="Semester 1")
sns.barplot(x="Name", y="Semester 2 Total", data=df, color="orange", label="Semester 2",
alpha=0.7)
plt.xticks(rotation=90)
plt.ylabel("Total Marks")
plt.title("Total Marks Comparison: Semester 1 vs Semester 2")
plt.legend()
plt.tight_layout()
plt.show()
def main():
# Create 20 students
students = [Student(student_id=i + 1, name=name) for i, name in
enumerate(student_names)]
filename = "student_details.csv"
write_student_details_to_file(students, filename)
# Reading and displaying the student details from the CSV file
print("
Student Details from CSV File:
")
read_student_details_from_file(filename)
display_summary_statistics(students)
df = pd.read_csv(filename)
plot_data(df)
if __name__ == "__main__":
main()