Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

2.9 KiB

Индивидуальное контрольное задание по Теме 8

Кузьменко Елена, А-02-23, Вариант 6

Задание

По указанному преподавателем варианту контрольного задания обратитесь к индивидуальному заданию с таким номером в теме 7, разработайте функцию, на ее основе создайте модуль. Создайте второй модуль, в котором должны быть инструкции для ввода/создания исходных данных для проверки работы функции, вызов функции и отображение полученных результатов.

Тема 7. Вариант 6:

1)Разработайте функцию с 3 аргументами: x, А и В, реализующую преобразование входного сигнала x по формуле: y=B, если x>A;  y= 2B*x/A-B*x^2 /A^2 , если 0≤ x ≤ А;  y= 2B * x/A +B*x^2 /A^2 , если -A≤ x <0; y=-B, если x< -A. 
2)Создайте список со 100 значениями входного сигнала х – случайными, равномерно распределенными числами в диапазоне значений от -5 до 12. Для элементов списка с помощью функции рассчитайте список со значениями выходного сигнала y при трех разных парах значений А и В. Записать результаты в текстовый файл в виде двух столбцов: хi, yi.

Решение

1)Модуль с функцией. Mod1

# Модуль 1 Mod1
def signal(x, A, B):
      if x > A: 
         return B
      elif 0 <= x <= A:
         return (2 * B * x / A - B *(x ** 2 / A ** 2))
      elif -A <= x < 0:
         return (2 * B * x / A + B * (x ** 2 / A ** 2))
      else: return -B

2)Модуль с вызовом функцией. Mod2

#Модуль 2 Mod2
import Mod1
import random

list1 = [random.uniform(-5, 12) for i in range(100)

with open('res1.txt', 'w') as f:
    for x in list1:
        y = Mod1.signal(x, 2, 3)
        f.write(f'{x},{y}\n')
    print('Записано в файл res1.txt')

with open('res2.txt', 'w') as f:
    for x in list1:
        y = Mod1.signal(x, 5, 10)
        f.write(f'{x},{y}\n')
    print('Записано в файл res2.txt')

with open('res3.txt', 'w') as f:
    for x in list1:
        y = Mod1.signal(x, 14, 2)
        f.write(f'{x},{y}\n')
    print('Записано в файл res3.txt')

Проверка:

>>> import Mod2
Записано в файл res1.txt
Записано в файл res2.txt
Записано в файл res3.txt

Содержание файлов: