0% found this document useful (0 votes)
2 views24 pages

Python Manual

This document is a Python Programming Lab Manual for the academic year 2025-2026 at Visvesvaraya Technological University. It contains various programming exercises including basic arithmetic operations, senior citizen check, Fibonacci sequence generation, list operations, statistical calculations, digit frequency analysis, word frequency in a text file, and sorting file contents. Each exercise includes code examples, expected outputs, and is prepared by Ms. Devi Vijay and Mrs. Mounika from the Department of ISE.

Uploaded by

Sushank Kadayat
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views24 pages

Python Manual

This document is a Python Programming Lab Manual for the academic year 2025-2026 at Visvesvaraya Technological University. It contains various programming exercises including basic arithmetic operations, senior citizen check, Fibonacci sequence generation, list operations, statistical calculations, digit frequency analysis, word frequency in a text file, and sorting file contents. Each exercise includes code examples, expected outputs, and is prepared by Ms. Devi Vijay and Mrs. Mounika from the Department of ISE.

Uploaded by

Sushank Kadayat
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

VISVESVARAYATECHNOLOGICALUNIVERSITY

JNANASANGAMA, BELGAVI-590018, KARNATAKA

Semester-II

PYTHON PROGRAMMING
LAB MANUAL (1BPLC205B)

Academic Year: 2025-2026

Prepared By
Ms. Devi Vijay, Assistant professor, Dept. of ISE
PYTHON PROGRAMMING LABORATORY [1BPLC1205B]

1 a. Develop a python program to read 2 numbers from the keyboard and


perform the basic arithmetic operations based on the choice. (1-Add, 2-
Subtract, 3-Multiply, 4-Divide).

# Display all the operations


print("Select Operations")
print(" [Link]\n"
" [Link]\n"
" [Link]\n"
" [Link]\n")

# Read the choice of operation and two numbers


operation=int(input("Enter the choice of Operation 1/2/3/4: "))
n1=float(input("Enter the First Number:"))
n2=float(input("Enter the Second Number:"))

# Apply conditional statements as per user choices


if operation==1:
print("Addition of",n1,"and",n2,"is:",n1+n2)
elif operation==2:
print("Subtraction of",n1,"and",n2,"is:",n1-n2)
elif operation==3:
print("Multiplication of",n1,"and",n2,"is:",n1*n2)
elif operation==4:
print("Division of",n1,"and",n2,"is:",n1/n2)
else:
print("Invalid Choice")

OUTPUT:
Select Operations
[Link]
[Link]
[Link]
[Link]
Enter the choice of Operation 1/2/3/4: 1
Enter the First Number:21
Enter the Second Number:35
Addition of 21.0 and 35.0 is: 56.0

Devi Vijay, Asst prof. , Dept of ISE ,KNSIT 2


PYTHON PROGRAMMING LABORATORY [1BPLC1205B]

Select Operations
[Link]
[Link]
[Link]
[Link]
Enter the choice of Operation 1/2/3/4: 2
Enter the First Number:20
Enter the Second Number:8
Subtraction of 20.0 and 8.0 is: 12.0

Select Operations
[Link]
[Link]
[Link]
[Link]

Enter the choice of Operation 1/2/3/4: 3


Enter the First Number:25
Enter the Second Number:4
Multiplication of 25.0 and 4.0 is: 100.0

Select Operations
[Link]
[Link]
[Link]
[Link]
Enter the choice of Operation 1/2/3/4: 4
Enter the First Number:65
Enter the Second Number:13
Division of 65.0 and 13.0 is: 5.0

Select Operations
[Link]
[Link]
[Link]
[Link]
Enter the choice of Operation 1/2/3/4: 5
Enter the First Number:10
Enter the Second Number:2
Invalid Choice

Devi Vijay, Asst prof. , Dept of ISE ,KNSIT 3


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

1 b. Develop a program to read the name and year of birth of a person.


Displaywhether the person is a senior citizen or not.

# importing Date
from datetime import date

# read name and birth year of the person


Name = input("Enter the name of the person : ")
DOB = int(input("Enter his year of birth : "))

# calculate the present age


currentyear = [Link]().year
Age = currentyear - DOB

# check whether person is senior citizen or not


if (Age > 60):
print(Name, "is a Senior Citizen.")
else:
print(Name,"is not a Senior Citizen.")

OUTPUT:
Enter the name of the person : Akash
Enter the year of birth : 1900
Akash is a Senior Citizen

Enter the name of the person : Naveen


Enter the year of birth : 1992
Naveen is not a Senior Citizen.

[Link] Dept of ISE ,KNSIT 4


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

2 a. Develop a program to generate Fibonacci sequence of length (N). Read N


from the console
# read length of the Fibonacci sequence
n = int(input("Enter the Fibonacci sequence length to be generated : "))

# read first two numbers


firstnumber = 0
secondnumber = 1
print("The Fibonacci series is :")
print(firstnumber)
print(secondnumber)

# generate Fibonacci sequence of length


for i in range(2,n):
newnumber= firstnumber + secondnumber
print(newnumber)
firstnumber = secondnumber
secondnumber = newnumber

OUTPUT:

Enter the Fibonacci sequence length to be generated : 5


The Fibonacci series is :
0
1
1
2
3

[Link] Dept of ISE ,KNSIT 5


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

2 b. Write a python program to create a list and perform the following operations
• Inserting an element
• Removing an element
• Appending an element
• Displaying the length of the list
• Popping an element
• Clearing the list
# 1. Creating a list
my_list=[15,25,35,45,55]
print(f"Initial List:{my_list}")
# 2. Inserting an element
# Inserts 60 at index 5 (sixth position)
my_list.insert(5,60)
print(f"List after inserting 60 at position 5:{my_list}")
# 3. Removing an element
# Removes the second occurrence of 25
my_list.remove(25)
print(f"List after removing an element 25:{my_list}")
# 4. Appending an element
# Adds 78 to the end of the list
my_list.append(78)
print(f"List after adding 78 to the end of list:{my_list}")
# 5. Displaying the length of the list
list_length=len(my_list)
print(f"Length of the List:{list_length}")
# 6. Popping an element
# Removes and returns the last element by default
popped_element=my_list.pop()
print(f"Popped Element (Last Element):{popped_element}")
print(f"List after popping an element:{my_list}")
# 7. Clearing the list
my_list.clear()
print(f"List after cleaning:{my_list}")
OUTPUT:
Initial List:[15, 25, 35, 45, 55]
List after inserting 60 at position 5:[15, 25, 35, 45, 55, 60]
List after removing an element 25:[15, 35, 45, 55, 60]
List after adding 78 to the end of list:[15, 35, 45, 55, 60, 78]
Length of the List:6
Popped Element (Last Element):78
List after popping an element:[15, 35, 45, 55, 60]
List after cleaning:[]

[Link] [Link] ISE,KNSIT 6


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

3 a. Read N numbers from the console and create a list. Develop a program to
print mean, variance and standard deviation with suitable messages.

# importing the square root function


from math import sqrt
# read the N Numbers and to create the List
myList=[]
num=int(input("Enter the number of elements in the List:"))
for i in range(num):
val=int(input("Enter the element:"))
[Link](val)
print("The Length of List 1 is:",len(myList))
print("List Contents:",myList)
# calculate mean
total=0
for element in myList:
total+=element
mean=total/num
#calculate variance and standard deviation
for element in myList:
total+=(element-mean)*(element-mean)
variance=total/num
stdDev=sqrt(variance)
# display mean,variance,standard deviation
print("Mean is:",mean)
print("Variance is:",variance)
print("Standard Deviation is:",stdDev)

OUTPUT:
Enter the number of elements in the List:5
Enter the element:10
Enter the element:12
Enter the element:14
Enter the element:17
Enter the element:19
The Length of List 1 is: 5
List Contents: [10, 12, 14, 17, 19]
Mean is: 14.4
Variance is: 25.04
Standard Deviation is: 5.0039984012787215

[Link] [Link] ISE,KNSIT 7


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

Enter the number of elements in the List:5


Enter the element:15
Enter the element:24
Enter the element:31
Enter the element:42
Enter the element:53
The Length of List 1 is: 5
List Contents: [15, 24, 31, 42, 53]
Mean is: 33.0
Variance is: 211.0
Standard Deviation is: 14.52583904633395

[Link] [Link] ISE,KNSIT 8


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

3 b. Read a multi-digit number (as chars) from the console. Develop a


programto print the frequency of each digit with suitable message.

# Read number from the console


num=input("Enter the Number:")
print("The Entered number is:",num)
# create set-unordered collection of unique elements
uniqDig=set(num)
print("Unique Digit:",uniqDig)
# print frequency of each digit
for element in uniqDig:
print(element,"Occurs",[Link](element),"times")
OUTPUT:

Enter the Number:1421314


The Entered number is: 1421314
Unique Digit: {'2', '3', '1', '4'}
2 Occurs 1 times
3 Occurs 1 times
1 Occurs 3 times
4 Occurs 2 times

Enter the Number:3410124


The Entered number is: 3410124
Unique Digit: {'4', '2', '0', '3', '1'}
4 Occurs 2 times
2 Occurs 1 times
0 Occurs 1 times
3 Occurs 1 times
1 Occurs 2 times

[Link] [Link] ISE,KNSIT 9


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

4 Develop a program to print 10 most frequently appearing words in a text


file. [Hint: Use dictionary with distinct words and their frequency of
occurrences. Sort the dictionary in the reverse order of frequency and display
dictionary slice of first 10 items]

import operator
fname = input('Enter the file name: ')
try:
fhand = open(fname)
counts = dict()
for line in fhand:
words = [Link]()
for word in words:
if word in counts: counts[word] += 1
else:
counts[word] = 1
counts = sorted([Link](), key=[Link](1), reverse=True)
for i in range(10):
print(counts[i])
except:
print('File cannot be opened:', fname)

INPUT:
[Link]
Bapuji Educational Association (BEA) is a conglomerate of over 50 educational
institutions across the city of Davangere. The Association was established in the
year 1958 with the inception of a first grade college in Davangere. Two medical
colleges, two dental colleges, an engineering college - Bapuji Institute of
Engineering & Technology (BIET) and numerous other colleges are associated
with association. The Bapuji Educational Association is one of the oldest and
most prestigious educational associations in Karnataka. Today the association has
grown to be a big tree, like the banyan, with all its twigs and branches. It runs
schools and colleges right from Nursery to Post Graduate courses, from Diploma
to Engineering, Nursing toMedical.

[Link] [Link] ISE,KNSIT 10


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

OUTPUT:

Enter the file name: [Link]


('the', 6)
('of', 5)
('and', 4)
('to', 4)
('Bapuji', 3)
('Association', 3)
('a', 3)
('in', 3)
('with', 3)
('Educational', 2)

[Link] [Link] ISE,KNSIT 11


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

5 Develop a program to read 6 subject marks from the keyboard for a student.
Generate a report that displays the marks from the highest to the lowest score
attained by the student. [Read the marks into a 1-Dimesional array and sort using
the Bubble Sort technique].
def bubble_sort_desc(arr):
n = len(arr)
for i in range(n-1):
for j in range(n-1-i):
if arr[j] < arr[j+1]: # Swap for descending order
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr

# Step 1: Read marks into a list


marks = []
print("Enter marks for 6 subjects:")
for i in range(6):
mark = int(input(f"Enter mark for subject {i+1}: "))
[Link](mark)

# Step 2: Sort using Bubble Sort


sorted_marks = bubble_sort_desc(marks)

# Step 3: Display the report


print("\nReport: Marks from highest to lowest")
for i, mark in enumerate(sorted_marks, start=1):
print(f"{i}. {mark}")

OUTPUT:
Enter marks for 6 subjects:
Enter mark for subject 1: 15
Enter mark for subject 2: 79
Enter mark for subject 3: 5
Enter mark for subject 4: 42
Enter mark for subject 5: 37
Enter mark for subject 6: 3
Report: Marks from highest to lowest
1. 79
2. 42
3. 37
4. 15
5. 5

[Link] [Link] ISE,KNSIT 12


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

6.3

[Link] [Link] ISE,KNSIT 13


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

6 Develop a program to sort the contents of a text file and write the sorted
contents into a separate text file. [Hint: Use string methods strip(), len(), list
methods sort(), append(), and file methods open(), readlines(), and write()].

f = open("[Link]")
words = []
for line in f:
temp = [Link]()
for i in temp:
[Link](i)
[Link]()
[Link]()
outfile = open("[Link]", "w")
for i in words:
[Link](i)
[Link](" ")
[Link]()
INPUT: [Link]

Bapuji Educational Association (BEA) is a conglomerate of over 50


educational institutions across the city of Davangere. The Association was
established in the year 1958 with the inception of a first grade college in
Davangere. Two medical colleges, two dental colleges, an engineering college
- Bapuji Institute of Engineering & Technology (BIET) and numerous other
colleges are associated with association. The Bapuji Educational Association
is one of the oldest and most prestigious educational associations in
Karnataka. Today the association has grown to be a big tree, like the banyan,
with all its twigs and branches. It runs schools and colleges right from
Nursery to Post Graduate courses, from Diploma to Engineering, Nursing to
Medical.

OUTPUT: [Link]
& (BEA) (BIET) - 1958 50 Association Association Association Bapuji Bapuji
Bapuji Davangere. Davangere. Diploma Educational Educational Engineering
Engineering, Graduate Institute It Karnataka. Medical. Nursery Nursing Post
Technology The The Today Two a a a across all an andand and and are associated
association association. associations banyan, be big branches. city college college
colleges colleges colleges, colleges, conglomerate courses, dental educational
educational engineering established first from from grade grown has in in in
inception institutions is is its like medical most numerous of of of of of oldest
one other over prestigious right runs schools the the the the the the to to to to tree,
twigs twowas with with with year

[Link] DEPT OF ISE ,KNSIT 14


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

7 Write a function named DivExp which takes two parameters a, b returns


c(c=a/b). write suitable assertion for a>0 in function DivExp and raise an
exception for when b=0. develop a suitable program which reads two values
from the console and calls a function DivExp.

import sys
def DivExp(a,b):
assert a>0, "a should be greater than 0"
try:
c = a/b
except ZeroDivisionError:
print("Value of b cannot be zero")
[Link](0)
else:
return c

val1 = int(input("Enter a value for a : "))


val2 = int(input("Enter a value for b : "))

val3 = DivExp(val1, val2)

print("The result of",val1, "/", val2, "=", val3)

OUTPUT:
1) Enter a value of a:
20Enter a value of
b: 2
The result of 20/2 = 10.0

2) Enter a value of a:
0 Enter a value of b:
20
a should be greater than 0.

3) Enter the value of a:


20Enter the value
of b: 0
Value of b cannot be zero.

[Link] DEPT OF ISE ,KNSIT 15


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

8 Define a function which takes TWO objects representing complex numbers


and returns new complex number with a addition of two complex numbers.
Define a suitable class ‘Complex’ to represent the complex number. Develop a
program to read N (N >=2) complexnumbers and to compute the addition of
N complex numbers.

class Complex:
def init (self, real=0, imag=0):
[Link] = real
[Link] = imag

def str (self):


# Display complex number as a + bi or a - bi
if [Link] >= 0:
return f"{[Link]} + {[Link]}i"
else:
return f"{[Link]} - {abs([Link])}i"

# Function to add two complex numbers


def add_complex(c1, c2):
return Complex([Link] + [Link], [Link] + [Link])

# Main program
if name == " main ":
N = int(input("Enter number of complex numbers (N >= 2): "))

if N < 2:
print("N must be at least 2")
else:
print("Enter the complex numbers:")
real = int(input("Real part of 1st number: "))
imag = int(input("Imaginary part of 1st number: "))
result = Complex(real, imag)

for i in range(2, N + 1):


real = int(input(f"Real part of {i}th number: "))
imag = int(input(f"Imaginary part of {i}th number: "))
c = Complex(real, imag)
result = add_complex(result, c)

print("\nThe sum of given complex numbers is:", result)

[Link] DEPT OF ISE ,KNSIT 16


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

OUTPUT:
Enter number of complex numbers (N >= 2): 3
Enter the complex numbers:
Real part of 1st number: 2
Imaginary part of 1st number: 3
Real part of 2th number: 4
Imaginary part of 2th number: -5
Real part of 3th number: 1
Imaginary part of 3th number: 2

The sum of given complex numbers is: 7 + 0i

[Link] DEPT OF ISE ,KNSIT 17


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

9 Text Analysis Tool: Build a tool that analyses a paragraph: frequency of each
word, longest word, number of sentences, etc.
import string
def text_analysis(paragraph):
# Remove punctuation for word processing
translator = [Link]('', '',
[Link])
cleaned_text = [Link](translator)

# Split into words


words = cleaned_text.split()
word_count = len(words)

# Frequency of words (case insensitive)


freq = {}
for word in words:
word_lower = [Link]()
freq[word_lower] = [Link](word_lower,
0) + 1

# Longest word
longest_word = max(words, key=len) if
words else ""

# Sentence count (using '.', '?', '!')


sentences = [[Link]() for s in
[Link]("?", ".").replace("!",
".").split(".") if [Link]()]
sentence_count = len(sentences)

# Results
result = {
"Total words": word_count,
"Word frequencies": freq,

[Link] DEPT OF ISE ,KNSIT 18


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]
"Longest word": longest_word,
"Number of sentences": sentence_count
}
return result

# Example usage
if name == " main ":
paragraph = input("Enter a paragraph: ")
analysis = text_analysis(paragraph)
print("\n--- Text Analysis ---")
for key, value in [Link]():
print(f"{key}: {value}")
OUTPUT:
Enter a paragraph: hi hellow how are you?

--- Text Analysis ---


Total words: 5
Word frequencies: {'hi': 1, 'hellow': 1, 'how':
1, 'are': 1, 'you': 1}
Longest word: hellow
Number of sentences: 1

[Link] DEPT OF ISE ,KNSIT 19


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]
10. Develop Data Summary Generator: Read a CSV file (like COVID data or
weather stats), convert to dictionary form, and allow the user to run summary
queries: max, min, average by column.
import csv

def read_csv_to_dict(filename):
"""
Reads a CSV file and returns a list of dictionaries.
Each row is stored as a dictionary with column headers as keys.
"""
with open(filename, 'r', newline='', encoding="utf-8") as file:
reader = [Link](file)
data = [row for row in reader]
return data

def convert_column_to_float(data, column):


"""
Extracts values from a column and converts them to float if possible.
Ignores missing or non-numeric values.
"""
values = []
for row in data:
try:
[Link](float(row[column]))
except (ValueError, KeyError):
continue
return values

def summarize_column(data, column, operation):


"""
Performs summary operation (max, min, avg) on the given column.
"""
values = convert_column_to_float(data, column)
if not values:
return f"No numeric data found in column '{column}'"

if operation == "max":
return max(values)
elif operation == "min":
return min(values)
elif operation == "avg":
return sum(values) / len(values)
else:

[Link] DEPT OF ISE ,KNSIT 20


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]
return "Invalid operation. Choose from: max, min, avg"

def main():
filename = input("Enter CSV filename (e.g., covid_data.csv): ")
data = read_csv_to_dict(filename)

print("Available columns:", list(data[0].keys()))

while True:
column = input("\nEnter column name (or 'exit' to quit): ")
if [Link]() == 'exit':
break

operation = input("Enter operation (max, min, avg): ").lower()


result = summarize_column(data, column, operation)
print(f"{[Link]()} of {column}: {result}")

if name == " main ":


main()

[Link]
Date,Temperature,Humidity
2023-09-01,32,65
2023-09-02,34,70
2023-09-03,31,60

OUTPUT:
Enter CSV filename (e.g., covid_data.csv): [Link]
Available columns: ['Date', 'Temperature', 'Humidity']

Enter column name (or 'exit' to quit): Temperature


Enter operation (max, min, avg): avg
AVG of Temperature: 32.333333333333336

Enter column name (or 'exit' to quit): Humidity


Enter operation (max, min, avg): max
MAX of Humidity: 70

[Link] DEPT OF ISE ,KNSIT 21


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

11 Develop Student Grade Tracker: Accept multiple students’ names and marks.
Store them in a list of tuples or dictionaries. Display summary reports (average,
topper, etc.).
# Student Grade Tracker

def input_students():
students = []
n = int(input("Enter number of students: "))
for i in range(n):
name = input(f"\nEnter name of student {i+1}: ")
marks = []
subjects = int(input(f"How many subjects for {name}? "))
for j in range(subjects):
mark = float(input(f" Enter marks for subject {j+1}: "))
[Link](mark)
[Link]({"name": name, "marks": marks})
return students

def display_summary(students):
print("\n--- Student Grade Summary ---")
topper = None
highest_avg = -1
total_avg_sum = 0

for student in students:


avg = sum(student["marks"]) / len(student["marks"])
total_avg_sum += avg
print(f"{student['name']} -> Marks: {student['marks']}, Average: {avg:.2f}")

if avg > highest_avg:


highest_avg = avg
topper = student["name"]

overall_class_avg = total_avg_sum / len(students)


print("\nClass Average:", round(overall_class_avg, 2))
print("Topper:", topper, "with average", round(highest_avg, 2))

# Main program

[Link] DEPT OF ISE ,KNSIT 22


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]
students = input_students()
display_summary(students)

OUTPUT:
Enter number of students: 3

Enter name of student 1: Praveen


How many subjects for Praveen? 3
Enter marks for subject 1: 80
Enter marks for subject 2: 90
Enter marks for subject 3: 85

Enter name of student 2: Akash


How many subjects for Akash? 2
Enter marks for subject 1: 70
Enter marks for subject 2: 75

Enter name of student 3: Avinash


How many subjects for Avi? 3
Enter marks for subject 1: 95
Enter marks for subject 2: 92
Enter marks for subject 3: 88

--- Student Grade Summary ---


Praveen -> Marks: [80.0, 90.0, 85.0], Average: 85.00
Akash -> Marks: [70.0, 75.0], Average: 72.50
Avinash -> Marks: [95.0, 92.0, 88.0], Average: 91.67

Class Average: 83.06


Topper: Avinash with average 91.67

[Link] DEPT OF ISE ,KNSIT 23


PYTHON PROGRAMMING LABORATORY [1BPLC105B/205B]

12 Develop a program to display contents of a folder recursively (Directory) having


sub-folders and files (name and type).
import os

def list_directory_contents(path, indent=0):


try:
# List all items in the given path
items = [Link](path)
except PermissionError:
print(" " * indent + f"[ACCESS DENIED] {path}")
return

for item in items:


full_path = [Link](path, item)
if [Link](full_path):
print(" " * indent + f"[DIR ] {item}")
# Recursively list contents of subdirectory
list_directory_contents(full_path, indent + 4)
else:
print(" " * indent + f"[FILE] {item}")

# Run program
folder_path = input("Enter directory path: ")
if [Link](folder_path):
list_directory_contents(folder_path)
else:
print("Invalid path!")

OUTPUT:
[DIR ] subfolder1
[FILE] [Link]
[DIR ] subsubfolder
[FILE] [Link]
[DIR ] subfolder2
[FILE] [Link]
[FILE] [Link]

[Link] DEPT OF ISE ,KNSIT 24

You might also like