Найти в Дзене
programmer's notes (python and more)

Стандартные библиотеки в Python. Библиотека math. Приложение 1 к видео 8

Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео.

Приложение 1 к видеоуроку

Примеры использования библиотеки math

В данной статье мы просто разберём примеры из видео 8, несколько развив один из примеров. В следующем приложении к уроку будет дан справочник по библиотеке math, которая в основном нацелена на работу с числами с плавающей точкой или вещественными числами.

Примеры задач, честно говоря, типовые. Первый пример это получении таблицы функции. Таблицей функции обычно называют множество пар — (x, y) .

В библиотеке множество самых разных математических функций. Ну давайте рассмотрим sin(x), точнее 8 * sin(2 * x).

Текст программы см. ниже
Текст программы см. ниже
primer60.py

Результат выполнения программы

[(-6.28, 0.0), (-6.18, 1.59), (-6.08, 3.12), (-5.98, 4.52), (-5.88, 5.74), (-5.78, 6.73), (-5.68, 7.46), (-5.58, 7.88), (-5.48, 8.0), (
-5.38, 7.79), (-5.28, 7.27), (-5.18, 6.47), (-5.08, 5.4), (-4.98, 4.12), (-4.88, 2.68), (-4.78, 1.13), (-4.68, -0.47), (-4.58, -2.04),
(-4.48, -3.54), (-4.38, -4.89), (-4.28, -6.05), (-4.18, -6.97), (-4.08, -7.61), (-3.98, -7.95), (-3.88, -7.97), (-3.78, -7.67), (-3.68,
-7.07), (-3.58, -6.18), (-3.48, -5.05), (-3.38, -3.72), (-3.28, -2.24), (-3.18, -0.66), (-3.08, 0.93), (-2.98, 2.49), (-2.88, 3.95), (
-2.78, 5.26), (-2.68, 6.35), (-2.58, 7.19), (-2.48, 7.74), (-2.38, 7.99), (-2.28, 7.91), (-2.18, 7.53), (-2.08, 6.84), (-1.98, 5.88), (
-1.88, 4.68), (-1.78, 3.3), (-1.68, 1.78), (-1.58, 0.2), (-1.48, -1.39), (-1.38, -2.93), (-1.28, -4.35), (-1.18, -5.6), (-1.08, -6.62),
(-0.98, -7.38), (-0.88, -7.85), (-0.78, -8.0), (-0.68, -7.83), (-0.58, -7.35), (-0.48, -6.58), (-0.38, -5.55), (-0.28, -4.29), (-0.18,
-2.87), (-0.08, -1.32), (0.02, 0.27), (0.12, 1.85), (0.22, 3.36), (0.32, 4.74), (0.42, 5.92), (0.52, 6.87), (0.62, 7.55), (0.72, 7.92)
, (0.82, 7.98), (0.92, 7.73), (1.02, 7.16), (1.12, 6.31), (1.22, 5.2), (1.32, 3.89), (1.42, 2.42), (1.52, 0.86), (1.62, -0.74), (1.72,
-2.3), (1.82, -3.78), (1.92, -5.1), (2.02, -6.23), (2.12, -7.1), (2.22, -7.69), (2.32, -7.98), (2.42, -7.94), (2.52, -7.59), (2.62, -6.
94), (2.72, -6.01), (2.82, -4.84), (2.92, -3.48), (3.02, -1.98), (3.12, -0.4), (3.22, 1.2), (3.32, 2.75), (3.42, 4.18), (3.52, 5.46), (
3.62, 6.51), (3.72, 7.3), (3.82, 7.81), (3.92, 8.0), (4.02, 7.87), (4.12, 7.43), (4.22, 6.69), (4.32, 5.69), (4.42, 4.46), (4.52, 3.05)
, (4.62, 1.52), (4.72, -0.07), (4.82, -1.66), (4.92, -3.18), (5.02, -4.58), (5.12, -5.79), (5.22, -6.77), (5.32, -7.48), (5.42, -7.9),
(5.52, -7.99), (5.62, -7.77), (5.72, -7.24), (5.82, -6.43), (5.92, -5.35), (6.02, -4.06), (6.12, -2.61), (6.22, -1.06)]

Таблицу функции можно использовать для построения графика, для выполнения каких либо численных расчетов.

Следующая задача чуть интересней. Есть типичное квадратное уравнение

Квадратное уравнение
Квадратное уравнение

Решается оно разными способами. Одно из решений через дискриминант (D). Этот вариант я и выбрал в видео. Но есть нюанс. Если a=0, то это уже линейное уравнение. Оно тоже решаемо. И в квадратном и линейном уравнении есть частные случаи. Для квадратного уравнения: D>0, D<0, D=0. В первом случае есть два действительных корня, во втором корней на множестве действительных чисел нет. Ну а в третьем случае корни совпадают. В случае линейного уравнения тоже есть три случая: b!=0, b=0 and c!=0, b=0 and c=0. В первом случае есть один корень, во втором случае корней нет, в третьем случае корней бесчисленное множество. В сущности я описал весь алгоритм решения уравнения, который я реализовал в программе. В общем, ничего сложного.

Текст программы см. ниже
Текст программы см. ниже
primer61.py

Например

2 8 4
Квадратное уравнение
x1 =  -0.5858
x2 =  -3.4142

или

0 4 67
Линейное уравнение
x =  -16.75

Второе приложение по библиотеке math...

Хорошего программирования. Оставляйте свои комментарии, не забывайте про лайки и подписывайтесь на мой канал programmer's notes.

Вы хотите мне сказать, что при программировании нужно обязательно соблюдать правила?
Вы хотите мне сказать, что при программировании нужно обязательно соблюдать правила?