• Предмет: Информатика
  • Автор: vadimnevidomyi
  • Вопрос задан 3 месяца назад

Дано дійсні числа a, b, c (a ≠ 0). Повністю дослідити біквадратне рівняння ax**4 + bx**2 + c = 0, тобто якщо дійсних коренів немає, то має бути видано повідомлення про це, інакше мають бути видані два чи чотири корені.Python Помогите пж

Ответы

Ответ дал: privettipobedil
1

Ответ:

import math

a = float(input("Введіть a: "))

b = float(input("Введіть b: "))

c = float(input("Введіть c: "))

D = (b/a)**2 - 4*(c/a)

if D < 0:

print("Рівняння не має дійсних коренів")

elif D == 0:

t1 = -b/(2*a)

x1 = math.sqrt(t1)

x2 = -math.sqrt(t1)

print("Рівняння має два корені: x1 = {}, x2 = {}".format(x1, x2))

else:

t1 = (-b + math.sqrt(D))/(2*a)

t2 = (-b - math.sqrt(D))/(2*a)

x1 = math.sqrt(t1)

x2 = -math.sqrt(t1)

x3 = math.sqrt(t2)

x4 = -math.sqrt(t2)

print("Рівняння має чотири корені: x1 = {}, x2 = {}, x3 = {}, x4 = {}".format(x1, x2, x3, x4))

Объяснение:

Розв'язуємо біквадратне рівняння за допомогою змінної t = x^2:

at**2 + bt + c = 0

Дискримінант:

D = b**2 - 4ac

Якщо D < 0, то рівняння не має дійсних коренів.

Якщо D = 0, то рівняння має два корені: t1 = (-b + √D) / 2a і t2 = (-b - √D) / 2a, а відповідні значення x1 = √t1 і x2 = -√t1.

Якщо D > 0, то рівняння має чотири корені: t1 = (-b + √D) / 2a, t2 = (-b - √D) / 2a, t3 = (-b + √D) / 2a і t4 = (-b - √D) / 2a, а відповідні значення x1 = √t1, x2 = -√t1, x3 = √t2 і x4 = -√t2.

Оскільки a ≠ 0, то можна переписати рівняння у вигляді:

t**2 + (b/a)t + (c/a) = 0

Тоді дискримінант має вигляд:

D = (b/a)**2 - 4(c/a)

З урахуванням цього, можна записати код на Python

Примітка: функція math.sqrt(x) обчислює квадратний корінь з числа x.

Вас заинтересует