# Индивидуальное контрольное задание по теме 7 Коломейцев Дмитрий, А-02-23 ## Задание #### Вариант 4. Разработайте функцию с 5 аргументами, создающую отсчеты сигнала в виде последовательности импульсов с заданными параметрами: * амплитуда, * продолжительность импульса, * период (импульс + пауза), * число отсчетов, * имя текстового файла для записи сигнала. Сигнал должен быть записан в виде столбца в текстовый файл с заданным именем (5-й аргумент функции), а также возвращен в вызывающую программу в виде списка. ## Решение ```py # функция, создающая прямоугольные импульсы def make_impulse_signal(ampl, impulse_duration, period, n, filename): signal = [] for k in range(n): pos = k % period # чтобы позиция от 0 до 6 всегда прыгала (период 7) if pos < impulse_duration: signal.append(ampl) else: signal.append(0) with open(filename, 'w') as f: for x in signal: f.write(str(x) + '\n') return signal s = make_impulse_signal(10, 3, 5, 53, 'signal.txt') print(s) ```