Решение квадратного уравнения на Python

Содержание
Введение
Пример
Использованные функции
Примеры уравнений их корни
Похожие статьи

Введение

Квадратные уравнения это уравнения вида

a*x^2 + b*x + c

x^2 и x подразумеваются по умолчанию, поэтому достаточно задать a, b и c - и сразу станет понятно как выглядит квадратное уравнение.

Пример решения

Первым делом проверим, что a, b и c это числа

from math import sqrt def quadratic_solve(a ,b, c): if not all( map( lambda p: isinstance(p, (int, float)), (a, b, c) ) ): raise TypeError("Not valid argument type") print("Types are OK") if a == 0: if b == 0: # a и b 0: решения нет return None, None return -c / b, None d = b ** 2 - 4 * a * c if d < 0: return None, None d_root = sqrt(d) divider = 2 * a x1 = (-b + d_root) / divider x2 = (-b - d_root) / divider if d == 0: x2 = None elif x2 > x1: x1, x2 = x2, x1 return x1, x2

Использованные функции

Здесь я использовал функции: all() , map() и лямбда функцию

Если что-то неясно - перейдите по ссылкам на функции либо постетите раздел «Функции»

Примеры уравнений их корни

Для проверки можно использовать следущие уравнения:

С одним корнем

x^2 - 2x + 1
a = 1, b = -2, c = 1
Корни: 1, None

5x^2 + 7x
a = 5, b = 7, c = 0
Корни: 0, None

С двумя корнями

x^2 + x -6
a = 1, b = 1, c = -6
Корни: -3, 2

Без решений

x^2 + x + 9
a = 1, b = 1, c = +9
Корни: None, None

Похожие статьи
*args **kwargs
Лямбда функции
all()
any()
map()
zip()
sorted()
Функции первого класса
Замыкания
Декораторы
Кэширование
Python
if, elif, else
Циклы
Методы
enum

Поиск по сайту

Подпишитесь на Telegram канал @aofeed чтобы следить за выходом новых статей и обновлением старых

Перейти на канал

@aofeed

Задать вопрос в Телеграм-группе

@aofeedchat

IT

Образование

Актуально сейчас

Разное

Поиск по сайту

Подпишитесь на Telegram канал @aofeed чтобы следить за выходом новых статей и обновлением старых

Перейти на канал

@aofeed

Задать вопрос в Телеграм-группе

@aofeedchat

Контакты и сотрудничество:
Рекомендую наш хостинг beget.ru
Пишите на info@urn.su если Вы:
1. Хотите написать статью для нашего сайта или перевести статью на свой родной язык.
2. Хотите разместить на сайте рекламу, подходящуюю по тематике.
3. Реклама на моём сайте имеет максимальный уровень цензуры. Если Вы увидели рекламный блок недопустимый для просмотра детьми школьного возраста, вызывающий шок или вводящий в заблуждение - пожалуйста свяжитесь с нами по электронной почте
4. Нашли на сайте ошибку, неточности, баг и т.д. ... .......
5. Статьи можно расшарить в соцсетях, нажав на иконку сети: