Составьте программы на паскале для решения задачи 8(Пользуясь ограничениями: в арифметических выражениях можно использовать только операции сложения, вычитания, умножения; каждое выражение может содержать только одну арифметическую операцию. Напишите наиболее короткие алгоритмы вычисления выражений: y=x в 8 y=x в 10 y=x в 15 y=x в 19). При этом отмените ограничения на количество операций в арифметическом выражении, сформулированные в условиях задач
2^3 < 10, 3^3 > 20
2) Если x(x+1) > 10, то (x+1)(x+2) < 10. Это верно при x = -4
(-4)(-3) = 12 > 10; (-3)(-2) = 6 < 10
Но при x = 2 будет ложная посылка (2*3 > 10 - это ложно),
из которой следует ложный вывод 3*4 < 10.
Поэтому импликация верна. ответ x = 2
3) Если x(x+1)(x+2) > 25, то x < x-1
Это сложнее. x < x-1 - ложно при любом х.
Импликация будет истинной, только если посылка ложная.
x(x+1)(x+2) > 25 - должно быть ложно. Это при x = 2.
x(x+1)(x+2) = 2*3*4 = 24.
const
n=20;
var
a:array[1..n] of integer;
i,imax,imin:integer;
s:longint;
begin
Randomize;
Writeln('Исходный ряд значений');
imax:=1; imin:=1;
for i:=1 to n do begin
a[i]:=Random(51)-25; Write(a[i],' ');
if a[i]>a[imax] then imax:=i
else
if a[i]<a[imin] then imin:=i
end;
Writeln;
if imax>imin then
Writeln('Максимальный элемент встретился позже минимального')
else begin
s:=0;
for i:=imax+1 to imin-1 do s:=s+a[i];
Writeln('Сумма элементов между максимальным и минимальным значением ',s)
end
end.
Тестовое решение:
Исходный ряд значений
10 -3 9 5 20 10 6 2 -19 -19 6 -24 -7 -1 23 11 -8 -16 -14 -25
Сумма элементов между максимальным и минимальным значением -27