From 0aa7a21443af3098747274a86112b8d7a3d426a6 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=207=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-115?= Date: Fri, 21 Nov 2025 11:13:39 +0300 Subject: [PATCH 1/4] =?UTF-8?q?=D0=BE=D1=82=D1=87=D0=B5=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TEMA7/report .md | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/TEMA7/report .md b/TEMA7/report .md index e06af5a..7437bbd 100644 --- a/TEMA7/report .md +++ b/TEMA7/report .md @@ -7,7 +7,7 @@ Запуск оболочки IDLE и установка рабочего каталога >>>import os - >>>os.chdir('C:\\Users\\Дмитрий\\OneDrive\\Рабочий стол\\Goloshchapov\\python-labs\\TEMA6') + >>>os.chdir('C:\\Users\\Дмитрий\\OneDrive\\Рабочий стол\\Goloshchapov\\python-labs\\TEMA7') Пользовательская функция – это совокупность инструкций, которая выполняется при обращении к функции из любого места программы. Аргументы функции – это ссылки на объекты-источники данных, которые используются при её выполнении. Возвращаемые данные – это результаты вычисления функции, передаваемые в ту часть программы, из которой была вызвана функция. @@ -201,12 +201,6 @@ help вывело справку по функции uspeh в модуле main. Программа выводит сообщение "Функция 2", потому что переменная typ_fun не равна 1, и выполняется блок else, в котором функция func определена как выводящая "Функция 2". - >>> tup_fun=1 - >>> func() - Функция 2 - -Сначала у нас выполнялась ветка else, создаётся функция func и вывелось "Функция 2". Эта функция сохранилась в памяти. Потом мы изменили значение typ_fun. Но здесь уже код с if-else не выполняется, функция func остаёся прежней. - # 4. Аргументы функции ## 4.1 Возможность использования функции в качестве аргумента другой функции From 502978c576286f6f67e52b623c0ea41ba3d42647 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=207=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-115?= Date: Fri, 21 Nov 2025 11:57:10 +0300 Subject: [PATCH 2/4] =?UTF-8?q?=D0=B8=D0=BA=D0=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TEMA7/test.md | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 TEMA7/test.md diff --git a/TEMA7/test.md b/TEMA7/test.md new file mode 100644 index 0000000..8ade0eb --- /dev/null +++ b/TEMA7/test.md @@ -0,0 +1,54 @@ +# Выполнение индивидуального контрольного задания по теме 7 + +Голощапов Д.Е.,А-01-23 + +# Задание + +Разработайте анонимную функцию с 3 аргументами: х, a, b, вычисляющую значение exp(-(x-a)2/b)/(2*π*b)1/2. Рассчитайте значения функции в диапазоне значений х от a-3*b1/2 до a+3*b1/2 с шагом 0.2*b1/2 и запишите эти значения в текстовый файл по два значения на строке, разделенных запятыми. + +# Решение + + >>> import os + >>> os.chdir('C:\\Users\\u115-07\\Desktop\\python-labs\\TEMA7') + >>> normal= lambda x, a, b: math.exp(-(x-a)**2/b) / math.sqrt(2 * math.pi * b) + >>> def test_normal(): + ... a, b = 0, 1 + ... std_dev = math.sqrt(b) + ... start = a - 3 * std_dev + ... end = a + 3 * std_dev + ... step = 0.2 * std_dev + ... x_values = [] + ... current = start + ... while current <= end: + ... x_values.append(current) + ... current += step + ... function= [] + ... for x in x_values: + ... y = normal(x, a, b) + ... function.append(y) + ... file = open('ikz.txt', 'w') + ... for i in range(0, len(function), 2): + ... if i + 1 < len(function): + ... file.write(str(function[i])+','+str(function[i+1])+'\n') + ... file.close() + ... + ... + >>> test_normal() + + 4.9233388666234e-05,0.0001570512248023814 + 0.00046246553014536756,0.0012571116468828324 + 0.0031544581746000837,0.007306882745280797 + 0.015624133620192436,0.03084012943829092 + 0.05619437965598666,0.09452050033904612 + 0.14676266317374007,0.21035924208613316 + 0.2783325845048708,0.33995618640009767 + 0.3832995298410415,0.3989422804014327 + 0.3832995298410414,0.33995618640009745 + 0.27833258450487053,0.21035924208613285 + 0.1467626631737398,0.09452050033904591 + 0.056194379655986504,0.030840129438290835 + 0.01562413362019238,0.007306882745280764 + 0.0031544581746000672,0.0012571116468828236 + 0.0004624655301453643,0.00015705122480238025 + + From a2012c615fa5dc4ee8b57bd00be8e3c94418bf2d 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=207=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-115?= Date: Fri, 21 Nov 2025 12:14:43 +0300 Subject: [PATCH 3/4] =?UTF-8?q?=D0=B8=D0=BA=D0=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TEMA7/test.md | 43 ++++++++++++++++++++++--------------------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/TEMA7/test.md b/TEMA7/test.md index 8ade0eb..99451f7 100644 --- a/TEMA7/test.md +++ b/TEMA7/test.md @@ -11,27 +11,28 @@ >>> import os >>> os.chdir('C:\\Users\\u115-07\\Desktop\\python-labs\\TEMA7') >>> normal= lambda x, a, b: math.exp(-(x-a)**2/b) / math.sqrt(2 * math.pi * b) - >>> def test_normal(): - ... a, b = 0, 1 - ... std_dev = math.sqrt(b) - ... start = a - 3 * std_dev - ... end = a + 3 * std_dev - ... step = 0.2 * std_dev - ... x_values = [] - ... current = start - ... while current <= end: - ... x_values.append(current) - ... current += step - ... function= [] - ... for x in x_values: - ... y = normal(x, a, b) - ... function.append(y) - ... file = open('ikz.txt', 'w') - ... for i in range(0, len(function), 2): - ... if i + 1 < len(function): - ... file.write(str(function[i])+','+str(function[i+1])+'\n') - ... file.close() - ... + def test_normal(): + a, b = 0, 1 + std_dev = math.sqrt(b) + start = a - 3 * std_dev + end = a + 3 * std_dev + step = 0.2 * std_dev + x_values = [] + current = start + while current <= end: + x_values.append(current) + current += step + function_values = [] + for x in x_values: + y = normal_pdf(x, a, b) + function_values.append(y) + file = open('ikz.txt', 'w') + for i in range(0, len(function_values), 2): + if i + 1 < len(function_values): + file.write(str(function_values[i])+','+str(function_values[i+1])+'\n') + else: + file.write(str(function_values[i])+',0\n') + file.close() ... >>> test_normal() From e555e5cc3fb6933ef7f6e321906331820f8501db 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=207=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-115?= Date: Fri, 21 Nov 2025 12:16:54 +0300 Subject: [PATCH 4/4] =?UTF-8?q?=D0=B8=D0=BA=D0=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TEMA7/test.md | 46 +++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/TEMA7/test.md b/TEMA7/test.md index 99451f7..50fd47e 100644 --- a/TEMA7/test.md +++ b/TEMA7/test.md @@ -11,29 +11,29 @@ >>> import os >>> os.chdir('C:\\Users\\u115-07\\Desktop\\python-labs\\TEMA7') >>> normal= lambda x, a, b: math.exp(-(x-a)**2/b) / math.sqrt(2 * math.pi * b) - def test_normal(): - a, b = 0, 1 - std_dev = math.sqrt(b) - start = a - 3 * std_dev - end = a + 3 * std_dev - step = 0.2 * std_dev - x_values = [] - current = start - while current <= end: - x_values.append(current) - current += step - function_values = [] - for x in x_values: - y = normal_pdf(x, a, b) - function_values.append(y) - file = open('ikz.txt', 'w') - for i in range(0, len(function_values), 2): - if i + 1 < len(function_values): - file.write(str(function_values[i])+','+str(function_values[i+1])+'\n') - else: - file.write(str(function_values[i])+',0\n') - file.close() - ... + >>> def test_normal(): + ... a, b = 0, 1 + ... std_dev = math.sqrt(b) + ... start = a - 3 * std_dev + ... end = a + 3 * std_dev + ... step = 0.2 * std_dev + ... x_values = [] + ... current = start + ... while current <= end: + ... x_values.append(current) + ... current += step + ... function_values = [] + ... for x in x_values: + ... y = normal_pdf(x, a, b) + ... function_values.append(y) + ... file = open('ikz.txt', 'w') + ... for i in range(0, len(function_values), 2): + ... if i + 1 < len(function_values): + ... file.write(str(function_values[i])+','+str(function_values[i+1])+'\n') + ... else: + ... file.write(str(function_values[i])+',0\n') + ... + ... >>> test_normal() 4.9233388666234e-05,0.0001570512248023814