найти количество таких пар натуральных чисел А и В, что А≤В и
периметр прямоугольника со сторонами А и В будет не больше, чем Р.
Входные данные. Первая строка содержит натуральное число Р (Р≤100000) –
максимальный периметр.
Выходные данные. Единственное целое число – количество различных
размеров
Единицы измерения информации
В 1 бит можно записать один двоичный символ.
1 байт = 8 бит
В кодировке ASCII в один байт можно записать один 256 символьный код
В кодировке UNICODE один 256 символьный код занимает в памяти два байта
1 килобайт = 1024 байт
1 мегабайт = 1024 килобайт
1 гигабайт = 1024 мегабайт
1 терабайт = 1024 гигабайт
Формула Хартли 2 i = N где i- количество информации в битах, N - неопределенность
Таблица степеней двойки, которая показывает сколько информации можно закодировать с бит
i
0
1
2
3
4
5
6
7
8
9
10
N=2 i
1
2
4
8
16
32
64
128
256
512
1024
Чтобы вычислить информационный объем сообщения надо количество символов умножить на число бит, которое требуется для хранения одного символа
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