форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
2.5 KiB
2.5 KiB
Жалнин Вадим А-01-23 M2_6
1) Создайте список с 50 целыми числами из интервала значений от 12 с шагом 4. Создайте кортеж с 25 числами, случайно отобранными из списка.
2) Выведите элементы кортежа в текстовый файл по 5 чисел в строке с разделителем -"запятая". Имя файла выберите сами.
3) Удалите из памяти ранее созданные список и кортеж.
4) Прочитайте данные из файла с записью их в кортеж. Отобразите кортеж на экране по 5 чисел в строке.
5) По значениям кортежа рассчитайте число элементов, не превышающих пороговое значение, запрашиваемое у пользователя, и число элементов, больше этого значения. Отобразите результат одной строкой на экране.
Решение:
import random
spisok = [12 + 4 * i for i in range(50)]
kortezh = tuple(random.sample(spisok, 25))
with open("chiselki.txt", "w") as fp:
for i in range(0, 25, 5):
fp.write(f"{kortezh[i]},{kortezh[i+1]},{kortezh[i+2]},{kortezh[i+3]},{kortezh[i+4]}\n")
del spisok
del kortezh
new_kortezh = []
with open('chiselki.txt', 'r') as fp:
for line in fp:
numbers = [int(x) for x in line.strip().split(',')]
new_kortezh.extend(numbers)
new_kortezh = tuple(new_kortezh)
for i in range(0, len(new_kortezh), 5):
print(new_kortezh[i:i+5])
porog = input("Введите пороговое значение: ")
if porog.isdigit():
porog = int(porog)
menshe_ravno = sum(1 for x in new_kortezh if x <= porog)
bolshe = sum(1 for x in new_kortezh if x > porog)
print(f"Элементов ≤ {porog}: {menshe_ravno}, элементов > {porog}: {bolshe}")
терминал:
PS C:\work> C:\Users\twoth\AppData\Local\Programs\Python\Python313\python.exe c:/work/importtime.py
(100, 92, 60, 20, 112)
(80, 204, 120, 116, 152)
(28, 16, 44, 176, 68)
(208, 24, 52, 64, 108)
(56, 88, 128, 40, 172)
Введите пороговое значение: 25
Элементов ≤ 25: 3, элементов > 25: 22
PS C:\work>