Ученики класса узнали результаты контрольной работы, и выяснилось, что 1/8 учеников класса получила оценку "5", столько же получили "2", 1/4 учеников получила отметку "3" и полкласса получила отметку "4". Необходимо построить код Хаффмана для каждой отметки.
Отождествите нужные символы, соединив их стрелками.
10а+b-(10c+d)=a+b+c+d;
9(a-c)=2(c+d);
(a-c)/(c+d)=2/9
Проанализировав первое условие, получаем, что а=с+2, d=9-c, следовательно 0<=c<=7.}
program prim4;
uses crt;
var a,b,c,d: integer;
begin
clrscr;
for c:=0 to 7 do
begin
a:=c+2; d;=9-c;
for b:=0 to 9 do
begin
if (b<>c)and(b<>a)and(b<>d)
then
write(a,b,c,d);
writeln
end;
end;
readln;
end.
{Таким образом, мы решили задачу, значительно сократив перебор.}
var x, F: real;
begin
write('Введите х: ');
readln(x);
if ( x > -2.4 ) AND ( x < 5.7 ) then F := sqr(x)
else F := 4;
writeln('F = ', F);
end.
№2
var x, F: real;
begin
write('Введите х: ');
readln(x);
if ( x > 0.2 ) AND ( x < 0.9 ) then F := sin(x)
else F := 1;
writeln('F = ', F);
end.
№3
var a,b,c: real;
begin
write('Введите а: ');
readln(a);
write('Введите b: ');
readln(b);
write('Введите c: ');
readln(c);
if ( a < b ) AND ( b < c ) then writeln('a < b < c')
else
if ( b > a ) AND ( a > c ) then writeln('b > a > c')
else
writeln('Неравенства не выполняются');
end.