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)