Лаба 9 сдала
This commit is contained in:
parent
834902c308
commit
b09a9200b1
42
lab9/lab9.py
Normal file
42
lab9/lab9.py
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
import matplotlib.pyplot as plt
|
||||||
|
|
||||||
|
print("Введите минимальное значение (первое основание треугольника) :")
|
||||||
|
min_value = float(input())
|
||||||
|
|
||||||
|
print("Введите максимальное значение (второе основание треугольника) :")
|
||||||
|
max_value = float(input())
|
||||||
|
|
||||||
|
if max_value < min_value:
|
||||||
|
max_value, min_value = min_value, max_value
|
||||||
|
|
||||||
|
print("Введите центральное значение (вершина треугольника) :")
|
||||||
|
center_value = float(input())
|
||||||
|
|
||||||
|
print("Введите значение объекта для проверки степени принадлежности:")
|
||||||
|
x = float(input())
|
||||||
|
|
||||||
|
if min_value <= x <= center_value:
|
||||||
|
membership = (x - min_value) / (center_value - min_value)
|
||||||
|
elif center_value < x <= max_value:
|
||||||
|
membership = (max_value - x) / (max_value - center_value)
|
||||||
|
elif x < min_value or x > max_value:
|
||||||
|
membership = 0
|
||||||
|
else:
|
||||||
|
membership = -1
|
||||||
|
|
||||||
|
|
||||||
|
if membership == -1:
|
||||||
|
print("Не удалось рассчитать степень принадлежности объекта")
|
||||||
|
|
||||||
|
|
||||||
|
print(f"Минимум: {min_value}")
|
||||||
|
print(f"Максимум: {max_value}")
|
||||||
|
print(f"Центр: {center_value}")
|
||||||
|
print(f"Степень принадлежности {x}: {membership:.2f}")
|
||||||
|
|
||||||
|
X = [min_value, center_value, max_value]
|
||||||
|
Y = [0, 1, 0]
|
||||||
|
|
||||||
|
plt.plot(X, Y)
|
||||||
|
plt.plot(x, membership, 'ro')
|
||||||
|
plt.show()
|
Loading…
Reference in New Issue
Block a user