Pascal abc как найти площадь треугольника

Площадь треугольника по формуле Герона

📐 Площадь прямоугольного треугольника. Вычислить площадь и периметр прямоугольного треугольника по двум сторонам. Четыре варианта решения задач.

🟩 Вычисление периметра и площади квадрата. Четыре варианта решения задачи. В том числе вариант решения на PascalABC.NET, без использования устаревших конструкций (с точки зрения этой версии).


Даны три стороны треугольника ABC. Напишите программу вычисления площади треугольника по формуле Герона

Задачи по информатике, программирование на Паскале. Во втором примере используется оператор перехода GOTO. Третий пример написан, с учётом рекомендаций PascalABC.NET («здоровье кода» составляет 144%).

Задача №1

Задание:
Вычислить площадь треугольника по формуле Герона S = √(p·(p — a)·(p — b)·(p — c))

Program Heron;
Var p, St, A, B, C : Real;
begin
writeln(‘Площадь треугольника по формуле Герона ‘);
write(‘Введите стороны треугольника ‘);
readln(A, B, C);
if (A+B>C) AND (A+C>B) AND (B+C>A) then begin
p := (A + B + C) / 2;
St := Sqrt(p * (p — a) * (p — b) * (p — c));
writeln(‘Площадь треугольника ‘, St:8:5)
end
else writeln(‘Треугольник с такими сторонами не существует’)
end.

Замечание:
В процедуре вывода writeln используется форматированный вывод переменной. St:8:5 обозначает, что для вывода значения переменной S будет использоваться 8 позиций, в том числе 5 после запятой. При этом если целая часть числа будет трёхзначной, то после запятой всё равно будет 5 знаков, а всё число будет занимать 9 позиций.

Задача №2

Задание:
1. Вычислить площадь треугольника по формуле Герона S = √(p·(p — a)·(p — b)·(p — c))
2. Спросить у пользователя «Заверить программу или продолжить выполнение».

Program Heron;
Label 1;
Var
p, St, A, B, C : Real;
YN : Char;
begin
writeln(‘Площадь треугольника по формуле Герона ‘);
1:
write(‘Введите стороны треугольника ‘);
readln(A, B, C);
if (A+B>C) AND (A+C>B) AND (B+C>A) then begin
p := (A + B + C) / 2; { Найти полупериметр треугольника }
St := Sqrt(p * (p — a) * (p — b) * (p — c));
writeln(‘Площадь треугольника ‘, St:8:5)
end
else writeln(‘Треугольник с такими сторонами не существует’);
write(‘Продолжить выполнение программы? Y / N ‘);
readln(YN);
if (YN = ‘Y’) OR (YN = ‘y’) then GOTO 1
else writeln (‘Вы закончили работу с программой’);
end.

Вычислить площадь треугольника по формуле Герона. Вариант решения на PascalABC.NET

Задание:
Найти площадь треугольника. При решении задачи использовать синтаксис, рекомендуемый в PascalABC.NET.

begin
Println(‘Площадь треугольника по формуле Герона ‘);
Print(‘Введите стороны треугольника ‘);
var (A, B, C) := ReadReal3; // Возвращает кортеж из трёх значений типа real, введенных с клавиатуры.
if (A+B>C) AND (A+C>B) AND (B+C>A) then begin // Проверить существует ли треугольник с такими сторонами.
var p := (A + B + C) / 2; // Найти полупериметр треугольника.
var St := Sqrt(p * (p — a) * (p — b) * (p — c)); // Вычислить площадь. Функция Sqrt — возвращает квадратный корень числа.
Println(‘Площадь треугольника ‘, St)
end
else Println(‘Треугольник с такими сторонами не существует’)
end.


📐 Площадь прямоугольного треугольника. Вычислить площадь и периметр прямоугольного треугольника по двум сторонам. Четыре варианта решения задач.

🟩 Вычисление периметра и площади квадрата. Четыре варианта решения задачи. В том числе вариант решения на PascalABC.NET, без использования устаревших конструкций (с точки зрения этой версии).

Рекламный блок

Информационный блок

Вычисление площадей геометрических фигур

Задача

Пример программы, позволяющей вычислять площади трех геометрических фигур: прямоугольника, треугольника и круга.

Решение

Площадь прямоугольника: area = a * b
Площадь треугольника: area = sqrt(s * (s – a) * (s – b) * (s – c)), где s = (a + b + c) / 2
Площадь круга: area = pi * sqr(d) / 4

Пользователь осуществляет выбор фигуры, площадь которой он хочет получить, путем ввода цифр 1, 2 или 3.
Для выбора ветви вычисления используется конструкция if-else, которая включает вторую конструкцию if-else, а та, в свою очередь, — третью:

Программа на языке Паскаль:

При вводе сторон треугольника должно быть соблюдено правило: сумма любых двух сторон должна быть больше третьей. Иначе возникает ошибка.

Найти площади разных фигур

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

Пусть программа может вычислять площади трех фигур: круга, прямоугольника и треугольника. Для вычисления каждой из них необходима отдельная функция. Пусть каждая из этих функций возвращает полученную площадь, а принимает параметры, необходимые для ее вычисления.

Для вычисления площади круга необходим радиус, для прямоугольника — длины двух сторон, для треугольника (если площадь вычисляется по формуле Герона) — длины трех сторон. Следовательно, функции будут различаться по количеству параметров.

Площадь круга вычисляется по формуле πr 2 .
Площадь прямоугольника является произведением двух его сторон.
Площадь треугольника по формуле Герона рассчитывается через полупериметр (p=(a+b+c)/2, где a , b и c — длины сторон треугольника) по формуле sqrt(p * (p-a) * (p-b) * (p-c)), где sqrt — квадратный корень.

В основной ветке программы должен происходить выбор, площадь какой фигуры необходимо вычислить. В зависимости от выбора будут запрашиваться необходимые данные (радиус или длины сторон) и передаваться в соответствующую функцию. Возвращаемое из функции значение будет выводиться на экран.

Pascal

паскаль площадь фигуры

В Паскале существует встроенная константа π (pi).

Язык Си

Компилировать с ключом -lm.

Python

КуМир

Basic-256

В функции ничего не передается и ничего из них не возвращается.

  • Total 5
  • 0
  • 0
  • 0
  • 5

паскаль площадь фигуры

var
choice: char;
a, x, y, z: real;

function circle(r: real): real;
begin
circle := pi * sqr(r);
end;

function rectangle(a, b: real): real;
begin
rectangle := a * b
end;

function triangle(a, b, c: real): real;
var x: real;
begin
x := (a + b + c) / 2;
triangle := sqrt(x * (x — a) * (x — b) * (x — c))
end;

begin
write(‘Круг(c), прямоугольник(r) или треугольник(t): ‘);
readln(choice);
case choice of
‘c’: begin
write(‘Радиус: ‘);
readln(x);
a := circle(x)
end;
‘r’: begin
write(‘Длина и ширина: ‘);
readln(x, y);
a := rectangle(x, y)
end;
‘t’: begin
write(‘Стороны: ‘);
readln(x, y, z);
a := triangle(x, y, z)
end
end;
writeln(‘Площадь: ‘, a:4:2);
end.

Круг(c), прямоугольник(r) или треугольник(t): c
Радиус: 2
Площадь: 12.57

Круг(c), прямоугольник(r) или треугольник(t): r
Длина и ширина: 3.85 12.55
Площадь: 48.32

Круг(c), прямоугольник(r) или треугольник(t): t
Стороны: 3 4 6.5
Площадь: 4.17

В Паскале существует встроенная константа π (pi).

float circle(float);
float rectangle(float, float);
float triangle(float, float, float);

main() <
char ch;
float a,b,c;
printf(«Круг(c), прямоугольник(r) или треугольник(t): «);
scanf(«%c», &ch);
switch (ch) <
case ‘c’:
printf(«Радиус: «);
scanf(«%f», &a);
printf(«Площадь круга %.2fn», circle(a));
break;
case ‘r’:
printf(«Длина и ширина: «);
scanf(«%f%f», &a, &b);
printf(«Площадь прямоугольника: %.2fn», rectangle(a,b));
break;
case ‘t’:
printf(«Стороны: «);
scanf(«%f%f%f», &a, &b, &c);
printf(«Площадь треугольника: %.2fn», triangle(a,b,c));
break;
>
>

float circle(float r) <
return 3.14159 * r * r;
>

float rectangle(float x, float y) <
return x * y;
>

float triangle(float x, float y, float z) <
float p;
p = (x+y+z) / 2;
return sqrt(p * (p-x) * (p-y) * (p-z));
>

Компилировать с ключом -lm.

def circle(r):
return math.pi * r**2

def rectangle(a, b):
return a*b

def triangle(a, b, c):
p = (a+b+c)/2
return math.sqrt(p * (p-a) * (p-b) * (p-c))

choice = input(«Круг(к), прямоугольник(п) или треугольник(т): «)
if choice == ‘к’:
rad = float(input(«Радиус: «))
print(«Площадь круга: %.2f» % circle(rad))
elif choice == ‘п’:
l = float(input(«Длина: «))
w = float(input(«Ширина: «))
print(«Площадь прямоугольника: %.2f» % rectangle(l,w))
elif choice == ‘т’:
AB = float(input(«Первая сторона: «))
BC = float(input(«Вторая сторона: «))
CA = float(input(«Третья сторона: «))
print(«Площадь треугольника: %.2f» % triangle(AB,BC,CA))

алг площадь фигуры
нач
вещ а, б, в
сим фигура
вывод «Круг(к), прямоугольник(п), треугольник(т): »
ввод фигура
если фигура = «к» то
вывод «Радиус: »
ввод а
вывод «Площадь круга: «, круг(а)
иначе
если фигура = «п» то
вывод «Длина: »
ввод а
вывод «Ширина: »
ввод б
вывод «Площадь прямоугольника: «, прямоугольник(а,б)
иначе
если фигура = «т» то
вывод «Сторона 1: »
ввод а
вывод «Сторона 2: »
ввод б
вывод «Сторона 3: »
ввод в
вывод «Площадь треугольника: «, треугольник(а,б,в)
все
все
все
кон

алг вещ круг (вещ р)
нач
знач := 3.14 * р**2
кон
алг вещ прямоугольник (вещ д, вещ ш)
нач
знач := д * ш
кон
алг вещ треугольник (вещ ст1, вещ ст2, вещ ст3)
нач
вещ п
п := (ст1 + ст2 + ст3) / 2
знач := sqrt(п * (п — ст1) * (п — ст2) * (п — ст3))
кон

input «Круг (к), прямоугольник (п) или треугольник (т): «, ch$
if ch$ = «к» then
gosub circ
else
if ch$ = «п» then
gosub rectangle
else
if ch$ = «т» then
gosub triangle
endif
endif
endif
end

circ:
input «Радиус: «, r
print «Площадь круга: » + (pi * r^2)
return

rectangle:
input «Длина: «, a
input «Ширина: «, b
print «Площадь прямоугольника: » + (a*b)
return

triangle:
input «Первая сторона: «, a
input «Вторая сторона: «, b
input «Третья сторона: «, c
p = (a+b+c) / 2
s = sqrt(p * (p-a) * (p-b) * (p-c))
print «Площадь треугольника: » + s
return

В функции ничего не передается и ничего из них не возвращается.

Задачи по Pascal. Вычислить периметр и площадь прямоугольного треугольника по длинам двух катетов.

Условие задачи: Вычислить периметр и площадь прямоугольного треугольника по длинам двух катетов (Язык Pascal)

Сложность: легкая.

Решение задачи

Для начала продумаем наше решение. Оно очень простое. Вводим два катета, потом подставляем их в формулы и выводим ответы.

Давайте посмотрим на формулы :

1. Это у нас будет периметр :

Как известно и прямоугольного треугольника 3 стороны два катета и гипотенуза. Периметр это сумма длин всех сторон, а нам получается еще надо найти гипотенузу, делается это с помощью формулы :

2. Это у нас площадь :

И так формулы есть, теперь можно решать.

Для того чтобы решить задачу нам понадобятся следующие переменные :

  1. Переменные a и b — для катетов
  2. Переменная c — для гипотенузы
  3. Переменная S — для площади
  4. Переменная P — для периметра

var
  a, b, c, p, s: real;
begin
  write('Введите стороны треугольника a, b, c: ');
  readln(a, b, c);
  if not ((a < b + c) and (b < a + c) and (c < a + b)) then
    writeln('Треугольника с заданными сторонами не существует!') else
  begin
    p := (a + b + c) / 2;
    s := sqrt(p * (p - a) * (p - b) * (p - c));
    writeln('Площадь S=', s:0:2);
  end;
end.

Перейти к содержанию

Вычисление площадей и периметров фигур

Просмотров 5.4к. Обновлено 26 октября 2021

Площади и периметры фигур можно найти по следующим формулам.

Периметр треугольника: P = a + b + c
Площадь треугольника: S = √(p(p-a)(p-b)(p-c)), где p = P/2

Периметр прямоугольника: P = 2(a + b)
Площадь прямоугольника: S = ab

Периметр круга: P = 2πr
Площадь круга: S = πr2

Pascal

вычислить площадь фигуры паскаль


var
a,b,c: word;
w,h: word;
r: word;
P,S: real;
begin
readln(a,b,c);
P := (a + b + c) / 2;
S := sqrt(P * (P - a) * (P - b) * (P - c));
writeln('P=',a+b+c,'; S=',S:5:2);

readln(w,h);
writeln('P=',(w+h)*2,'; S=',w*h);

readln(r);
P := 2 * pi * r;
S := pi * r * r;
writeln('P=',P:5:2,'; S=',S:5:2);
end.



5 3 5
P=13; S= 7.15
3 9
P=24; S=27
5
P=31.42; S=78.54

Язык Си


#include
#include

#define PI 3.14159

main() {
int a,b,c;
float p,S;
printf("Длины сторон треугольника: ");
scanf("%d%d%d", &a,&b,&c);
p = (a+b+c)/2;
S = sqrt(p*(p-a)*(p-b)*(p-c));
printf("P = %d; S = %.2fnn", (a+b+c), S);
printf("Ширина и высота прямоугольника: ");
scanf("%d%d", &a,&b);
printf("P = %d; S = %dnn", (a+b)*2, a*b);
printf("Радиус круга: ");
scanf("%d", &a);
printf("P = %.2f; S = %.2fn", 2*PI*a, PI*pow(a,2));
}



Длины сторон треугольника: 4 4 6
P = 14; S = 7.94

Ширина и высота прямоугольника: 2 5
P = 14; S = 10

Радиус круга: 3
P = 18.85; S = 28.27

В библиотеке math.h нет константы числа π.

При компиляции с помощью gcc необходимо в конце команды указать ключ -lm (из-за math.h).

Python

вычислить площадь фигуры Python


import math

print("Введите длины сторон треугольника: ")
a = int(input("a="))
b = int(input("b="))
c = int(input("c="))
p = (a+b+c)/2
s = math.sqrt(p*(p-a)*(p-b)*(p-c))
print("P=%d; S=%.2f" % (a+b+c, s))

print("Введите длины сторон прямоугольника: ")
a = int(input("a="))
b = int(input("b="))
print("P=%d; S=%d" % ((a+b)*2, a*b))

print("Введите радиус круга: ")
r = int(input("r="))
print("P=%.2f; S=%.2f" % (2*math.pi*r, math.pi*r**2))



Введите длины сторон треугольника:
a=2
b=4
c=3
P=9; S=2.90
Введите длины сторон прямоугольника:
a=6
b=7
P=26; S=42
Введите радиус круга:
r=3
P=18.85; S=28.27

КуМир


алг фигуры
нач
цел a,b,c
ввод a, b, c
вещ p, S
p := (a+b+c)/2
S := sqrt(p*(p-a)*(p-b)*(p-c))
вывод "P=", p*2, "; S=", S, нс

цел w, h
ввод w, h
вывод "P=", (w+h)*2, "; S=", w*h, нс

цел r
ввод r
p := 2 * 3.14 * r
S := 3.14 * r**2
вывод "P=", p, "; S=", S, нс
кон



5 7 9
P=21; S=17.41228
4 9
P=26; S=36
5
P=31.4; S=78.5

Не нашлось константы для числа π

Basic-256


# найти площади и периметры геометрических фигур
decimal 2
# треугольник
print "ТРЕУГОЛЬНИК"
input " первая сторона: ", a
input " вторая сторона: ", b
input " третья сторона: ", c
p = a + b + c
print "Периметр: " + p
p = p / 2
s = sqr(p*(p-a)*(p-b)*(p-c))
print "Площадь: " + s
print
# прямоугольник
print "ПРЯМОУГОЛЬНИК"
input " ширина: ", a
input " высота: ", b
print "Периметр: " + ((a + b) * 2)
print "Площадь: " + (a * b)
print
# круг
print "КРУГ"
input " радиус: ", r
print "Периметр: " + (2 * pi * r)
print "Площадь: " + (pi * r^2)



ТРЕУГОЛЬНИК
первая сторона: 5
вторая сторона: 5
третья сторона: 5
Периметр: 15
Площадь: 10.83

ПРЯМОУГОЛЬНИК
ширина: 5
высота: 5
Периметр: 20
Площадь: 25

КРУГ
радиус: 5
Периметр: 31.42
Площадь: 78.54

0 / 0 / 0

Регистрация: 30.09.2012

Сообщений: 4

1

Найти площадь треугольника

30.09.2012, 20:13. Показов 64918. Ответов 1


Студворк — интернет-сервис помощи студентам

составить блок-схему алгоритма и программу вычисления площади треугольника по трем сторонам.



0



domovou2.0

Дзæуджыхъæу

232 / 204 / 148

Регистрация: 20.09.2012

Сообщений: 421

Записей в блоге: 1

30.09.2012, 20:49

2

Лучший ответ Сообщение было отмечено Вики как решение

Решение

Pascal
1
2
3
4
5
6
7
var a,b,c,p,p2:real;
begin
writeln('a,b,c ');readln(a,b,c);
p:=(a+b+c)/2;
p2:=sqrt(p*(p-a)*(p-b)*(p-c));
writeln('Perimetr= ',p2:0:3)
end.



1



Понравилась статья? Поделить с друзьями:
  • Как отправить письмо чтобы не нашли
  • Как грамотно составить объявление на продажу дома
  • Нарушение слоговой структуры у ребенка как исправить
  • Как найти среднегодовой прирост ввп
  • Как составить филологическое дерево