форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
43 строки
1.9 KiB
Markdown
43 строки
1.9 KiB
Markdown
# Индивидуальное контрольное задание по теме 8 вариант 20
|
|
|
|
Анисенков Павел, А-01-23
|
|
|
|
## Задание
|
|
|
|
Разработайте функцию с одним аргументом – числом элементов. Функция должна включать анонимную функцию с аргументом Х, вычисляющую от заданного входного числового аргу-мента X значение логистической функции: 1/(1+exp(X)). Общая функция должна создавать список с заданным в аргументе числом случайных элементов, равномерно распределенных в диапазоне от -20 до +68. После этого она должна формировать кортеж с элементами – значе-ниями логистической функции от соответствующих элементов списка. Этот кортеж должен возвращаться, как результат функции. Проверить функцию на примере.
|
|
|
|
## Решение
|
|
```py
|
|
|
|
M1
|
|
import random
|
|
import math
|
|
def logistic_tuple(N):
|
|
|
|
logistic = lambda X: 1.0 / (1.0 + math.exp(X))
|
|
random_list = [random.uniform(-20, 68) for _ in range(N)]
|
|
|
|
result_tuple = tuple(logistic(x) for x in random_list)
|
|
return result_tuple
|
|
|
|
M2
|
|
from M1 import logistic_tuple
|
|
N = int(input("Введите число элементов: "))
|
|
result = logistic_tuple(N)
|
|
print("\nРезультат:")
|
|
print(result)
|
|
if len(result) > 5:
|
|
print("\nПервые 5 значений:")
|
|
print(result[:5])
|
|
```
|
|
|
|
Вывод:
|
|
|
|
|
|
```py
|
|
Введите число элементов: 5
|
|
|
|
Результат:
|
|
(1.7003103585087036e-25, 8.372020498532923e-12, 0.013308504481261372, 5.733447989484467e-14, 2.048829680249727e-09)
|
|
|
|
``` |