- Сделать программу в Python
- Площадь треугольника по формуле Герона на Питоне
- Математическая часть задачи
- Решение задачи на Питоне
- Второй вариант решения задачи
- Третий вариант решения задачи
- Вычисление площади фигур
- Код готовой программы
- Найти площадь прямоугольника, треугольника или круга
- Ввод и вывод данных в Python. Пишем первую программу (Урок №8)
- Задача
- Что любопытно
- Что делаем наша программа?
- Как это выглядит на компьютере:
- Уроки по Python 3:
Сделать программу в Python
Известны длины сторон треугольника a, b, c.
Напишите программу, вычисляющую площадь этого треугольника. Все числовые данные брать любые, но не забывать указывать тип.
import fractions, math
def f(x):
intx = int(x)
return intx if intx == x else x
try:
a, b, c = map(fractions.Fraction, input('a b c: ').split())
if a print('Треугольника с такими сторонами не существует !')
else:
p = (a + b + c) / 2
S = p * (p - a) * (p - b) * (p - c)
print(f(math.sqrt(float(S))))
except: pass
При вводе данных типа fractions.Fraction стороны можно задавать и как бы целым числом, и как 3.14, и как, например, 2/3, или ещё так 1.234e2. Существует ли треугольник с такими сторонами узнаётся абсолютно точно.
напишем программу в Python:
a = 20 # int
b = 30 # int
c = 25 # int
p = (a + b + c) / 2 # вычисляем полупериметр
s = (p * (p — a) * (p — b) * (p — c)) ** 0.5 # вычисляем площадь по формуле Герона
output:
Площадь треугольника с сторонами a = 20, b = 30, c = 25 равна 150.0 кв. ед.
a = 5.2 # длина стороны a
b = 6.7 # длина стороны b
c = 8.1 # длина стороны c
# вычисляем полупериметр
s = (a + b + c) / 2
# вычисляем площадь по формуле Герона
S = (s * (s — a) * (s — b) * (s — c)) ** 0.5
print(«Площадь треугольника:», S)
a = float(input())
b = float(input())
c = float(input())
p = ( a + b + c) / 2
s = (p * (p - a) * (p - b) * (p - c)) ** 0.5
print(s)
print(((lambda a,b,c: ((a + b + c) / 2 * ((a + b + c) / 2 — a) * ((a + b + c) / 2 — b) * ((a + b + c) / 2 — c))**0.5)((float(input())),(float(input())),(float(input())))))
Площадь треугольника по формуле Герона на Питоне
На языке программирования Питон можно решить много разных задач, в том числе и по математике. Для начинающих изучать этот язык будет полезно решить задание на вычисление площади треугольника. Одним из способов вычисления этой величины является применение формулы Герона.
Математическая часть задачи
Из школьного курса математики вы знаете, что площадь треугольника можно вычислить по данным длинам трёх его сторон по формуле Герона:
p – полупериметр треугольника.
Решение задачи на Питоне
На вход программе подаются целые числа, выводом программы должно являться вещественное число, соответствующее площади треугольника.
Для ввода целых чисел используем функцию int() .
Для решения задачи нам необходимо подключить библиотеку с математическими функциями. Делаем это с помощью строки импорта:
Функция для извлечения квадратного корня в этой библиотеке записывается так:
Код программы для вычисления площади треугольника
import math #подключаем библиотеку математических функций
a=int(input(«Введите сторону a brush: py»>
Python 3.5.2 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on Linux
12
13
14
72.30793524918272
Второй вариант решения задачи
Также можно воспользоваться стандартной функцией возведения числа в степень. Дело в том, что квадратный корень — это возведение в степень 1/2.
где x — число, возводимое в степень, а y — сама степень.
Вот так это запишется по формуле:
Результат выполнения кода:
Python 3.5.2 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
12
13
14
72.30793524918272
Третий вариант решения задачи
Вместо извлечения корня можно возвести в степень 1/2 или 0,5 . При этому функцию использовать не нужно.
Как видим, результат выполнения программы точно такой же.
Python 3.5.2 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
12
13
14
72.30793524918272
© 2013-2020 Информатика. Полезные материалы по информационным технологиям. Использование материалов без активной ссылки на сайт запрещено! Публикация в печати только с письменного разрешения администрации.
Вычисление площади фигур
Немного усложнив предыдущую задачу, мы можем рассчитывать самые разные площади.
Будем создавать программу для вычисления площади тругольника, прямоугольника (квадрата) и круга.
При вводе слова «треугольник», вычисляется площадь тругольника и т.д.
Для того, чтобы ввод данных использовал строковый тип применяется функция str() , которая переводит любое вводимое значение в строку.
Каждый случай определяется срабатыванием определенного условия, список которых можно увеличить до любого размера. Вполне логично создать свою пользовательскую функцию, использующую специальные переменные, а не писать постоянно условие. О том как создавать свои пользовательские функции рассказано и продемонстрировано здесь.
Строка import math загружает необходимую библиотеку дополнительных математических функций.
Квадратный корень, например, вычисляется по формуле math.sqrt()
Известно, что для вычисления площади круга используется значение числа Пи. В Питоне оно вычисляется методом math.pi
Код готовой программы
import math
tip=str(input(«Введите название фигуры треугольник»:
a=float(input(«Введите сторону a Введите сторону b Введите сторону c прямоугольник»:
a=float(input(«Введите сторону a Введите сторону b круг»:
r=float(input(«Введите радиус r brush: py»>Python 3.5.2 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
треугольник
Введите сторону a= 12
Введите сторону b= 13
Введите сторону c= 14
72.30793524918272
При вводе слова «прямоугольник»:
Python 3.5.2 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
прямоугольник
Введите сторону a= 12
Введите сторону b= 13
156.0
Python 3.5.2 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
круг
Введите радиус r= 12
452.3893421169302
Вы можете легко вычислять и другие площади фигур, если продолжите вписывать условия и функции. Успехов в программировании!
Найти площадь прямоугольника, треугольника или круга
В зависимости от того, что выберет пользователь, вычислить площадь либо прямоугольника, либо треугольника, либо круга. Если выбраны прямоугольник или треугольник, то надо запросить длины сторон, если круг, то его радиус.
Решение задачи на языке программирования Python
Площадь треугольника вычисляется по формуле Герона:
, где p — это полупериметр, a , b , c — длины сторон. Полупериметр равен половине периметра, то есть половине суммы сторон.
Площадь прямоугольника равна произведению его двух сторон (длины и ширины). Площадь круга вычисляется по формуле S = πr 2 .
from math import sqrt, pi print("1-прямоугольник, 2-треугольник, 3-круг") figure = input("Выберите фигуру: ") if figure == '1': print("Длины сторон прямоугольника:") a = float(input("a = ")) b = float(input("b = ")) print("Площадь: %.2f" % (a * b)) elif figure == '2': print("Длины сторон треугольника:") a = float(input("a = ")) b = float(input("b = ")) c = float(input("c = ")) p = (a + b + c) / 2 s = sqrt(p * (p - a) * (p - b) * (p - c)) print("Площадь: %.2f" % s) elif figure == '3': r = float(input("Радиус круга R = ")) print("Площадь: %.2f" % (pi * r ** 2)) else: print("Ошибка ввода")
Пример выполнение программы:
1-прямоугольник, 2-треугольник, 3-круг Выберите фигуру: 2 Длины сторон треугольника: a = 4 b = 5 c = 6 Площадь: 9.92
Начиная с версии 3.10, в Python имеется оператор match . Вариант решения задачи с его помощью будет выглядеть так:
from math import sqrt, pi print("1-прямоугольник, 2-треугольник, 3-круг") figure = input("Выберите фигуру: ") match figure: case '1': print("Длины сторон прямоугольника:") a = float(input("a = ")) b = float(input("b = ")) print("Площадь: %.2f" % (a * b)) case '2': print("Длины сторон треугольника:") a = float(input("a = ")) b = float(input("b = ")) c = float(input("c = ")) p = (a + b + c) / 2 s = sqrt(p * (p - a) * (p - b) * (p - c)) print("Площадь: %.2f" % s) case '3': r = float(input("Радиус круга R = ")) print("Площадь: %.2f" % (pi * r ** 2)) case _: print("Ошибка ввода")
Ввод и вывод данных в Python. Пишем первую программу (Урок №8)
В прошлых уроках мы разобрались с такими понятиями, как переменные и типы данных (смотрите список предыдущих уроков курса в конце статьи).
Чтобы закрепить эти знания, напишем простую программу, а заодно рассмотрим типичные ошибки, которые могут возникнуть при написании даже простейших программ.
Но прежде чем продолжить далее, отмечу, что можете посмотреть видео (в нем больше информации, по понятным причинам), или прочитать текстовую версию чуть ниже.
Задача
Напишем программу, которая считает площадь треугольника.
Для тех, кто забыл геометрию, напомню, что площадь треугольника вычисляется по формуле:
Что любопытно
Несмотря на то, что задача элементарная, мы сразу повторим несколько базовых концепция программирования.
Что делаем наша программа?
Программа должна запрашивать два числа у пользователя. Это высота и основание треугольника.
Программа выводит результат на экран, после того, как посчитает площадь треугольника.
Единственное, что мы пока не умеем делать — это запрашивать данные от пользователя.
Для этого нам понадобится использовать функцию input().
Вот код нашей программы с комментариями.
print("Площадь треугольника") print("Введите основание треугольника:") a = float(input()) # ввод данных от пользователя print("Введите высоту треугольника:") h = float(input()) # ввод данных от пользователя s = 0.5*a*h # вычисление площади по формуле print("Площадь треугольника = :", s) # вывод результата
Как это выглядит на компьютере:
Как видите, ничего сложного нет. Единственное, что нужно сразу предусмотреть — это использование для переменных типа данных float. Если выбрать тип данных int, то мы сможем считать площадь треугольника только с целыми числами для высоты и основания.
Поэтому, сразу выбираем float.