diff --git a/TEMA6/numbers.txt b/TEMA6/numbers.txt new file mode 100644 index 0000000..8f829a6 --- /dev/null +++ b/TEMA6/numbers.txt @@ -0,0 +1,5 @@ +168,184,208,156,128 +192,136,148,176,28 +172,160,124,76,112 +16,116,48,120,84 +36,92,144,60,72 diff --git a/TEMA6/test.md b/TEMA6/test.md new file mode 100644 index 0000000..2aab906 --- /dev/null +++ b/TEMA6/test.md @@ -0,0 +1,80 @@ +# Индивидуальное контрольное задание по Модулю 2 + +Беженарь Алёна, А-02-23, Вариант 6 + +## Задание +1) Создайте список с 50 целыми числами из интервала значений от 12 с шагом 4. Создайте кортеж с 25 числами, случайно отобранными из списка. + +2) Выведите элементы кортежа в текстовый файл по 5 чисел в строке с разделителем -"запятая". Имя файла выберите сами. + +3) Удалите из памяти ранее созданные список и кортеж. + +4) Прочитайте данные из файла с записью их в кортеж. Отобразите кортеж на экране по 5 чисел в строке. + +5) По значениям кортежа рассчитайте число элементов, не превышающих пороговое значение, запрашиваемое у пользователя, и число элементов, больше этого значения. Отобразите результат одной строкой на экране. + +## Решение + +### 1 Пункт. + +```py +>>> import random + +>>> spis=list(range(12,12+50*4,4)) # Создание списка с 50 числами из интервала значений от 12 с шагом 4 +>>> len(spis) # Проверка, что список содержит 50 значений + 50 +>>> kort = tuple(random.sample(spis,25)) # Создание кортежа с 25 со случайно отобранными числами из списка spis +>>> kort; len(kort) + (168, 184, 208, 156, 128, 192, 136, 148, 176, 28, 172, 160, 124, 76, 112, 16, 116, 48, 120, 84, 36, 92, 144, 60, 72) + 25 +``` + +### 2 Пункт. +```py +>>> import os +>>> os.chdir("C:\\Users\\u522-14\\Desktop\\BezhenarAN\\python-labs\\TEMA6") #устанавливаем рабочую директорию для работы с файлами +>>> with open("numbers.txt", "w") as fp: +... for i in range (0,25,5): +... fp.write(str(kort[i:i+5]).replace("(", "").replace(")", "").replace(" ", "") + "\n") + 20 + 19 + 19 + 17 + 16 +``` +### 3 Пункт. +```py +>>> del spis, kort +>>> dir() + ['OutStr', '__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'fp', 'i', 'os', 'pickle', 'random', 'sys'] +``` +### 4 Пункт. +```py +>>> with open ("numbers.txt", "r") as fp: +... numbers = [] +... for stroka in fp: +... stroka = stroka.strip() #удаление /n с конца +... numbers = numbers + [int(x) for x in stroka.split(",")] #запись чисел из строки разделенных запятой в список для дальнейшего преобразования в кортеж +... kort = tuple (numbers) +>>> for i in range (0,len(kort),5): #вывод на экран кортежа по 5 чисел на строку +... print(str(kort[i:i+5]).replace("(", "").replace(")", "").replace(" ", "")) + 168,184,208,156,128 + 192,136,148,176,28 + 172,160,124,76,112 + 16,116,48,120,84 + 36,92,144,60,72 +``` +### 5 Пункт. +```py +>>> porog = int(input("Введите пороговое значение:")) + Введите пороговое значение:100 +>>> bolshe =0; menshe = 0 +>>> for x in kort: +... if x<=porog: +... menshe+=1 +... else: +... bolshe+=1 +... +>>> print(f"Кол-во элементов <= {porog}: {menshe}, а кол-во элементов > {porog}:{bolshe}") + Кол-во элементов <= 100: 9, а кол-во элементов > 100:16 +```