diff --git a/TEMA6/task.py b/TEMA6/task.py index a2440c0..84929d4 100644 --- a/TEMA6/task.py +++ b/TEMA6/task.py @@ -5,7 +5,7 @@ from os import chdir chdir('/Users/vatarishin/lab_sem_5/python-labs/TEMA6') intTuple = () -for _ in range(125): intTuple + (str(randint(6, 56)), ) +for _ in range(125): intTuple += (str(randint(6, 56)), ) surnames = ['Kovalenko', 'Hoduyk', 'Ivanov', 'Mahnov'] diff --git a/TEMA6/test.md b/TEMA6/test.md new file mode 100644 index 0000000..fbeda56 --- /dev/null +++ b/TEMA6/test.md @@ -0,0 +1,61 @@ +# Тест 2 вариант 1 + +Коваленко Дмитрий, А-01-23 + +## Задание + +1) Запросите у пользователя и введите имя и число элементов кортежа (от 10 до 100). Проверьте введенное число элементов на соответствие заданному диапазону значений и, при необходимости, повторите ввод. + +2) Создайте кортеж с заданными при вводе именем и числом элементов. Элементами должны быть случайные целые числа в диапазоне от 101 до 201. + +3) Запишите кортеж в текстовый файл с некоторым именем по одному элементу на строке. + +4) Удалите из памяти все созданные объекты-переменные. + +5) Прочитайте из файла элементы, подсчитайте их сумму и отобразите на экране по шаблону: "Сумма элементов кортежа = <рассчитанное значение>". + + +## Решение + +1) +```py +from random import randint + +def getTupleNumbers(): + try: + numbers = int(input('Enter tuple elements numbers from 10 to 100: ')) + if numbers >= 10 and numbers <= 100: + return numbers + except Exception: + print('Please enter number') + print('Enter number from required range') + return getTupleNumbers() + + +name = input('Enter your name: ') +numbers = getTupleNumbers() +``` + +2) +```py +intTuple = () +for _ in range(numbers): intTuple += (str(randint(101, 201)), ) +``` +3) +```py +with open('test.txt', mode='w') as fl: + for el in intTuple: + fl.write(f'{el}\n') +``` +4) +```py +del name, numbers, intTuple +``` +5) +```py +with open('test.txt') as fl: + nums = fl.readlines() + +nums = map(int, nums) +print(f'Сумма элементов кортежа = {sum(nums)}') +``` \ No newline at end of file diff --git a/TEMA6/test.py b/TEMA6/test.py new file mode 100644 index 0000000..7233557 --- /dev/null +++ b/TEMA6/test.py @@ -0,0 +1,34 @@ +from random import randint +from os import chdir + +def getTupleNumbers(): + try: + numbers = int(input('Enter tuple elements numbers from 10 to 100: ')) + if numbers >= 10 and numbers <= 100: + return numbers + except Exception: + print('Please enter number') + print('Enter number from required range') + return getTupleNumbers() + + +name = input('Enter your name: ') +numbers = getTupleNumbers() + +intTuple = () +for _ in range(numbers): intTuple += (str(randint(101, 201)), ) + +print(intTuple) +chdir('/Users/vatarishin/lab_sem_5/python-labs/TEMA6') +with open('test.txt', mode='w') as fl: + for el in intTuple: + print(el) + fl.write(f'{el}\n') + +del name, numbers, intTuple + +with open('test.txt') as fl: + nums = fl.readlines() + +nums = map(int, nums) +print(f'Сумма элементов кортежа = {sum(nums)}') \ No newline at end of file diff --git a/TEMA6/test.txt b/TEMA6/test.txt new file mode 100644 index 0000000..49b8a4e --- /dev/null +++ b/TEMA6/test.txt @@ -0,0 +1,11 @@ +134 +191 +113 +196 +155 +165 +157 +127 +122 +127 +133