1. Укажите, какие свойства информации отсутствуют в следующих сообщениях.
Аргументируйте свои ответы.
а) Выполни команду: стой там – иди сюда
б) 01 05 32 11 30 00 11 18 14.
в) «Сегодня очень теплая погода».
г) Реши задачу: вычислить площадь прямоугольника, если известна одна его
сторона.
д) Почтальон принес телеграмму от родственников с встретить их,
когда поезд уже прибыл на вокзал.
е) Вам принесли второй раз извещение о посылке.
2.В следующих примерах определите свойства встречающейся информации:
а) Идет вступительный экзамен по математике. Вы попросили у соседа его решение задачи. Шпаргалка содержала полное и правильное решение, но ... на японском языке.
б) На следующий день вступительная комиссия вывесила правильные решения всех задач.
в) Один персидский царь, собираясь завоевать соседнее государство, обратился к оракулу с вопросом: “Что произойдет, если я со своим войском переправлюсь через пограничную реку?” Оракул ответил: “Государь, ты разрушишь великое царство”. Удовлетворившись таким предсказанием, завоеватель переправился со своим войском через реку и был разгромлен войском противной стороны. В гневе он обратился к оракулу, обвиняя того в обмане. На что оракул ответил: “Государь, а разве твое царство было не велико?”
Var
ar:array[1..15] of integer;
i,k1,k2:integer;
r1,r2:real;
begin
randomize;
writeln('Array:');
for i:=1 to 15 do
begin
ar[i]:=random(-20,20);
write(ar[i]:4);
if i mod 2=0 then
begin
inc(k1);
r1:=r1+ar[i];
end;
if ar[i]>0 then
begin
inc(k2);
r2:=r2+k2;
end;
end;
r1:=r1/k1;
r2:=r2/k2;
writeln;
if r1>r2 then writeln('Среднее арифметическое элементов стоящих на четных местах');
if r1<r2 then writeln('Cреднее арифметическое положительных элементов массива');
if r1=r2 then writeln('Равно');
end.
// PascalABC.NET 3.1, сборка 1213 от 04.04.2016
const
n=14;
begin
var a:=ArrRandom(n,-50,50); a.Println;
var min:=a.Min;
var b:=a.Where(x->(x>min) and (x<0));
if b.Count>0 then Writeln('Искомое произведение равно ',
b.Aggregate(1.0,(p,x)->p*x))
else Writeln('Нет отрицательных чисел, меньших минимального')
end.
Тестовое решение:
44 -35 -10 43 -25 -32 -32 -43 4 -50 29 -7 42 3
Искомое произведение равно -2696960000
2. Школьный вариант
// PascalABC.NET 3.1, сборка 1213 от 04.04.2016
const
n=14;
var
i,min,k:integer;
a:array[1..n] of integer;
p:real;
begin
Randomize;
min:=100; // любое, большее максимального 50
for i:=1 to n do begin
a[i]:=Random(101)-50;
Write(a[i],' ');
if a[i]<min then min:=a[i]
end;
Writeln;
p:=1.0;
k:=1;
for i:=1 to n do
if (a[i]>min) and (a[i]<0) then begin
p:=p*a[i]; Inc(k)
end;
if k>0 then Writeln('Искомое произведение равно ',p)
else Writeln('Нет отрицательных чисел, меньших минимального')
end.
Тестовое решение:
40 49 27 -14 -34 -45 -41 -23 50 1 40 -18 -27 -20
Искомое произведение равно -4362996960