
Через питон Написать программу, определяющую, будут ли прямые A1X + В1у + C1 = 0 и А2х + В2у + С2 =
0 перпендикулярны. Если нет, то найти угол между ними.

Ответы на вопрос

from math import sqrt, acos, pi
A1,B1,C1=map(float,input('A1 B1 C1 через пробел: ').split(' '))
A2,B2,C2=map(float,input('A2 B2 C2 через пробел: ').split(' '))
if A1*A2+B1*B2==0: print('прямые перпендикулярны')
else:
ang=(A1*A2+B1*B2)/(sqrt(A1*A1+B1*B1)*sqrt(A2*A2+B2*B2))
ang=round(acos(ang)*180/pi)
print('угол между прямыми: ',ang,' град.')
>>>
A1 B1 C1 через пробел: -1 1 -3
A2 B2 C2 через пробел: 1 1 -1
прямые перпендикулярны
>>>
A1 B1 C1 через пробел: 1.5 -3.8 5
A2 B2 C2 через пробел: 2.6 3.4 2
угол между прямыми: 121 град.



Для определения, будут ли прямые A1X + В1у + C1 = 0 и А2х + В2у + С2 = 0 перпендикулярны, необходимо проверить, выполнится ли условие:
A1 * A2 + B1 * B2 = 0
Если это условие выполняется, то прямые перпендикулярны. Если нет, то можно найти угол между ними с помощью следующей формулы:
угол = arccos(abs(A1 * A2 + B1 * B2) / sqrt((A1 ** 2 + B1 ** 2) * (A2 ** 2 + B2 ** 2)))
где arccos - обратный косинус, который можно вычислить с помощью функции math.acos() из стандартной библиотеки Python.
Ниже приведен код, реализующий описанный алгоритм:
pythonimport math
A1 = float(input("Введите коэффициент A1: "))
B1 = float(input("Введите коэффициент B1: "))
C1 = float(input("Введите коэффициент C1: "))
A2 = float(input("Введите коэффициент A2: "))
B2 = float(input("Введите


Топ вопросов за вчера в категории Информатика








Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili