218 lines
7.1 KiB
Python
218 lines
7.1 KiB
Python
import random, math
|
||
print ("Задание 1")
|
||
### Задание 1
|
||
list1 = [] ## Пустой список, который мы потом будем заполнять случайными числами
|
||
summary_of_positive = 0 ##Сумма положительных чисел
|
||
count_of_positive = 0 ##Счётчик количества чисел, которые больше 0
|
||
for _ in range (15): ##Ой, точно. Я где-то читал, что некрасиво использовать i при создании цикла, если в цикле она использоваться не будет
|
||
list1.append(random.randint(-10,30))
|
||
for i in range (15):
|
||
if list1[i] >= 0:
|
||
summary_of_positive += list1[i]
|
||
count_of_positive += 1
|
||
med = summary_of_positive // count_of_positive
|
||
print (med)
|
||
print ("Задание 2")
|
||
### Задание 2
|
||
list2 = [] ## Пустой список, который мы потом будем заполнять случайными числами
|
||
for _ in range (10):
|
||
list2.append(random.randint(10,50))
|
||
list2_2 = list2[::2] ##Создаю массив положительных чисел при помощи срезов
|
||
print ( max(list2_2))
|
||
|
||
print("Задание 3")
|
||
### Задание 3
|
||
list3 = [] ## Пустой список, который мы потом будем заполнять случайными числами
|
||
for _ in range (15):
|
||
list3.append(random.randint(10,90)) ##Заполняем списочек
|
||
minimal_number = min(list3) ## Находим минимальное число
|
||
for i in range (15):
|
||
if list3[i] == minimal_number: ##Дальше проходим по всему списку при помощи цикла и сравниваем числа списка с минимальным, если число равно минимальному, то записываем его индекс
|
||
index = i
|
||
first_number = list3[0] ##Записываем первое число списка в переменную, чтобы не потерять его при перестановках
|
||
print (list3) ## Хотя я мог просто переставить первое число на место минмального, а минимальное и так было у меня зашито в переменную. Ну да ладно
|
||
list3[0] = minimal_number
|
||
list3[index] = first_number
|
||
print (list3, minimal_number, index)
|
||
|
||
print ("Задание 4")
|
||
## Задание 4
|
||
list4 = list(range(1,21))
|
||
print("Введите числа среза")
|
||
n = int(input())
|
||
k = int(input())
|
||
if n > k:
|
||
print ("Ну ты и абоба. Такой срез я не пропущу")
|
||
else:
|
||
list4_srez = list4[n:k+1]
|
||
print (list4_srez, min(list4_srez))
|
||
|
||
print("Задание 5")
|
||
## Задание 5
|
||
list5 = []
|
||
summary_list5 = 0
|
||
summary_list2 = 0
|
||
|
||
n = int(input())
|
||
n2 = n * 2
|
||
for _ in range (n2):
|
||
list5.append (random.randint(-50,50))
|
||
summary_list5 = sum(list5[:n]) # Находим первую половину
|
||
summary_list2 = sum(list5[n:]) # Находим вторую половину
|
||
result = summary_list5 - summary_list2
|
||
print (result)
|
||
|
||
print ("Задание 6")
|
||
## Задание 6
|
||
n = int(input())
|
||
while n < 10:
|
||
print ("n должно быть больше 10")
|
||
print("Введите число n")
|
||
n = int(input()) ## Мне наверное стоит продолжить писать комментарии, но чёта времени уже 4 ночи, я усталь
|
||
if n > 10:
|
||
break
|
||
list6 = []
|
||
for _ in range(n):
|
||
list6.append(random.randint(-20, 20))
|
||
print("Массив до:", list6)
|
||
|
||
for i in range(len(list6)):
|
||
if list6[i] < 0:
|
||
list6[i] = list6[i] * list6[i]
|
||
print("Массив после:", list6)
|
||
|
||
print("Задание 7")
|
||
### Задание 7
|
||
list7 = []
|
||
for _ in range(15):
|
||
list7.append(random.randint(-10, 10))
|
||
print("Массив:", list7)
|
||
|
||
sum_pos = 0
|
||
count_pos = 0
|
||
sum_neg = 0
|
||
count_neg = 0
|
||
zeros = 0
|
||
|
||
for x in list7:
|
||
if x > 0:
|
||
sum_pos = sum_pos + x
|
||
count_pos = count_pos + 1
|
||
elif x < 0:
|
||
sum_neg = sum_neg + x
|
||
count_neg = count_neg + 1
|
||
else:
|
||
zeros = zeros + 1
|
||
|
||
print("Среднее полож:", sum_pos / count_pos)
|
||
print("Среднее отриц:", sum_neg / count_neg)
|
||
print("Нулей:", zeros)
|
||
|
||
print("Задание 8")
|
||
### Задание 8
|
||
n = int(input("Введите n: "))
|
||
list8 = []
|
||
for _ in range(2 * n):
|
||
list8.append(random.randint(1, 5))
|
||
print("Массив:", list8)
|
||
|
||
sum_sq = 0
|
||
sum_cu = 0
|
||
for i in range(len(list8)):
|
||
if i % 2 == 0:
|
||
sum_sq = sum_sq + (list8[i] * list8[i])
|
||
else:
|
||
sum_cu = sum_cu + (list8[i] * list8[i] * list8[i])
|
||
print("Сумма квадратов чётных индексов:", sum_sq)
|
||
print("Сумма кубов нечётных индексов:", sum_cu)
|
||
|
||
print("Задание 9")
|
||
### Задание 9
|
||
list9 = []
|
||
for _ in range(10):
|
||
list9.append(random.randint(1, 100))
|
||
print("До:", list9)
|
||
|
||
m_val = max(list9)
|
||
m_idx = 0
|
||
# Сначала найдём максимум
|
||
for i in range(len(list9)):
|
||
if list9[i] == m_val:
|
||
m_idx = i #Блин, а ведь я мог назвать переменную безумным максом
|
||
break
|
||
|
||
# Теперь всё, что после индекса m_idx, делаем нулями
|
||
for i in range(m_idx + 1, len(list9)):
|
||
list9[i] = 0
|
||
print("После:", list9)
|
||
|
||
print("Задание 10")
|
||
### Задание 10
|
||
list10 = [5, 1, 10, 3, 0] # Пример, можно через рандом
|
||
max_v = max(list10)
|
||
min_v = min(list10)
|
||
i_max = 0
|
||
i_min = 0
|
||
for i in range(len(list10)):
|
||
if list10[i] == max_v: i_max = i
|
||
if list10[i] == min_v: i_min = i
|
||
|
||
list10[i_max] = min_v
|
||
list10[i_min] = max_v
|
||
print("Поменяли местами мин и макс:", list10)
|
||
|
||
print("Задание 11")
|
||
### Задание 11
|
||
list11_x = [1.5, 2.0, 3.5, 4.0]
|
||
list11_y = []
|
||
for val in list11_x:
|
||
list11_y.append(val * 0.5)
|
||
|
||
print("Массив X | Массив Y")
|
||
for i in range(len(list11_x)):
|
||
print(list11_x[i], " ", list11_y[i]) ## О как прикольно сделал, почти молодец
|
||
|
||
print("Задание 12")
|
||
### Задание 12
|
||
list12 = [1, 3, 5, 8, 10]
|
||
nomer = 0
|
||
for i in range(len(list12)):
|
||
if list12[i] % 2 == 0:
|
||
nomer = i + 1
|
||
break
|
||
print("Номер первого четного:", nomer)
|
||
|
||
print("Задание 13")
|
||
### Задание 13
|
||
a = [1, 2, 3, 4]
|
||
b = [3, 4, 5, 6]
|
||
common = []
|
||
for x in a:
|
||
if x in b:
|
||
common.append(x)
|
||
print("Общие:", common)
|
||
|
||
print("Задание 14")
|
||
### Задание 14
|
||
a = [1, 2, 3]
|
||
b = [1, 1, 2, 1, 5]
|
||
for x in a:
|
||
kolvo = 0
|
||
for y in b:
|
||
if x == y:
|
||
kolvo = kolvo + 1
|
||
print("Элемент", x, "встречается", kolvo, "раз")
|
||
|
||
print("Задание 15")
|
||
### Задание 15
|
||
orig = [1, -2, 3, -4, 5]
|
||
pos = []
|
||
neg = []
|
||
for x in orig:
|
||
if x >= 0:
|
||
pos.append(x)
|
||
else:
|
||
neg.append(x)
|
||
final = pos + neg
|
||
print("Сначала положительные, потом отрицательные:", final)
|