From 350840a311f647f93bb8bf3854600082495f4f12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9F=D0=BE=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D1=82?= =?UTF-8?q?=D0=B5=D0=BB=D1=8C=20=E2=84=96=202=20=D0=B0=D1=83=D0=B4=D0=B8?= =?UTF-8?q?=D1=82=D0=BE=D1=80=D0=B8=D0=B8=20=D0=96-206?= Date: Mon, 10 Nov 2025 14:57:49 +0300 Subject: [PATCH] Added module test --- TEMA6/binary.bin | Bin 0 -> 391 bytes TEMA6/test.md | 90 +++++++++++++++++++++++++++++++++++++++++++++++ TEMA6/test.py | 25 +++++++++++++ 3 files changed, 115 insertions(+) create mode 100644 TEMA6/binary.bin create mode 100644 TEMA6/test.md create mode 100644 TEMA6/test.py diff --git a/TEMA6/binary.bin b/TEMA6/binary.bin new file mode 100644 index 0000000000000000000000000000000000000000..2b4d3254cba9024af5e988632e29e678cd31a734 GIT binary patch literal 391 zcmZo*nYx1k0yNwmY;}&-Ey#)hGM=Tnf7-gw-NC+=OD{=!p1XtkvcF=dS7^ICn5-5^ zzI$XK?RkxgIb?qD4@l|8oWl)HoR(kYW8)7VO;=ryoR-3j$V>=X_6{V#>D zCGF3<@4o;2=d~B&dA7LQZ|c4suwd0w_x(?&N+sRmjCZ$x&${T@W7f&;_AmI4o|!sj zjl2EP_Y*TpD^%R~zrA#5akx^hyZt4{3X$L>R(Jb(?XvSc9vpYKpQIHM*|YW_(28@u z5=rye-1i@`Qv0Xbxx(H4b%VBT+UA|^`){(&`ub{qu>1bYna9L>PnWsd*BJe1h}`)C i=$>ayA8%K!bhm$bWVg-7DSO@RpFO$w-XQ0HsvZD5imY(} literal 0 HcmV?d00001 diff --git a/TEMA6/test.md b/TEMA6/test.md new file mode 100644 index 0000000..82720fa --- /dev/null +++ b/TEMA6/test.md @@ -0,0 +1,90 @@ +# Тест по модулю 2. Вариант 11 + +Степанов Артём, А-02-23 + +## Задание 1 + +Запросите у пользователя и введите имя функции из библиотеки math для обработки данных. + +## Решение + +```py +>>> import math +>>> print(dir(math)) + ['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'cbrt', 'ceil', 'comb', 'copysign', 'cos', 'cosh', 'degrees', 'dist', 'e', 'erf', 'erfc', 'exp', 'exp2', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'isqrt', 'lcm', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'nextafter', 'perm', 'pi', 'pow', 'prod', 'radians', 'remainder', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau', 'trunc', 'ulp'] +>>> func = input("Введите функцию из модуля math: ") + Введите функцию из модуля math: sqrt +``` + +## Задание 2 + +Создайте кортеж с 20 случайными равномерно распределенными числами из диапазона значений от 11 до 40. + +## Решение + +```py +>>> import random +>>> kort = tuple([random.uniform(11, 40) for x in range(20)]) +>>> kort + (13.660375880487978, 29.453518221390016, 24.21546392982809, 32.433379995697656, 21.24020821353613, 34.55631343191126, 20.992169057649782, 15.230930622059098, 30.89172248312571, 14.615811177459697, 26.211389931676, 23.703136667771552, 28.591909389652102, 24.289697762108663, 16.39261625404772, 12.65385640234007, 35.225116803637945, 39.90736378649565, 38.30743305242752, 34.56895014626229) +>>> len(kort) + 20 +``` + +## Задание 3 + +Напишите инструкцию создания списка, содержащего значения, равные результату вычисления заданной пользователем функции от соответствующих элементов кортежа. + +## Решение + +```py +>>> sps = [] +>>> for i in range(len(kort)): +... sps = sps + [eval("math.{f}({num})".format(f = func, num = kort[i]))] +... +>>> sps + [3.695994572572852, 5.427109564159362, 4.920921044868337, 5.695031167227942, 4.608710037910405, 5.87846182533418, 4.581721189427592, 3.9026824905517357, 5.558032249198066, 3.823063062187138, 5.119706039576491, 4.868586721808656, 5.347140300165323, 4.928457949714968, 4.04877960057691, 3.557225941986265, 5.935075130412247, 6.317227539553697, 6.18929988386631, 5.879536558799706] +``` + +## Задание 4 + +Выведите кортеж и результирующий список в бинарный файл с любым именем. + +## Решение + +```py +>>> import os, pickle +>>> os.chdir(input("Введите полный путь к текущему рабочему каталогу: ")) + Введите полный путь к текущему рабочему каталогу: C:\\Users\\u206-02\\Desktop\\StepanovAV\\python-labs\\TEMA6 +>>> os.getcwd() + 'C:\\Users\\u206-02\\Desktop\\StepanovAV\\python-labs\\TEMA6' +>>> filename = "binary.bin" +>>> fp = open(filename, "wb") +>>> pickle.dump(kort, fp) +>>> pickle.dump(sps, fp) +>>> fp.close() +>>> print("Данные сохранены в файл с именем:", filename) + Данные сохранены в файл с именем: binary.bin +``` + +## Задание 5 + +Рассчитайте среднее значение разностей элементов списка, находящихся на соседних четных и нечетных позициях. Отобразите результат на экране. + +## Решение + +```py +>>> sumCht = 0; sumNecht = 0 +>>> for i in range(len(sps) - 2): +... if i % 2 == 0: +... sumCht = sumCht + (sps[i] - sps[i + 2]) +... else: +... sumNecht = sumNecht + (sps[i] - sps[i + 2]) +... +>>> sredCht = sumCht / (len(sps) // 2) +>>> sredNecht = sumNecht / (len(sps) // 2 - 1) +>>> print("Среднее значение разностей четных элементов списка:", sredCht) + Среднее значение разностей четных элементов списка: -0.2493305311293458 +>>> print("Среднее значение разностей нечетных элементов списка:", sredNecht) + Среднее значение разностей нечетных элементов списка: -0.05026966607114937 +``` \ No newline at end of file diff --git a/TEMA6/test.py b/TEMA6/test.py new file mode 100644 index 0000000..fbc3142 --- /dev/null +++ b/TEMA6/test.py @@ -0,0 +1,25 @@ +import os, math, pickle, random +print(dir(math)) +func = input("Введите функцию из модуля math: ") +kort = tuple([random.uniform(11, 40) for x in range(20)]) +sps = [] +for i in range(len(kort)): + sps = sps + [eval("math.{f}({num})".format(f = func, num = kort[i]))] +os.chdir(input("Введите полный путь к текущему рабочему каталогу: ")) +print("Текущий рабочий каталог: ", os.getcwd()) +filename = "binary.bin" +fp = open(filename, "wb") +pickle.dump(kort, fp) +pickle.dump(sps, fp) +fp.close() +print("Данные сохранены в файл с именем:", filename) +sumCht = 0; sumNecht = 0 +for i in range(len(sps) - 2): + if i % 2 == 0: + sumCht = sumCht + (sps[i] - sps[i + 2]) + else: + sumNecht = sumNecht + (sps[i] - sps[i + 2]) +sredCht = sumCht / (len(sps) // 2) +sredNecht = sumNecht / (len(sps) // 2 - 1) +print("Среднее значение разностей четных элементов списка:", sredCht) +print("Среднее значение разностей нечетных элементов списка:", sredNecht)