program Begin21;
var
x1,y1,x2,y2,x3,y3,a,b,c,P,pp,S: Real;{pp-полупериметр}
begin
Writeln('Введите значение координат певой точки: ');
Write('Введите значение x: ');
Readln(x1);
Write('Введите значение y: ');
Readln(y1);
Writeln('Введите значение координат второй точки: ');
Write('Введите значение x: ');
Readln(x2);
Write('Введите значение y: ');
Readln(y2);
Writeln('Введите значение координат третьей точки: ');
Write('Введите значение x: ');
Readln(x3);
Write('Введите значение y: ');
Readln(y3);
a:=sqrt(sqr(x1-x2)+sqr(y1-y2));
b:=sqrt(sqr(x2-x3)+sqr(y2-y3));
c:=sqrt(sqr(x3-x1)+sqr(y3-y1));
P:=a+b+c;
Writeln('Периметр треугольника равен: ',P);
pp:=(a+b+c)/2;
S:=Sqrt(pp*(pp-a)*(pp-b)*(pp-c));
Writeln('Площадь треугольника равен: ',S);
end.
Python
Преобразовать код pascal в python
Вот:
Попутно исправил грамматические ошибки.
Если погрешность float на выходе смущает, то можно воспользоваться форматом, уменьшив кол-во значащих цифр:
from math import sqrt
def sqr(f): return f * f
print('Введите значение координат первой точки:')
x1 = float(input('Введите значение x: '))
y1 = float(input('Введите значение y: '))
print('Введите значение координат второй точки:')
x2 = float(input('Введите значение x: '))
y2 = float(input('Введите значение y: '))
print('Введите значение координат третьей точки:')
x3 = float(input('Введите значение x: '))
y3 = float(input('Введите значение y: '))
a = sqrt(sqr(x1 - x2) + sqr(y1 - y2))
b = sqrt(sqr(x2 - x3) + sqr(y2 - y3))
c = sqrt(sqr(x3 - x1) + sqr(y3 - y1))
P = a + b + c
print('Периметр треугольника равен:', P)
pp = P / 2
S = sqrt(pp * (pp - a) * (pp - b) * (pp - c))
print('Площадь треугольника равна:', S)
Пример: Введите значение координат первой точки:
Введите значение x: 2
Введите значение y: 1
Введите значение координат второй точки:
Введите значение x: 5
Введите значение y: 6
Введите значение координат третьей точки:
Введите значение x: 9
Введите значение y: 0
Периметр треугольника равен: 20.113122257638754
Площадь треугольника равна: 18.999999999999996
Попутно исправил грамматические ошибки.
Если погрешность float на выходе смущает, то можно воспользоваться форматом, уменьшив кол-во значащих цифр:
print('Площадь треугольника равна: %.4f' % S)
Тогда будет так: Площадь треугольника равна: 19.0000
Джалилов Жахангир
Спасибо большое
Сократил:
from math import prod, sqrt
points = [(float(input(f'Введите значение координат {n} точки:\nВведите значение x: ')), float(input('Введите значение y: '))) for n in ('первой', 'второй', 'третьей')]
sides = [sqrt((points[i][0] - points[(0, i + 1)[i != 2]][0]) ** 2 + ((points[i][1] - points[(0, i + 1)[i != 2]][1]) ** 2)) for i in range(3)]
print('Периметр треугольника равен:', perimeter := sum(sides))
print('Площадь треугольника равна:', sqrt((perimeter := perimeter / 2) * prod(perimeter - side for side in sides)))
Результат: Введите значение координат первой точки:
Введите значение x: 2
Введите значение y: 1
Введите значение координат второй точки:
Введите значение x: 5
Введите значение y: 6
Введите значение координат третьей точки:
Введите значение x: 9
Введите значение y: 0
Периметр треугольника равен: 20.113122257638754
Площадь треугольника равна: 19.0
Как можно преобразовать физика Паскаля в змею?
Никак.
Никак.
Сергей Володин
Вот так:

Похожие вопросы
- Pascal или Python? Есть ли смысл продолжать учить Pascal? Или стоит учить более прогрессивный язык Python?
- Код на программу python пж
- Ошибка в коде стандарт PEP8 Python
- Напишите код к задаче python
- Почему код не работает python
- Можете помочь! Нужен код для Python, что бы он заменял определенный текст в файле
- Где ошибка в коде? (Python)
- Переписать код из С++ в Python
- Что не так в моем коде? Крестики - Нолики на python
- Python удаление кода через некоторое промежуток времени