# 1st program fds

unknown
python
a year ago
8.6 kB
4
Indexable
Never
```
Experiment No. 1 : In a second year computer engineering class, group A students play cricket, group B students play

badminton and group C students play football.

Write a python program using functions to compute following:

a) List of students who play both cricket and badminton.

b) List of students who play either cricket or badminton but not both.

c) Number of students who play neither cricket nor badminton.

d) Number of students who play cricket and football but not badminton.

(NOTE : While realising the group, duplicate entries should be avoided. Do not use SET built-in functions)

'''

# Function for removing duplicate entries from the group

def removeDuplicate(d):

lst=[]

for i in d:

if i not in lst:

lst.append(i)

return lst

#<---------------------------------------------------------------------------------------->

# Function for finding intersection between two sets (A&B)

def intersection(lst1,lst2):

lst3=[]

for val in lst1:

if val in lst2:

lst3.append(val)

return lst3

#<------------------------------------------------------------------------------------------>

# Function for finding union of two sets (A|B)

def union(lst1,lst2):

lst3=lst1.copy()

for val in lst2:

if val not in lst3:

lst3.append(val)

return lst3

#<------------------------------------------------------------------------------------------->

# Function for finding difference between two sets (A-B)

def diff(lst1,lst2):

lst3=[]

for val in lst1:

if val not in lst2:

lst3.append(val)

return lst3

#<---------------------------------------------------------------------------------------------->

# Function for finding symmetric difference of two sets (A^B)

def sym_diff(lst1,lst2):

lst3=[]

D1=diff(lst1,lst2)

print("Difference between Cricket and Badminton (C-B) is : ", D1)

D2=diff(lst2,lst1)

print("Difference between Badminton and Cricket (B-C) is : ", D2)

lst3=union(D1,D2)

return lst3

#<------------------------------------------------------------------------------------------------>

# Functon for finding List of students who play both cricket and badminton

def CB(lst1,lst2):

lst3=intersection(lst1,lst2)

print("\n\nList of students who play both cricket and badminton is : ", lst3)

return len(lst3)

#<------------------------------------------------------------------------------------------------>

# Function for finding List of students who play either cricket or badminton but not both

def eCeB(lst1,lst2):

lst3=sym_diff(lst1,lst2)

print("\nList of students who play either cricket or badminton but not both is : ",lst3)

return len(lst3)

#<-------------------------------------------------------------------------------------------------->

# Function for finding Number of students who play neither cricket nor badminton

def nCnB(lst1,lst2,lst3):

lst4=diff(lst1,union(lst2,lst3))

print("\n\nList of students who play neither cricket nor badminton is : ",lst4)

return len(lst4)

#<--------------------------------------------------------------------------------------------------->

# Function for finding Number of students who play cricket and football but not badminton

def CBnF(lst1,lst2,lst3):

lst4=diff(intersection(lst1,lst2),lst3)

print("\n\nList of students who play cricket and football but not badminton is : ",lst4)

return len(lst4)

#<----------------------------------------------------------------------------------------------------->

# Main function

# Creating an empty list for SE COMP

SEComp = []

n = int(input("\nEnter number of students in SE COMP: "))

print("Enter the names of",n,"students (Please press ENTER after entering each students name) :")

for i in range(0, n):

ele = input()

print("Original list of students in SEComp : " + str(SEComp))

#<------------------------------------------------------------------------------------------------------->

# Creating an empty list for Cricket

Cricket = []

n = int(input("\n\nEnter number of students who play cricket : "))

print("Enter the names of",n,"students who play cricket (Please press ENTER after entering each students name) :")

for i in range(0, n):

ele = input()

print("Original list of students playing cricket is :" +str(Cricket))

Cricket=removeDuplicate(Cricket)

print("The list of students playing cricket after removing duplicates : " +str(Cricket))

#<------------------------------------------------------------------------------------------------------->

# Creating an empty list for Football

Football = []

n = int(input("\n\nEnter number of students who play football : "))

print("Enter the name of",n,"students who play football (Please press ENTER after entering each students name) :")

for i in range(0, n):

ele = input()

print("Original list of students playing football :" +str(Football))

Football=removeDuplicate(Football)

print("The list of students playing football after removing duplicates : " +str(Football))

#<-------------------------------------------------------------------------------------------------------->

# Creating an empty list for Badminton

n = int(input("\n\nEnter number of students who play badminton : "))

print("Enter the name of",n,"students who play badminton (Please press ENTER after entering each students name) :")

for i in range(0, n):

ele = input()

print("The list of students playing badminton after removing duplicates : " +str(Badminton))

#<---------------------------------------------------------------------------------------------------------->

flag=1

while flag==1:

print("1. List of students who play both cricket and badminton")

print("2. List of students who play either cricket or badminton but not both")

print("3. List of students who play neither cricket nor badminton")

print("4. Number of students who play cricket and football but not badminton")

print("5. Exit\n")

ch=int(input("Enter your Choice (from 1 to 5) :"))

if ch==1:

print("Number of students who play both cricket and badminton : ", CB(Cricket,Badminton))

a = input("\n\nDo you want to continue (yes/no) :")

if a == "yes":

flag = 1

else:

flag = 0

print("Thanks for using this program!")

elif ch==2:

print("Number of students who play either cricket or badminton but not both : ", eCeB(Cricket, Badminton))

a = input("\n\nDo you want to continue (yes/no) :")

if a == "yes":

flag = 1

else:

flag = 0

print("Thanks for using this program!")

elif ch==3:

print("Number of students who play neither cricket nor badminton : ", nCnB(SEComp,Cricket,Badminton))

a = input("\n\nDo you want to continue (yes/no) :")

if a == "yes":

flag = 1

else:

flag = 0

print("Thanks for using this program!")

elif ch==4:

print("Number of students who play cricket and football but not badminton : ", CBnF(Cricket,Football,Badminton))

a = input("\n\nDo you want to continue (yes/no) :")

if a == "yes":

flag = 1

else:

flag = 0

print("Thanks for using this program!")

elif ch==5:

flag=0

print("Thanks for using this program!")

else:

print("!!Wrong Choice!! ")

a=input("\n\nDo you want to continue (yes/no) :")

if a=="yes":

flag=1

else:

flag=0

print("Thanks for using this program!")
```