// PascalABC.NET 3.0, сборка 1144 от 16.01.2016 type Point=record x,y:real end;
function GetPoint(c:char):Point; begin Writeln('Введите координаты точки ',c,':'); Read(Result.x,Result.y) end;
function Line(A,B:Point):real; begin Result:=sqrt(sqr(B.x-A.x)+sqr(B.y-A.y)) end;
function SqTriangle(pA,pB,pC:Point):real; begin var a:=Line(pB,pC); var b:=Line(pA,pC); var c:=Line(pA,pB); if (a+b>c) and (a+c>b) and (b+c>a) then begin var p:=(a+b+c)/2; Result:=sqrt(p*(p-a)*(p-b)*(p-c)) end else Result:=0 end;
begin var A:=GetPoint('A'); var B:=GetPoint('B'); var C:=GetPoint('C'); Writeln('Площадь треугольника равна ',SqTriangle(A,B,C)) end.
Тестовое решение: Введите координаты точки A: -5 3.18 Введите координаты точки B: 1.45 6.2 Введите координаты точки C: 6 -5.93 Площадь треугольника равна 45.98975
bolosolo77
07.04.2021
// PascalABC.NET 3.3, сборка 1627 от 27.01.2018 // Внимание! Если программа не работает, обновите версию!
begin var n:=ReadInteger('Количество строк (столбцов) в матрице:'); Writeln('*** Исходная матрица ***'); var a:=MatrRandom(n,n,-99,99); a.Println(4); Writeln(4*a.ColCount*'-'); var (su,sd,sl):=(0,0,0); for var i:=0 to n-1 do for var j:=0 to n-1 do if i<j then su+=a[i,j] else if i=j then sd+=a[i,j] else sl+=a[i,j]; Writeln('Суммы элементов:'); Writeln(' - верхней треугольной матрицы ',su); Writeln(' - главной диагонали ',sd); Writeln(' - нижней треугольной матрицы ',sl) end.
Пример Количество строк (столбцов) в матрице: 4 *** Исходная матрица *** -73 -89 4 39 77 -32 23 -45 -29 -70 -88 -40 -83 9 21 -46
Суммы элементов: - верхней треугольной матрицы -108 - главной диагонали -239 - нижней треугольной матрицы -75
"Школьный" вариант
const nn=20; { максимальный размер }
var a:array[1..nn,1..nn] of integer; i,j,n:integer; su,sd,sl:longint;
begin Write('Количество строк (столбцов) в матрице:'); Readln(n); Randomize; Writeln('*** Исходная матрица ***'); su:=0; sd:=0; sl:=0; for i:=1 to n do begin for j:=1 to n do begin a[i,j]:=Random(199)-99; Write(a[i,j]:4); if i<j then su+=a[i,j] else if i=j then sd+=a[i,j] else sl+=a[i,j] end; Writeln end; Writeln('Суммыа элементов:'); Writeln(' - верхней треугольной матрицы ',su); Writeln(' - главной диагонали ',sd); Writeln(' - нижней треугольной матрицы ',sl) end.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Дан диаметр окружности d. Найти ее длину L = π·d. В качестве значения π использовать 3.14
program vld;
Const
PI = 3.14;
var
d,l : real;
begin
readln(d);
l := PI * d;
writeln(l);
end.