Найти в Дзене
Kitchen Python 3

Кухня Python 3 «Дискриминант»

Оглавление

Дискриминант. Все в той или иной степени помнят понятие дискриминанта ещё со школы. Сперва, освежим в памяти формулу дискриминанта и формулу нахождения корней квадратного уравнения.

Дискриминант D квадратного трёхчлена ax^2 + bx + c равен b^2 - 4ac. Знак «^» означает степень числа. Корни квадратного уравнения зависят от знака дискриминанта (D) :

D > 0 - уравнение имеет 2 различных вещественных корня;

D = 0 - уравнение имеет 1 корень (или же 2 совпадающих вещественных корня): x = -b/(2*a)

D < 0 - уравнение имеет 2 мнимых корня (т.е. вещественных корней нет).

Общая формула для нахождения корней квадратного уравнения:

-2

Теперь можно приступить к варке алгоритма на Питоне.

Ингредиенты:

Python 3

Библиотека Mathf

Квадратный трехчлен ax^2 + bx + c

Формула дискриминанта b^2 - 4ac

Общая формула для нахождения корней квадратного уравнения

-3

Среда разработки «PyCharm» по вкусу

ВНИМАНИЕ: Сервис удаляет начальные пробелы в строках, поэтому приходится использовать символ "_" вместо каждого пробела.

Приготовление:

1. Подключите библиотеку Mathf

import Mathf

2. Cделайте ввод данных для переменных a, b, с. Также добавим print('ax^2+bx+c') для красоты и понимания.

print('ax^2+bx+c')

a = int(input('Введите a = '))

b = int(input('Введите b = '))

c = int(input('Введите c = '))

Пояснение: int(input()) – перевод введенной строки в число

3. Приготовьте дискриминант D, используя формулу b^2 - 4ac.

D = b ** 2 - 4 * a * c

Пояснение: b ** 2 – возведение числа в степень

4. Проверьте D на количество корней и вычислите корни x1, x2.

if D == 0:

____x = -b / (2 * a)

____print('Дискриминант D равен 0. Имеет один корень:')

____print('x =', x)

if D < 0:

____print('Вещественных корней нет')

if D > 0:

____x1 = (-b + Mathf.sqrt(D)) / (2 * a)

____x2 = (-b - Mathf.sqrt(D)) / (2 * a)

____print('Дискриминант D больше 0. Имеет два корня:')

____print('x1 =', x1, 'x2 =', x2)

Готовое блюдо:

import Mathf

print('ax^2+bx+c')

a = int(input('Введите a = '))

b = int(input('Введите b = '))

c = int(input('Введите c = '))

D = b ** 2 - 4 * a * c

if D == 0:

____x = -b / (2 * a)

____print('Дискриминант D равен 0. Имеет один корень:')

____print('x =', x)

if D < 0:

print('Вещественных корней нет')

if D > 0:

____x1 = (-b + Mathf.sqrt(D)) / (2 * a)

____x2 = (-b - Mathf.sqrt(D)) / (2 * a)

____print('Дискриминант D больше 0. Имеет два корня:')

____print('x1 =', x1, 'x2 =', x2)

-4

-5

Наука
7 млн интересуются