Python
Выяснить, сколько точек пересечения имеют прямая
Выяснить, сколько точек пересечения имеют прямая y = kx + b и гипербола y = a/x. вывести координаты этих точек. значения k, b, a ввести
Не более двух:
a/x = kx + b
a = kx² + bx
D = b² + 4ka
b² < -4ka или k = b = 0 - нет точек пересечения
b² = -4ka или (k = 0 и b ≠ 0) - одна точка (касания)
b² > -4ka - две точки пересечения
x₁ = (-b + √D) / (2k) y₁ = (b + √D) / 2
x₂ = (-b - √D) / (2k) y₂ = (b - √D) / 2
А вот так это можно посчитать: from math import sqrt
k, b, a = map(float, input("Введите k b a через пробел: ").split())
D = b * b + 4 * k * a
if D < 0 or k == 0 == b:
print("Нет точек пересечения")
elif k == 0:
print("Одна точка пересечения: (%.4f, %.4f)" % (a / b, b))
elif D == 0:
print("Одна точка пересечения: (%.4f, %.4f)" % (-b / (2 * k), b / 2))
else: # D > 0
d = sqrt(D)
print("Две точки пересечения: (%.4f, %.4f) и (%.4f, %.4f)" % ((-b + d) / (2 * k), (b + d) / 2, (-b - d) / (2 * k), (b - d) / 2))
Для гиперболы a≠0.
kx + b = a/x <=> kx²+bx-a=0 (x≠0)
Если k=0, тогда если b=0, то нет пересечений, а если b≠0, то одно пересечение (при х=a/b).
Если k≠0, тогда D=b²+4ak. При D>0 два пересечения, при D<0 нет пересечений, а при D=0 одно пересечение.
Полный исходник писать долго, поэтому давайте лучше сами! Вот на всякий случай в качестве примера скрин с кодом для решения квадратного уравнения, который тут никто ещё правильно и не напишет:
kx + b = a/x <=> kx²+bx-a=0 (x≠0)
Если k=0, тогда если b=0, то нет пересечений, а если b≠0, то одно пересечение (при х=a/b).
Если k≠0, тогда D=b²+4ak. При D>0 два пересечения, при D<0 нет пересечений, а при D=0 одно пересечение.
Полный исходник писать долго, поэтому давайте лучше сами! Вот на всякий случай в качестве примера скрин с кодом для решения квадратного уравнения, который тут никто ещё правильно и не напишет:

Похожие вопросы
- Выяснить кто сколько набрал баллов и напечатать в файле csv пример: Важная;5;4;5;4 и посчитать сколько у нее баллов
- Алгоритм пересечения полигонов в 2D.
- Сколько часов в день вы учили Python?
- Могу ли я бросить учебу в 10 классе и трудоустроиться в хорошую компанию имея знания но не имея аттестата
- Даны три целых числа. Определите, сколько среди них
- Сколько места на диске примерно нужно для хранения датасетов для нейросетевой программы? Подробности внутри
- Сколько примерно можно заработать на создании ботов?(Python)
- Задана последовательность из N вещественных чисел. Определить, сколько среди них чисел меньших К, равных К и больших К.
- 2^1800+2^100−2^1200−32 - записали в системе счисления с основанием 2. Сколько цифр "1" содержится в этой записи?
- Сколько часов в день нужно тратить на изучение программирования?