ИКЗ
Этот коммит содержится в:
33
TEMA7/test.md
Обычный файл
33
TEMA7/test.md
Обычный файл
@@ -0,0 +1,33 @@
|
||||
# Индивидуальное контрольное задание по Теме 7
|
||||
Таболин Иван, А-01-23
|
||||
Вариант 3
|
||||
## Задание
|
||||
Разработайте функцию с 4 аргументами, создающую последовательность отсчетов случайного, равномерно распределенного сигнала типа белого шума с заданными параметрами: границы диа-пазона изменения, число отсчетов (аргументы функции). Сигнал должен быть записан построчно, по 3 элемента в строке с разделителем - запятая в текстовый файл с заданным именем (4-й аргумент функции), а также возвращен в вызывающую программу в виде списка.
|
||||
## Решение
|
||||
```py
|
||||
def bel_shum(a_min,a_max,k,file_name):
|
||||
"""Генератор белого шума
|
||||
a_min,a_max - границы диапазона изменения сигнала
|
||||
k - количество отсчетов
|
||||
file_name - имя файла для вывода сигнала"""
|
||||
import random as rn
|
||||
signal=[]
|
||||
for i in range(k):
|
||||
a=a_min+(a_max-a_min)*rn.random()
|
||||
signal.append(a)
|
||||
f=open(file_name,'w')
|
||||
i=0
|
||||
while i<len(signal):
|
||||
s=signal[i:i+3]
|
||||
out=','.join(str(n) for n in s)
|
||||
f.write(out+'\n')
|
||||
i+=3
|
||||
f.close()
|
||||
return signal
|
||||
|
||||
bel_shum(0,1,20,'test1.txt')
|
||||
[0.6121303296306144, 0.6412641200633369, 0.11685946114651469, 0.45963383247709144, 0.1396119953149234, 0.9774252470424362, 0.8214083524197986, 0.3712680592177061, 0.7679917358701837, 0.10872526758897305, 0.7277044250338426, 0.5584257054824748, 0.903225844909946, 0.7162949601167093, 0.37602800658438673, 0.7390155718732525, 0.3665326143981362, 0.8660301445143191, 0.8605103393087415, 0.8265277945070508]
|
||||
|
||||
bel_shum(1,5,35,'test2.txt')
|
||||
[2.044262095730901, 2.9460771147067106, 3.4488422163718373, 4.501325827244864, 3.0908516348657415, 2.2486766582618416, 1.8541368543777854, 4.671136588954065, 2.0377889808927616, 2.907799881297287, 4.185430806328185, 1.3106392123128479, 1.4406582567850679, 3.066287739535445, 2.050387519395883, 2.769661281833263, 1.9383764782362034, 1.1036168746115131, 1.4156131808765569, 2.79017367419333, 3.8290609294438225, 4.342915598480614, 3.371713892072644, 2.866840758354854, 3.229631214986825, 3.671877264456392, 2.258566569052188, 3.821614716506629, 2.128574963495442, 1.8828706347794855, 2.279448934161789, 3.8514469999377954, 4.172031075019252, 3.8783957015255783, 1.2633531800325009]
|
||||
```
|
||||
Ссылка в новой задаче
Block a user