-
Notifications
You must be signed in to change notification settings - Fork 30
Expand file tree
/
Copy pathGroupB_Practical14(python).py
More file actions
112 lines (80 loc) · 3.24 KB
/
GroupB_Practical14(python).py
File metadata and controls
112 lines (80 loc) · 3.24 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
'''
Experiment Number 14: Write a python program to store first year percentage of students in an array.
Write function for sorting array of floating point numbers in ascending order using:
a) Selection Sort
b) Bubble Sort and display top five scores
'''
# Function for Selection Sort of elements
def Selection_Sort(marks):
for i in range(len(marks)):
# Find the minimum element in remaining unsorted array
min_idx = i
for j in range(i + 1, len(marks)):
if marks[min_idx] > marks[j]:
min_idx = j
# Swap the minimum element with the first element
marks[i], marks[min_idx] = marks[min_idx], marks[i]
print("Marks of students after performing Selection Sort on the list : ")
for i in range(len(marks)):
print(marks[i])
#<--------------------------------------------------------------------------------------->
# Function for Bubble Sort of elements
def Bubble_Sort(marks):
n = len(marks)
# Traverse through all array elements
for i in range(n - 1):
# Last i elements are already in place
for j in range(0, n - i - 1):
# Traverse the array from 0 to n-i-1
# Swap if the element found is greater than the next element
if marks[j] > marks[j + 1]:
marks[j], marks[j + 1] = marks[j + 1], marks[j]
print("Marks of students after performing Bubble Sort on the list :")
for i in range(len(marks)):
print(marks[i])
#<--------------------------------------------------------------------------------------->
# Function for displaying top five marks
def top_five_marks(marks):
print("Top",len(marks),"Marks are : ")
print(*marks[::-1], sep="\n")
#<---------------------------------------------------------------------------------------->
# Main
marks=[]
n = int(input("Enter number of students whose marks are to be displayed : "))
print("Enter marks for",n,"students (Press ENTER after every students marks): ")
for i in range(0, n):
ele = int(input())
marks.append(ele) # adding the element
print("The marks of",n,"students are : ")
print(marks)
flag=1;
while flag==1:
print("\n---------------MENU---------------")
print("1. Selection Sort of the marks")
print("2. Bubble Sort of the marks")
print("3. Exit")
ch=int(input("\n\nEnter your choice (from 1 to 3) : "))
if ch==1:
Selection_Sort(marks)
a=input("\nDo you want to display top marks from the list (yes/no) : ")
if a=='yes':
top_five_marks(marks)
else:
print("\nThanks for using this program!")
flag=0
elif ch==2:
Bubble_Sort(marks)
a = input("\nDo you want to display top five marks from the list (yes/no) : ")
if a == 'yes':
top_five_marks(marks)
else:
print("\nThanks for using this program!")
flag = 0
elif ch==3:
print("\nThanks for using this program!!")
flag=0
else:
print("\nEnter a valid choice!!")
print("\nThanks for using this program!!")
flag=0
#<----------------------------------------END OF PROGRAM------------------------------------------------->