# Тест по модулю 2 Таболин Иван, А-01-23 Вариант 1 ## Задание 1) Запросите у пользователя и введите имя и число элементов кортежа (от 10 до 100). Проверьте введенное число элементов на соответствие заданному диапазону значений и, при необходимости, повторите ввод. 2)Создайте кортеж с заданными при вводе именем и числом элементов. Элементами должны быть случайные целые числа в диапазоне от 101 до 201. 3)Запишите кортеж в текстовый файл с некоторым именем по одному элементу на строке. 4)Удалите из памяти все созданные объекты-переменные. 5)Прочитайте из файла элементы, подсчитайте их сумму и отобразите на экране по шаблону: "Сумма элементов кортежа = <рассчитанное значение>". ## Решение 1) ```py import os os.chdir('C:\\Users\\User\\Desktop\\python-labs\\TEMA6') name=input('Введите имя кортежа: ') Введите имя кортежа: kort10 N=0 while (N<10) or (N>100): N=int(input('Введите количество элементов кортежа: ')) Введите количество элементов кортежа: 3 Введите количество элементов кортежа: 15 ``` 2) ```py import random as rn exec(name+'=()') kort10 () type(kort10) for i in range(N): kort10+=(rn.randint(101,201),) kort10 (194, 102, 105, 152, 171, 135, 165, 168, 192, 168, 147, 185, 166, 102, 181) len(kort10) 15 ``` 3) ```py f_out=open('test_output.txt','w') for i in range(N): f_out.write(str(kort10[i])+'\n') f_out.close() ``` ![Содержимое файла test_output.txt](Ris1.png) 4) ```py dir() ['N', '__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'f_out', 'i', 'kort10', 'n_out', 'name', 'os', 'random', 'rn'] del f_out, i, kort10, n_out, name, N dir() ['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'os', 'random', 'rn'] ``` 5) ```py import sys tmp_in=sys.stdin f_in=open('test_output.txt','r') sys.stdin <_io.TextIOWrapper name='test_output.txt' mode='r' encoding='cp1251'> kort20=() while True: try: kort20+=(input(),) except EOFError: break kort20 ('105', '152', '171', '135', '165', '168', '192', '168', '147', '185', '166', '102', '181') summ=0 for x in kort20: summ+=int(x) summ 2037 ```