""" 6. Разработайте функцию с 3 аргументами: x, А и В, реализующую преобразование входного сигнала x по формуле: y=B, если x>A; y= 2B*x/A-B*x2/A2 , если 0≤ x ≤ А; y= 2B * x/A +B*x2/A2 , если -A≤ x <0; y=-B, если x< -A. Создайте список со 100 значениями входного сигнала х – случайными, равномерно распределенными числами в диапазоне значений от -5 до 12. Для элементов списка с помощью функции рассчитайте список со значениями выходного сигнала y при трех разных парах значений А и В. Записать результаты в текстовый файл в виде двух столбцов: хi, yi. """ from random import * def func(x, A, B): """Преобразование входного сигнала""" if x>A: y = B elif 0<= x <= A: y = 2*B*x/A - B*x**2/A**2 elif -A<= x <=0: y = 2*B*x/A + B*x**2/A**2 else: y = -B return x, y sample = [uniform(-5, 12) for _ in range(100)] final_list= [] with open("TEMA7\\test.txt", "w+") as f: for _ in range(3): A = randint(1, 10) B = randint(1, 10) #f.write(f"x|y for A={A} and B={B}\n") final_list.append(f"(A = {A},B = {B})") for i in range(len(sample)): res = func(sample[i], A, B) final_list.append(res) f.write(f"{res[0]}|{res[1]}\n") print(final_list)