Program n1; Uses CRT; Const n=15; Var A: array[1..n] of integer; B: array[1..n] of integer; i,k,max: integer; begin randomize; clrscr; Writeln('ishodny massiv'); For i:=1 to n do begin a[i]:=random(100); a[i]:=a[i]-50; write(a[i]:4); end; writeln; writeln('polychenny massiv'); max:=0; For i:=1 to n do begin b[i]:=-a[i]; write(b[i]:4); If a[i]=b[i] then k:=k+1; If (b[i]>0)and(b[i]>max) then max:=b[i]; If (b[i]<0)and(-b[i]>max) then max:=-b[i]; end; writeln; Writeln('Kolychestvo neizmenyvshihsa elementov=',k,', samyi bolshoy po modyly element raven =',max); writeln end.
Сначала немного теории. Тут у нас импликация(если..то...), комбинированная с конъюнкцией(и). Таблица истинности импликации(стрелочки): 0 0 1 0 1 1 1 0 0 1 1 1 Общее правило: если a<=b, тогда правда Таблица истинности конъюнкции(/\): 0 0 0 0 1 0 1 0 0 1 1 1 Общее правило: если есть одна ложь-всё ложь. Про НЕ и гуманитарий поймёт. Про данный пример: Нам нужен вариант, где оба выражения являются правдой, т.к. между ними стоит И Подробно рассмотрим первый вариант: Ирина Первая буква гласная-правда Вторая буква гласная-ложь Значит, результат импликации-ложь, в чём можно убедиться взглянув на таблицу истинности, но, так как НЕ так же присутствует в данном условии, это выражение возвращает правду. Последняя буква гласная-правда Так как оба выражения при конъюнкции правда, всё выражение является правдой и удовлетворяет условию.
Program n1;
Uses CRT;
Const n=15;
Var A: array[1..n] of integer; B: array[1..n] of integer;
i,k,max: integer;
begin
randomize;
clrscr;
Writeln('ishodny massiv');
For i:=1 to n do
begin
a[i]:=random(100);
a[i]:=a[i]-50;
write(a[i]:4);
end;
writeln;
writeln('polychenny massiv');
max:=0;
For i:=1 to n do
begin
b[i]:=-a[i];
write(b[i]:4);
If a[i]=b[i] then k:=k+1;
If (b[i]>0)and(b[i]>max) then max:=b[i];
If (b[i]<0)and(-b[i]>max) then max:=-b[i];
end;
writeln;
Writeln('Kolychestvo neizmenyvshihsa elementov=',k,', samyi bolshoy po modyly element raven =',max);
writeln
end.