Случайные числа получаем подключив стандартный модуль random.
import random
Код генерирует 10 случайных чисел и округляет их до 2 первых знаков.
import random
d=[]
for i in range(1,10):
d.append(round(100*random.random()))
print (d)
for j in range(-1,-9,-1):
print (d[j])
print (d) — вывод полученного списка, for j in range(-1,-9,-1): print (d[j]) — вывод разбиений.
Нахождение максимального и минимального элементов списка:
max=d[0]
min=d[0]
for i in range (9):
if d[i]>max:
max=d[i]
if d[i]<min:
min=d[i]
print («максимальное число «,max)
print («минимальное число «,min)
Сортировка:
for i in range(9):
for j in range(9):
if d[i]<d[j]:
fl=d[i]
d[i]=d[j]
d[j]=fl
print (d)
программа полностью:
import random
d=[]
for i in range(1,10):
d.append(round(100*random.random()))
print (d)
for j in range(-1,-9,-1):
print (d[j])
#находим минимальное и максимальное значение элемента списка
max=d[0]
min=d[0]
for i in range (9):
if d[i]>max:
max=d[i]
if d[i]<min:
min=d[i]
print («максимальное число «,max)
print («минимальное число «,min)
#сортировка
#здесь переменная fl служит для перемещения меньшего значения в начало списка
for i in range(9):
for j in range(9):
if d[i]<d[j]:
fl=d[i]
d[i]=d[j]
d[j]=fl
print (d)
Результат ее выполнения:
>>>
[46, 60, 45, 39, 87, 3, 42, 73, 99]
99
73
42
3
87
39
45
60
максимальное число 99
минимальное число 3
[3, 39, 42, 45, 46, 60, 73, 87, 99]
Вообще это нормальный код, хотя и смахивает на индусский, но таковым не является.
Еще пример сортировочного кода, который по принятой классификации можно отнести к быдлокоду — зато алгоритм очевиден. Находим максимальный (минимальный) элемент, заносим его в новый список (изначально пустой) и удаляем этот элемент из исходного списка. Так за N шагов (число элементов списка) заполняем по возрастанию (убыванию) элементами исходного списка, новый отсортированный список.
import random
d=[]
k=[]
for i in range(1,10):
d.append(round(100*random.random()))
print (d)
k=k+d
dl=(len(d))
# сортировка 2
r=[]
i=0
while i<dl:
max=d[0]
f=0
for j in range(len(d)):
if d[j]>max:
max=d[j]
f=j
r.append(d[f])
del d[f]
print(d)
print (r)
i=i+1
print(‘=====================================================================’)
print(«несортированная последовательность»,k)
print(» сортированная последовательность»,r)
Результат выполнения.
>>>
[25, 37, 91, 3, 30, 11, 54, 81, 90]
[25, 37, 3, 30, 11, 54, 81, 90]
[91]
[25, 37, 3, 30, 11, 54, 81]
[91, 90]
[25, 37, 3, 30, 11, 54]
[91, 90, 81]
[25, 37, 3, 30, 11]
[91, 90, 81, 54]
[25, 3, 30, 11]
[91, 90, 81, 54, 37]
[25, 3, 11]
[91, 90, 81, 54, 37, 30]
[3, 11]
[91, 90, 81, 54, 37, 30, 25]
[3]
[91, 90, 81, 54, 37, 30, 25, 11]
[]
[91, 90, 81, 54, 37, 30, 25, 11, 3]
=====================================================================
несортированная последовательность [25, 37, 91, 3, 30, 11, 54, 81, 90]
сортированная последовательность [91, 90, 81, 54, 37, 30, 25, 11, 3]
>>>
И собственно сортировка, как она и должна делаться в Питоне — методом sorted:
import random
d=[]
for i in range(1,10):
d.append(round(100*random.random()))
print (d)
#сортировка
#обратная
f=sorted(d,reverse=True)
#прямая
g=sorted(d)
print(f)
print(g)
Результат:
>>>
[17, 98, 34, 12, 61, 21, 46, 8, 75]
[98, 75, 61, 46, 34, 21, 17, 12, 8]
[8, 12, 17, 21, 34, 46, 61, 75, 98]
>>>
Вот и все.