Var
a, b, S, c, alpha, betta, gamma, H, P: real;
x, ar, br, gr: real;{alpha, beta. gamma в радианах}
begin
write('Введите длины двух сторон треугольника и площадь: ');
readln(a, b, S);
x := 2 * S / (a * b);
if x > 1 then writeln('Такой треугольник невозможен')
else
begin
gr := ArcSin(x);
c := Sqrt(Sqr(a) + Sqr(b) - 2 * a * b * Cos(gr));
P := a + b + c;
ar := ArcSin(a * Sin(gr) / c);
br := Pi - (ar + gr);
H := b * Sin(ar);
alpha := ar * 180 / Pi;
betta := br * 180 / Pi;
gamma := 180 - (alpha + betta);
writeln('Решение треугольника');
writeln('a=', a, ', b=', b, ', c=', c:0:5);
writeln('Alpha=', alpha:0:2, ', Betta=', betta:0:2, ', Gamma=', gamma:0:2);
writeln('P=', P:0:5, ', H=', H:0:5, ', S=', S)
end
end.
Тестовое решение:
Введите длины двух сторон треугольника и площадь: 3 4 6
Решение треугольника
a=3, b=4, c=5.00000
Alpha=36.87, Betta=53.13, Gamma=90.00
P=12.00000, H=2.40000, S=6
Var
b:integer;
begin
readln(b);
case b of
0:
writeln('Нуль');
1:
writeln('Один');
2:
writeln('Два');
3:
writeln('Три');
4:
writeln('Четыре');
5:
writeln('Пять');
6:
writeln('Шесть');
7:
writeln('Семь');
8:
writeln('Восемь');
9:
writeln('Девять');
end;
<span>end.</span>
Количество информации можно определить как -log2(p), где p - вероятность данного события. Оно измеряется в битах.
Также можно использовать равносильное выражение log2(1/p)
Вероятность взятия чёрного шара равна 10/20 = 0,5, белого - 4/20 = 0,2, жёлтого такая же - 0,2, красного - в 2 раза меньше - 0,1.
Значит, если мы взяли чёрный шар, мы получили кол-во информации log2(1/0,5) = log2(2) = 1 бит,
если белый, то log2(1/0,2) = log2(5) = 2,3219 бит
если жёлтый, то столько же 2,3219 бит
если красный, то log2(1/0,1) = log2(10) = 3,3219 бит
<span>Чем меньше вероятность события, тем большее количество информации мы получаем, когда это событие наступает. </span>