Вариант с заполнением с клавиатуры. ---------------------------------------------------------- var A: array [1..10] of real; i: byte; mult: real; begin mult := 1; for i := 1 to 10 do begin write('Введите A[',i ,'] = '); readln(A[i]); end; writeln('Сгенерированный массив.'); for i := 1 to 10 do begin write(A[i]:1:2); write(' '); if (A[i] > 0.00) and (A[i] < 1.00) then mult := mult * A[i]; end; writeln; if mult <> 1 then writeln('Произведение = ', mult:2:4) else writeln('Элементы в диапазоне от 0 до 1 отсутствуют.'); end.
---------------------------------------------------------- Вариант с случайным заполнением. ---------------------------------------------------------- var A: array [1..10] of real; i: byte; mult: real; begin mult := 1; randomize; writeln('Сгенерированный массив.'); for i := 1 to 10 do begin A[i] := random*10; write(A[i]:1:2); write(' '); if (A[i] > 0.00) and (A[i] < 1.00) then mult := mult * A[i]; end; writeln; if mult <> 1 then writeln('Произведение = ', mult:2:4) else writeln('Элементы в диапазоне от 0 до 1 отсутствуют.'); end.
В качестве примера равномерного кода можно назвать ASCII-таблицу, где каждому из 256 символов сопоставлено двоичное значение от 00000000 до 11111111. Независимо от вероятности появления символа на его представление отводится 1 байт, или 8 бит. Как известно, национальные языки обладают большой избыточностью, то есть разницей между энтропией источника и максимально возможной энтропией, обусловленной равной вероятностью появления любого символа из алфавита. Например, избыточность русского языка составляет 70%, а английского – 50%. Это в частности означает, что некоторые буквы появляются в тексте гораздо чаще других и поэтому использовать равномерное кодирование нерационально. При неравномерном кодировании часто встречающимся символам сопоставляются более короткие кодовые последовательности, редко встречающимся – более длинные. За счет этого удается значительно сократить объем файла без потерь информации. Существует несколько методов неравномерного кодирования, важнейших из которых является метод Шеннона-Фано. Тут не много, да и все понятно, надеюсь и тебе будет .
----------------------------------------------------------
var
A: array [1..10] of real;
i: byte;
mult: real;
begin
mult := 1;
for i := 1 to 10 do
begin
write('Введите A[',i ,'] = ');
readln(A[i]);
end;
writeln('Сгенерированный массив.');
for i := 1 to 10 do
begin
write(A[i]:1:2);
write(' ');
if (A[i] > 0.00) and (A[i] < 1.00) then
mult := mult * A[i];
end;
writeln;
if mult <> 1 then
writeln('Произведение = ', mult:2:4)
else
writeln('Элементы в диапазоне от 0 до 1 отсутствуют.');
end.
----------------------------------------------------------
Вариант с случайным заполнением.
----------------------------------------------------------
var
A: array [1..10] of real;
i: byte;
mult: real;
begin
mult := 1;
randomize;
writeln('Сгенерированный массив.');
for i := 1 to 10 do
begin
A[i] := random*10;
write(A[i]:1:2);
write(' ');
if (A[i] > 0.00) and (A[i] < 1.00) then
mult := mult * A[i];
end;
writeln;
if mult <> 1 then
writeln('Произведение = ', mult:2:4)
else
writeln('Элементы в диапазоне от 0 до 1 отсутствуют.');
end.