ответвлено от main/python-labs
73 строки
2.5 KiB
Markdown
73 строки
2.5 KiB
Markdown
Жалнин Вадим А-01-23
|
||
M2_6
|
||
|
||
1) Создайте список с 50 целыми числами из интервала значений от 12 с шагом 4. Создайте кортеж с 25 числами, случайно отобранными из списка.
|
||
|
||
2) Выведите элементы кортежа в текстовый файл по 5 чисел в строке с разделителем -"запятая". Имя файла выберите сами.
|
||
|
||
3) Удалите из памяти ранее созданные список и кортеж.
|
||
|
||
4) Прочитайте данные из файла с записью их в кортеж. Отобразите кортеж на экране по 5 чисел в строке.
|
||
|
||
5) По значениям кортежа рассчитайте число элементов, не превышающих пороговое значение, запрашиваемое у пользователя, и число элементов, больше этого значения. Отобразите результат одной строкой на экране.
|
||
|
||
## Решение:
|
||
|
||
```python
|
||
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>
|
||
``` |