0% found this document useful (0 votes)
38 views

Computer Science With Python (083) Practical File 2021-2022

Hhhouy

Uploaded by

Twilight Dragon
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)
38 views

Computer Science With Python (083) Practical File 2021-2022

Hhhouy

Uploaded by

Twilight Dragon
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
You are on page 1/ 19

CLASS-XII

SUBJECT – COMPUTER SCIENCE WITH PYTHON (083)


PRACTICAL FILE SOLUTION (Session 2021-22)
Prepared By- Debajit Dey

PRACTICAL
NO. OBJECTIVE & SOLUTION
1. Write a program in python to check a number whether it is prime or not.
num=int(input("Enter the number: "))
for i in range(2,num):
if num%i==0:
SOURCE print(num, "is not prime number")
CODE: break;
else:
print(num,"is prime number")

OUTPUT:

2. Write a program to check a number whether it is palindrome or not.


num=int(input("Enter a number : "))
n=num
res=0
while num>0:
rem=num%10
SOURCE res=rem+res*10
CODE: num=num//10
if res==n:
print("Number is Palindrome")
else:
print("Number is not Palindrome")

OUTPUT:

3. Write a program to display ASCII code of a character and vice versa.


var=True
while var:
SOURCE choice=int(input("Press-1 to find the ordinal value of a character
CODE: \nPress-2 to
find a character of a value\n"))
if choice==1:
ch=input("Enter a character : ")
print(ord(ch))
elif choice==2:
val=int(input("Enter an integer value: "))
print(chr(val))
else:
print("You entered wrong choice")

print("Do you want to continue? Y/N")


option=input()
if option=='y' or option=='Y':
var=True
else:
var=False

Press-1 to find the ordinal value of a character


Press-2 to find a character of a value
1
OUTPUT:
Enter a character : a
97
Do you want to continue? Y/N
Y
Press-1 to find the ordinal value of a character
Press-2 to find a character of a value
2
Enter an integer value: 65
A
Do you want to continue? Y/N

Write a function SwapNumbers( ) to swap two numbers and display the


4.
numbers before swapping and after swapping.
def SwapNumbers(x,y):
a, b = y, x
print("After Swap:")
print("Num1: ", a)
print("Num2: ", b)
SOURCE
CODE: # main program
Num1=int(input("Enter Number-1: "))
Num2=int(input("Enter Number-2: "))
print("Before Swap: ")
print("Num1: ", Num1)
print("Num2: ", Num2)
SwapNumbers(Num1, Num2)
Enter Number-1: 10
Enter Number-2: 20
Before Swap:
Num1: 10
OUTPUT: Num2: 20
After Swap:
Num1: 20
Num2: 10

5. Write a program to find the sum of all elements of a list using recursion.
def SumAll(L):
n=len(L)
if n==1:
return L[0]
SOURCE
else:
CODE:
return L[0]+SumAll(L[1:])
# main program
LS=eval(input("Enter the elements of list: "))
total=SumAll(LS)
print("Sum of all elements is: ", total)

Enter the elements of list: [2,5,6,12,3,2]


OUTPUT:
Sum of all elements is: 30
6. Write a program to calculate the factorial of an integer using recursion.
def factorial(n):
if n == 1:
return n
else:
return n*factorial(n-1)

SOURCE num=int(input("enter the number: "))


CODE: if num < 0:
print("Sorry, factorial does not exist for negative numbers")
elif num == 0:
print("The factorial of 0 is 1")
else:
print("The factorial of ",num," is ", factorial(num))

enter the number: 5


OUTPUT: The factorial of 5 is 120
7. Write a program to print fibonacci series using recursion.
def fibonacci(n):
if n<=1:
return n
else:
SOURCE return(fibonacci(n-1)+fibonacci(n-2))
CODE:
num=int(input("How many terms you want to display: "))
for i in range(num):
print(fibonacci(i)," ", end=" ")

How many terms you want to display: 8


OUTPUT: 0 1 1 2 3 5 8 13

8. Write a recursive python program to test if a string is palindrome or not.


def isStringPalindrome(str):
if len(str)<=1:
SOURCE return True
CODE: else:
if str[0]==str[-1]:
return isStringPalindrome(str[1:-1])
else:
return False

# main

s=input("Enter the string : ")


y=isStringPalindrome(s)

if y==True:
print("String is Palindrome")
else:
print("String is Not Palindrome")

Enter the string : madam


OUTPUT: String is Palindrome

Write a program to generate random numbers between 1 to 6 and check


9.
whether a user won a lottery or not.
import random
SOURCE n=random.randint(1,6)
CODE: guess=int(input("Enter a number between 1 to 6 :"))
if n==guess:
print("Congratulations, You won the lottery ")
else:
print("Sorry, Try again, The lucky number was : ", n)

Enter a number between 1 to 6 : 4


OUTPUT:
Sorry, Try again, The lucky number was : 1
10. Write a program to count the number of vowels present in a text file.
fin=open("D:\\python programs\\Book.txt",'r')
str=fin.read( )
count=0
for i in str:
SOURCE
if i=='a' or i=='e' or i=='i' or i=='o' or i=='u':
CODE:
count=count+1

print(count)

9
OUTPUT:

Write a program to write those lines which have the character 'p' from
11.
one text file to another text file.
fin=open("E:\\book.txt","r")
fout=open("E:\\story.txt","a")
s=fin.readlines( )
for j in s:
SOURCE if 'p' in j:
CODE: fout.write(j)

fin.close()
fout.close()

**Write contents of book.txt and story.txt


OUTPUT:

12. Write a program to count number of words in a file.


fin=open("D:\\python programs\\Book.txt",'r')
str=fin.read( )
L=str.split()
SOURCE count_words=0
CODE: for i in L:
count_words=count_words+1
print(count_words)

OUTPUT: 16
13. Write a python program to write student data in a binary file.
import pickle
list =[ ] # empty list
while True:
roll = input("Enter student Roll No:")
sname = input("Enter student Name :")
student = {"roll":roll,"name":sname}
SOURCE
list.append(student)
CODE:
choice= input("Want to add more record(y/n) :")
if(choice=='n'):
break
file = open("student.dat","wb")
pickle.dump(list, file)
file.close( )

OUTPUT: Enter student Roll No:1201


Enter student Name :Anil
Want to add more record(y/n) :y
Enter student Roll No:1202
Enter student Name :Sunil
Want to add more record(y/n) :n

14. Write a python program to read student data from a binary file.
import pickle
file = open("student.dat", "rb")
SOURCE
list = pickle.load(file)
CODE:
print(list)
file.close( )

OUTPUT: [{'roll': '1201', 'name': 'Anil'}, {'roll': '1202', 'name': 'Sunil'}]


15. Write a python program to modify/update student data in a binary file.
import pickle
SOURCE roll = input('Enter roll number whose name you want to update in binary
CODE: file :')
file = open("student.dat", "rb+")
list = pickle.load(file)
found = 0
lst = [ ]
for x in list:
if roll in x['roll']:
found = 1
x['name'] = input('Enter new name: ')
lst.append(x)
if found == 1:
file.seek(0)
pickle.dump(lst, file)
print("Record Updated")
else:
print('roll number does not exist')

file.close( )

Enter roll number whose name you want to update in binary file :1202
Enter new name: Harish
OUTPUT:
Record Updated

16. Write a python program to delete student data from a binary file.
import pickle
roll = input('Enter roll number whose record you want to delete:')
file = open("student.dat", "rb+")
list = pickle.load(file)
found = 0
lst = []
for x in list:
if roll not in x['roll']:
lst.append(x)
SOURCE else:
CODE: found = 1

if found == 1:
file.seek(0)
pickle.dump(lst, file)
print("Record Deleted ")
else:
print('Roll Number does not exist')
file.close( )

OUTPUT: Enter roll number whose record you want to delete:1201


Record Deleted

17. Write a python program to search a student record in a binary file.


import pickle
roll = input('Enter roll number that you want to search in binary file :')
file = open("student.dat", "rb")
list = pickle.load(file)
file.close( )
SOURCE for x in list:
CODE: if roll in x['roll']:
print("Name of student is:", x['name'])
break
else:
print("Record not found")

Enter roll number that you want to search in binary file :1202
OUTPUT: Name of student is: Harish

18. Write a program to perform read and write operation with .csv file.
import csv
def readcsv():
with open('C:\\ data.csv','rt')as f:
data = csv.reader(f)
for row in data:
print(row)

def writecsv( ):
with open('C:\\data.csv', mode='a', newline='') as file:
SOURCE writer = csv.writer(file, delimiter=',', quotechar='"')
CODE:
#write new record in file
writer.writerow(['4', 'Devansh', 'Arts', '404'])

print("Press-1 to Read Data and Press-2 to Write data: ")


a=int(input())
if a==1:
readcsv()
elif a==2:
writecsv()
else:
print("Invalid value")
Press-1 to Read Data and Press-2 to Write data:
1
['Roll No.', 'Name of student', 'stream', 'Marks']
['1', 'Anil', 'Arts', '426']
OUTPUT:
['2', 'Sujata', 'Science', '412']
['3', 'Shivani', 'Commerce', '448']
['4', 'Devansh', 'Arts', '404']

19. Write a program to create a library in python and import it in a program.


#Rect.py
class Rectangle:
def init (self):
print("Rectangle")

def Area(self, length, width):


self.l=length
self.w=width
print("Area of Rectangle is : ", self.l*self.w)

SOURCE #Sq.py
CODE: class Square:
def init (self):
print("Square")
def Area(self, side):
self.a=side
print("Area of square is : ", self.a*self.a)

#Tri.py
class Triangle:
def init (self):
print("Trinagle")

def Area(self, base, height):


self.b=base
self.h=height
ar= (1/2)*self.b*self.h
print("Area of Triangle is : ", ar )

#main.py
from Shape import Rect
from Shape import Sq
from Shape import Tri

r=Rect.Rectangle( ) #Create an object r for Rectangle class


r.Area(10,20) # Call the module Area( ) of Rectangle class by
passing argument

s=Sq.Square( ) #Create an object s for Square class


s.Area(10) # Call the module Area( ) of Square class by passing
argument

t=Tri.Triangle( ) #Create an object t for Triangle class


t.Area(6,8) # Call the module Area( ) of Triangle class by passing
argument

Rectangle
Area of Rectangle is : 200
Square
OUTPUT: Area of square is : 100
Trinagle
Area of Triangle is : 24.0

20. Write a program for linear search.


L=eval(input("Enter the elements: "))
n=len(L)
item=eval(input("Enter the element that you want to search : "))
for i in range(n):
SOURCE if L[i]==item:
CODE: print("Element found at the position :", i+1)
break
else:
print("Element not Found")

Enter the elements: 23,67,44,99,65,33,78,12


Enter the element that you want to search : 33
OUTPUT:
Element found at the position : 6

21. Write a program for bubble sort.


L=eval(input("Enter the elements:"))
SOURCE n=len(L)
CODE: for p in range(0,n-1):
for i in range(0,n-1):
if L[i]>L[i+1]:
t=L[i]
L[i]=L[i+1]
L[i+1]=t
print("The sorted list is : ", L)

Enter the elements:[67,13,89,34,65,8,74,19]


OUTPUT: The sorted list is : [8, 13, 19, 34, 65, 67, 74, 89]

22. Write a menu based program to perform the operation on stack in python.
def push(n):
L.append(n)
print("Element inserted successfully")

def Pop( ):
if len(L)==0:
print("Stack is empty")
else:
print("Deleted element is: ", L.pop( ))

def Display( ):
SOURCE print("The list is : ", L)
CODE:
def size( ):
print("Size of list is: ", len(L))

def Top( ):
if len(L)==0:
print("Stack is empty")
else:
print("Value of top is: ", L[len(L)-1])

#main program
L=[ ]
print("MENU BASED STACK")
cd=True
while cd:
print(" 1. Push ")
print(" 2. Pop ")
print(" 3. Display ")
print(" 4. Size of Stack ")
print(" 5. Value at Top ")
choice=int(input("Enter your choice (1-5) : "))

if choice==1:
val=input("Enter the element: ")
push(val)
elif choice==2:
Pop( )
elif choice==3:
Display( )
elif choice==4:
size( )
elif choice==5:
Top( )
else:
print("You enetered wrong choice ")

print("Do you want to continue? Y/N")


option=input( )
if option=='y' or option=='Y':
var=True
else:
var=False
MENU BASED STACK
1. Push
2. Pop
3. Display
4. Size of Stack
5. Value at Top
Enter your choice (1-5) : 1
Enter the element: 45
Do you want to continue? Y/N
y
OUTPUT: 1. Push
2. Pop
3. Display
4. Size of Stack
5. Value at Top
Enter your choice (1-5) : 3
['45']
Do you want to continue? Y/N
y
1. Push
2. Pop
3. Display
4. Size of Stack
5. Value at Top
Write a menu based program to perform the operation on queue in
23.
python.
def Enqueue(n):
L.append(n)
if len(L)==1:
f=r=L[0]
else:
r=L[len(L)-1]
f=L[0]

def Dequeue():
if len(L)==0:
print("Queue is empty")
elif len(L)==1:
print("Deleted element is: ", L.pop(0))
print("Now queue is empty")
SOURCE
else:
CODE: print("Deleted element is: ", L.pop(0))

def Display():
if len(L)==0:
print("Queue is empty")
else:
print(L)
r=L[len(L)-1]
f=L[0]
print("Front is : ", f)
print("Rear is : ", r)

def size():
print("Size of queue is: ",len(L))

def FrontRear():
if len(L)==0:
print("Queue is empty")
else:
r=L[len(L)-1]
f=L[0]
print("Front is : ", f)
print("Rear is : ", r)

#main program
L =[]
print("MENU BASED QUEUE")
cd=True
while cd:
print(" 1. ENQUEUE ")
print(" 2. DEQUEUE ")
print(" 3. Display ")
print(" 4. Size of Queue ")
print(" 5. Value at Front and rear ")

choice=int(input("Enter your choice (1-5) : "))

if choice==1:
val=input("Enter the element: ")
Enqueue(val)
elif choice==2:
Dequeue( )
elif choice==3:
Display( )
elif choice==4:
size( )
elif choice==5:
FrontRear()
else:
print("You enetered wrong choice ")

print("Do you want to continue? Y/N")


option=input( )
if option=='y' or option=='Y':
cd=True
else:
cd=False
MENU BASED QUEUE
1. ENQUEUE
2. DEQUEUE
OUTPUT: 3. Display
4. Size of Queue
5. Value at Front and rear
Enter your choice (1-5) : 1
Enter the element: 10
Do you want to continue? Y/N
y
1. ENQUEUE
2. DEQUEUE
3. Display
4. Size of Queue
5. Value at Front and rear
Enter your choice (1-5) : 1
Enter the element: 45
Do you want to continue? Y/N
y
1. ENQUEUE
2. DEQUEUE
3. Display
4. Size of Queue
5. Value at rear
Enter your choice (1-5) : 3
['10', '45']
Do you want to continue? Y/N
y
1. ENQUEUE
2. DEQUEUE
3. Display
4. Size of Queue
5. Value at Front and rear
Enter your choice (1-5) : 2
Deleted element is : 10
Do you want to continue? Y/N

Create database, Show databases, USE, Create table, Show Tables,


24.
Describe, Rename, Alter, Select, From, Where, Insert, Update commands
#Command to create a database
mysql> CREATE DATABASE RAILWAYS;

# Command to show the available databases


mysql> SHOW DATABASES;

SOLUTION:
#Command to enter in a databse
mysql> USE RAILWAYS;
Database changed

#Create a table in the database


mysql> Create table TRAIN(Train_No int primary key, Tname
varchar(30), Source varchar(10), Destination varchar(10), fare float(6,2),
start_date date);

#Show the available tables in the database


mysql> Show tables;

# Show the details of a table


mysql> describe Train;
# Rename/Change the name of the table
mysql> Alter table Train rename Traindetails;

#Insert row in the table


mysql> insert into Traindetails values(22454, “Rajdhani Exp”, “Mumbai”,
“Delhi”, 2856.20, “2019-06-22”);

#Show all data/rows of the table


mysql> SELECT * FROM TRAINDETAILS;

#Change/Modify the fare of train to 3000.00 whose train no. is 22454


mysql> update Traindetails set fare = 3000.00 where Train_No=22454;
OUTPUT: Write output accordingly
Queries using DISTINCT, BETWEEN, IN, LIKE, IS NULL, ORDER BY,
25.
GROUP BY, HAVING
Display the name of departments. Each department should be displayed
A.
once.
SELECT DISTINCT(Dept)
SOLUTION: FROM EMPLOYEE;

Find the name and salary of those employees whose salary is between
B.
35000 and 40000.
SELECT Ename, salary
FROM EMPLOYEE
SOLUTION:
WHERE salary BETWEEN 35000 and 40000;

Find the name of those employees who live in guwahati, surat or jaipur
C.
city.
SELECT Ename, city
FROM EMPLOYEE
SOLUTION:
WHERE city IN(„Guwahati‟,‟Surat‟,‟Jaipur‟);

D. Display the name of those employees whose name starts with „M‟.
SELECT Ename
FROM EMPLOYEE
SOLUTION:
WHERE Ename LIKE „M%‟;

List the name of employees not assigned to any department.


E.

SELECT Ename
FROM EMPLOYEE
SOLUTION:
WHERE Dept IS NULL;

F. Display the list of employees in descending order of employee code.


SELECT *
FROM EMPLOYEE
SOLUTION:
ORDER BY ecode DESC;

G. Find the average salary at each department.


SELECT Dept, avg(salary)
FROM EMPLOYEE
SOLUTION:
group by Dept;

Find maximum salary of each department and display the name of that
H. department which has maximum salary more than 39000.

Queries for Aggregate functions- SUM( ), AVG( ), MIN( ), MAX( ), COUNT(


26.
)
a. Find the average salary of the employees in employee table.
Solution:- SELECT avg(salary)
FROM EMPLOYEE;
b. Find the minimum salary of a female employee in EMPLOYEE
table.
Solution:- SELECT Ename, min(salary)
FROM EMPLOYEE
WHERE sex=‟F‟;
c. Find the maximum salary of a male employee in EMPLOYEE
table.
Solution:- SELECT Ename, max(salary)
FROM EMPLOYEE
WHERE sex=‟M‟;
d. Find the total salary of those employees who work in Guwahati
city.
Solution:- SELECT sum(salary)
FROM EMPLOYEE
WHERE city=‟Guwahati‟;
e. Find the number of tuples in the EMPLOYEE relation.
Solution:- SELECT count(*)
FROM EMPLOYEE;

27. Write a program to connect Python with MySQL using database connectivity
and perform the following operations on data in database: Fetch, Update
and delete the data.

A. CREATE A TABLE
import mysql.connector
demodb = mysql.connector.connect(host="localhost", user="root",
passwd="computer", database="EDUCATION")
democursor=demodb.cursor( )
SOLUTION: democursor.execute("CREATE TABLE STUDENT (admn_no int primary
key, sname varchar(30), gender char(1), DOB date, stream varchar(15),
marks float(4,2))")

B. INSERT THE DATA

import mysql.connector
SOLUTION:
demodb = mysql.connector.connect(host="localhost", user="root",
passwd="computer", database="EDUCATION")
democursor=demodb.cursor( )
democursor.execute("insert into student values (%s, %s, %s, %s, %s,
%s)", (1245, 'Arush', 'M', '2003-10-04', 'science', 67.34))
demodb.commit( )

C. FETCH THE DATA


import mysql.connector
demodb = mysql.connector.connect(host="localhost", user="root",
passwd="computer", database="EDUCATION")
democursor=demodb.cursor( )
SOLUTION:
democursor.execute("select * from student")
for i in democursor:
print(i)
D. UPDATE THE RECORD
import mysql.connector
demodb = mysql.connector.connect(host="localhost", user="root",
passwd="computer", database="EDUCATION")
democursor=demodb.cursor( )
SOLUTION: democursor.execute("update student set marks=55.68 where
admn_no=1356")
demodb.commit( )
E. DELETE THE DATA
import mysql.connector
demodb = mysql.connector.connect(host="localhost", user="root",
passwd="computer", database="EDUCATION")
SOLUTION: democursor=demodb.cursor( )
democursor.execute("delete from student where admn_no=1356")
demodb.commit( )

You might also like