Информатика, вопрос задал tinistossel4141 , 7 лет назад

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые положительные значения от 1 до 10 000 включительно. Напишите на языке программирования Паскаль программу, которая находит сумму минимального из четных элементов массива и минимального из нечетных элементов массива, затем уменьшает все элементы массива, которые больше этой суммы, на величину этой суммы, на величину этой суммы, и выводит измененный массив в обратном порядке, по одному числу в строке. Если в массиве нет четных или нечетных элементов, считается, что соответствующий минимум равен 0. Например, из массива
7, 5, 2, 4, 8,10, 14, 15
программа должна получить массив
7, 5, 2, 4, 1, 3, 7, 8
и вывести (по одному числу в строке) числа:
8 7 3 1 4 2 5 7

Ответы на вопрос

Ответил lbvf23
0

Const n=30;

Var i, k, k1, k2:Integer ;

A:array [1..10001]of Integer ;

Begin

For i:=1 to N do begin

A[i]:=random(10001);

Write(' A[', i, ']=', A[i]) ;

End;

Writeln;

K1:=10001;k2:=10001;

For i:=1 to N do begin

If (A[i] mod 2=0)and(A[i]<k1)then k1:=A[i];

If (A[i] mod 2=1)and(A[i]<k2)then k2:=A[i] ;

End;

K:=k1+k2;

For i:=1 to N do begin

If A[i]>k then A[i]:=A[i]-k;

End ;

For i:=n downto 1 do begin

Writeln(' A[', i, ']=', A[i]) ;

End;

End.

Новые вопросы