sdgasytfQWERFDAgvf
safaegtfdsfeasdfae Signed-off-by: Reisber <admin@reisber.space>
This commit is contained in:
217
Algorithms_and_programming/Массивы-закреп.py
Normal file
217
Algorithms_and_programming/Массивы-закреп.py
Normal file
@@ -0,0 +1,217 @@
|
||||
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)
|
||||
Reference in New Issue
Block a user