From d2b2859e1cbdd8c3908d8b3488c1581ae9e7ff3a Mon Sep 17 00:00:00 2001 From: Solovyova_ED Date: Mon, 8 Dec 2025 09:48:09 +0000 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8=D0=BB(?= =?UTF-8?q?=D0=B0)=20=D0=BD=D0=B0=20'TEMA8/test.md'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TEMA8/test.md | 95 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 95 insertions(+) diff --git a/TEMA8/test.md b/TEMA8/test.md index e69de29..60d7626 100644 --- a/TEMA8/test.md +++ b/TEMA8/test.md @@ -0,0 +1,95 @@ +# Индивидуальное контрольное задание + +Марков Никита Сергеевич, А-03-23 + +## 11 вариант + +Разработайте анонимную функцию с 5 аргументами: х, a,b,c,d, вычисляющую значение a/(1+exp(-b-c*x-d*x2)). Рассчитайте значения этой функции в диапазоне значений входного параметра х: -20 ≤ x ≤ 20 с шагом 2 при некоторых положительных значениях параметров a,b,c,d. Обеспечьте запись рассчитанных значений в текстовый файл по три значения на строке, разделенных пробелами. + +Разработайте функцию, на ее основе создайте модуль. Создайте второй модуль, в котором должны быть инструкции для ввода/создания исходных данных для проверки работы функции, вызов функции и отображение полученных результатов. + +```py +import math + +f = lambda x, a, b, c, d: a / (1 + math.exp(-b - c * x - d * x**2)) + +def calc_and_save(a, b, c, d, filename="results.txt"): + if a <= 0 or b <= 0 or c <= 0 or d <= 0: + raise ValueError("Все параметры должны быть положительными") + + xs = list(range(-20, 21, 2)) + values = [f(x, a, b, c, d) for x in xs] + + with open(filename, "w", encoding="utf-8") as file: + for i in range(0, len(values), 3): + chunk = values[i:i+3] + line = " ".join(f"{v:.6f}" for v in chunk) + file.write(line + "\n") + + return xs, values +``` + +```py +from func_module import calc_and_save + +def main(): + print("Ввод параметров a, b, c, d (положительные числа):") + a = float(input("a = ")) + b = float(input("b = ")) + c = float(input("c = ")) + d = float(input("d = ")) + + if a <= 0 or b <= 0 or c <= 0 or d <= 0: + print("Ошибка: все параметры должны быть положительными!") + return + + filename = input("Имя выходного файла (по умолчанию results.txt): ").strip() + if not filename: + filename = "results.txt" + + try: + calc_and_save(a, b, c, d, filename) + print(f"Результаты записаны в файл {filename}") + except Exception as e: + print(f"Ошибка: {e}") + +if __name__ == "__main__": + main() +``` + +results.txt + +1.000000 1.000000 1.000000 +1.000000 1.000000 1.000000 +1.000000 1.000000 1.000000 +0.999994 0.880797 1.000000 +1.000000 1.000000 1.000000 +1.000000 1.000000 1.000000 +1.000000 1.000000 1.000000 + + + + + + + + + + + + + + + + + + + + + + + + + + +