Очередной модуль, целью которого является проработка различных функций библиотеки math. Решение урока 6.3 из курса «Поколение Python: курс для начинающих».
Евклидово расстояние
На плоскости евклидово расстояние между двумя точками (x1;y1) и (x2;y2) определяется так
Напишите программу определяющую евклидово расстояние между двумя точками, координаты которых заданы.
from math import * # Импортирует все функции из модуля math, чтобы использовать их в коде
# получаем четыре вещественных числа сохраняем их в переменные 'x1', 'y1', 'x2' и 'y2'
x1, y1, x2, y2 = float(input()), float(input()), float(input()), float(input())
# Вычисляет квадрат разности координат по оси x
q = pow(x1 - x2, 2)
# Вычисляет квадрат разности координат по оси y
w = pow(y1 - y2, 2)
# Вычисляет квадратный корень из суммы квадратов разностей координат по осям x и y, используя функцию sqrt()
p = sqrt(q + w)
# Выводит на экран расстояние между точками (x1, y1) и (x2, y2).
print(p)
Площадь и длина
Напишите программу определяющую площадь круга и длину окружности по заданному радиусу RR.
from math import pi # импорт math и дал ей псевдоним pi
R = float(input()) # получаем радиус
print(pi*R**2) # площадь круга
print(2*pi*R) # длина окружности
Средние значения
В математике выделяют следующие средние значения:
среднее арифметическое чисел a и b:
среднее геометрическое чисел a и b:
среднее гармоническое чисел a и b:
среднее квадратичное чисел a и b:
import math # импорт math
a, b = float(input()), float(input())
sab = a + b # Вычисляет сумму введенных чисел
pab = a * b # Вычисляет произведение введенных чисел
print(sab / 2) # Среднее арифметическое
print(math.sqrt(pab)) # Среднее геометрическое
print(2 * pab / sab) # Среднее гармоническое
print(math.sqrt((a**2 + b**2) / 2)) # Среднее квадратичное
Тригонометрическое выражение
Напишите программу, вычисляющую значение тригонометрического выражения sin x+cos x+tan2x по заданному числу градусов x.
from math import *
# Поскольку тригонометрические функции работают с радианами, нужно градусы перевести в радианы
x = radians(float(input()))
res = sin(x) + cos(x) + tan(x) ** 2
print(res)
Пол и потолок
Напишите программу, вычисляющее значение ⌈x⌉ +⌊x⌋ по заданному вещественному числу x.
# Импортирует модуль math, чтобы использовать его функции
import math
# Получаем число с плавающей запятой и сохраняем его в переменной 'a'
a = float(input())
# Вычисляет округленное в большую сторону значение числа 'a' с помощью функции ceil()
# и округленное в меньшую сторону значение числа 'a' с помощью функции floor().
# Затем складывает эти два значения и выводит результат на экран.
print(math.ceil(a) + math.floor(a))
Квадратное уравнение ?️?️
Даны три вещественных числа a, b, c. Напишите программу, которая находит вещественные корни квадратного уравнения ax2+bx+c=0.
# Импортирует все функции из модуля math для использования в коде
from math import *
# получаем три чисела с плавающей запятой и сохраняем их в переменные 'a', 'b' и 'c'
a = float(input())
b = float(input())
c = float(input())
d = b**2 - 4*a*c # Вычисляем дискриминант квадратного уравнения и сохраняем его в переменной 'd'
# Проверяет условие, если дискриминант 'd' меньше 0, то выводит 'Нет корней'
if d < 0:
print('Нет корней')
# Проверяет условие, если дискриминант 'd' равен 0, то вычисляет и выводит единственный корень уравнения
elif d == 0:
print(-b / (2*a))
# Если дискриминант 'd' больше 0, вычисляет два корня уравнения
elif d > 0:
x1 = (-b - d ** 0.5) / (2*a) # Вычисляет первый корень уравнения
x2 = (-b + d ** 0.5) / (2*a) # Вычисляет второй корень уравнения
print(min(x1, x2)) # Выводит наименьший корень
print(max(x1, x2)) # Выводит наибольший корень
Правильный многоугольник
Правильный многоугольник — выпуклый многоугольник, у которого равны все стороны и все углы между смежными сторонами. Площадь правильного многоугольника с длиной стороны aa и количеством сторон nn вычисляется по формуле:
Даны два числа: натуральное число n и вещественное число a. Напишите программу, которая находит площадь указанного правильного многоугольника.
# Импортирует все функции из модуля math для использования в коде
from math import *
# получаем два числа с плавающей запятой и сохраняем их в переменные 'n' и 'a'
n, a = float(input()), float(input())
# Вычисляем площадь многоугольникам
ans = (n * pow(a, 2)) / (4 * tan(pi / n))
# Выводит результат вычисления площади многоугольника на экран.
print(ans)
Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы
Понравилась статья? Поделиться с друзьями:
Подписаться
10 комментариев
Новые
СтарыеПопулярные
Межтекстовые Отзывы
Посмотреть все комментарии
lyanssa
1 месяц назад
Правильный многоугольник: from math import * n,a = int(input()), float(input()) print ((n * a ** 2) / (4 * tan(pi / n)))
lyanssa
1 месяц назад
Квадратное уравнение: a = float(input()) b = float(input()) c = float(input()) d = b**2-4*a*c
if d < 0: print(‘Нет корней’) elif d == 0: print(-b / (2*a)) elif d > 0: x1 = (-b — d ** 0.5) / (2*a) x2 = (-b + d ** 0.5) / (2*a) print(min(x1, x2)) print(max(x1, x2))
негр
1 год назад
тут задание не из 6.2 а другое .в 6.2 стриковый тип данных
witchbladeess
1 год назад
в последней задаче (про правильный многоугольник), корректнее было бы написать n = int(input()) , ибо количество сторон всегда будет целым числом, а не с плавающей точкой. у многоугольника не может быть 3.0546 стороны к тому же, условие ‘Даны два числа: натуральное число n и вещественное число a’
Может я чего-то непонимаю, но в первой задаче про евлидово расстояние скорее всего неверное решение: print(math.hypot(x1 — y1, x2 — y2)) получается неправильный ответ.
hypot() — этот метод возвращает евклидову норму, sqrt (х * х + у * у) Когда я переписала вот так, то ответ получился верный. print(math.hypot(x1 — x2, y1 — y2))
Правильный многоугольник:
from math import *
n,a = int(input()), float(input())
print ((n * a ** 2) / (4 * tan(pi / n)))
Квадратное уравнение:
a = float(input())
b = float(input())
c = float(input())
d = b**2-4*a*c
if d < 0:
print(‘Нет корней’)
elif d == 0:
print(-b / (2*a))
elif d > 0:
x1 = (-b — d ** 0.5) / (2*a)
x2 = (-b + d ** 0.5) / (2*a)
print(min(x1, x2))
print(max(x1, x2))
тут задание не из 6.2 а другое .в 6.2 стриковый тип данных
в последней задаче (про правильный многоугольник), корректнее было бы написать

n = int(input()) , ибо количество сторон всегда будет целым числом, а не с плавающей точкой. у многоугольника не может быть 3.0546 стороны
к тому же, условие ‘Даны два числа: натуральное число n и вещественное число a’
проводить операции между переменными разного типа невозможно. То есть вы не можете делить int на float, у вас будет ошибка TypeError и NoneType
ник имба
Спасибо за информацию
Спасибо.
Может я чего-то непонимаю, но в первой задаче про евлидово расстояние скорее всего неверное решение:
print(math.hypot(x1 — y1, x2 — y2)) получается неправильный ответ.
hypot() — этот метод возвращает евклидову норму, sqrt (х * х + у * у)
Когда я переписала вот так, то ответ получился верный.
print(math.hypot(x1 — x2, y1 — y2))
Спасибо! Проверим и отредактируем если что.