diff --git a/TEMA7/test.md b/TEMA7/test.md new file mode 100644 index 0000000..018505e --- /dev/null +++ b/TEMA7/test.md @@ -0,0 +1,30 @@ +# Индивидуальное контрольное задание по ТЕМЕ 7 + +Беженарь Алёна, А-02-23, Вариант 2 + +## Задание +Разработайте функцию с 4 аргументами, создающую последовательность отсчетов случайного, нормально распределенного сигнала типа белого шума с заданными параметрами: математическое ожидание и дисперсия, число отсчетов (аргументы функции). Сигнал должен быть записан построчно, по 3 элемента в строке с разделителем - пробел в текстовый файл с заданным именем (4-й аргумент функции), а также возвращен в вызывающую программу в виде списка. + +## Решение +```py +>>> import random +>>> def generate_noise(mean,variance, num_points, filename): +... standart_otklon = variance**(1/2) #Среднеквадратичное отклонение +... signal=[random.gauss(mean, standart_otklon) for x in range(num_points)] #генерируем сигнал +... with open(filename, 'w') as f: #открываем файл +... for i in range(0,num_points,3): +... line=" ".join(str(value) for value in signal[i:i+3]) #создание строки для записи в файл +... f.write(line+"\n") +... return signal #возращаем список отсчетов сигнала +... +>>> noise = generate_noise(0,1,10, "test_noise.txt") +>>> print(noise) +[-0.5436739913889093, 0.664991565282872, 0.024304199939835725, 0.586156329620318, -0.91293168562729, 1.0918251712936817, -1.812662851600029, -0.3779057893060255, -1.3275643822482055, 1.2549578798676502] +``` +Вывод в файле: +```py +-0.5436739913889093 0.664991565282872 0.024304199939835725 +0.586156329620318 -0.91293168562729 1.0918251712936817 +-1.812662851600029 -0.3779057893060255 -1.3275643822482055 +1.2549578798676502 +``` \ No newline at end of file