Предмет: Информатика,
автор: 10091999
Решите, пожалуйста, задачу по информатике в Паскале ABC!
Задан массив, с помощью случайных чисел из 15 элементов, найти максимальный элемент среди положительных, минимальный элемент среди нечетных. Найти максимальный и минимальный элементы среди нечетных элементов массива. Какое из них стоит раньше?
Ответы
Автор ответа:
1
const
N = 15;
var
mas:array[1..15] of integer;
i, max1, max2, min, c, d:integer;
begin
c:=-1;
max1:=-maxint;
min:=maxint;
max2:=-maxint;
randomize;
for i:=1 to N do
mas[i]:=random(101)-50;
write('Массив: ');
for i:=1 to N do
write(mas[i], ' ');
writeln;
for i:=1 to N do
begin
if (mas[i]>0) AND (mas[i]>max1) then
max1:=mas[i];
if (mas[i] mod 2 <> 0) AND (max2<mas[i]) then
begin
c:=i;
max2:=mas[i];
end;
if (mas[i] mod 2 <> 0) AND (min>mas[i]) then
begin
d:=i;
min:=mas[i];
end;
end;
writeln('Максимальный положительный элемент: ',max1);
writeln('Минимальный нечетный элемент: ',min);
writeln('Максимальный нечетный элемент: ',max2);
if c<d then
writeln('Максимальный элемент стоит раньше')
else
writeln('Минимальный элемент стоит раньше');
end.
N = 15;
var
mas:array[1..15] of integer;
i, max1, max2, min, c, d:integer;
begin
c:=-1;
max1:=-maxint;
min:=maxint;
max2:=-maxint;
randomize;
for i:=1 to N do
mas[i]:=random(101)-50;
write('Массив: ');
for i:=1 to N do
write(mas[i], ' ');
writeln;
for i:=1 to N do
begin
if (mas[i]>0) AND (mas[i]>max1) then
max1:=mas[i];
if (mas[i] mod 2 <> 0) AND (max2<mas[i]) then
begin
c:=i;
max2:=mas[i];
end;
if (mas[i] mod 2 <> 0) AND (min>mas[i]) then
begin
d:=i;
min:=mas[i];
end;
end;
writeln('Максимальный положительный элемент: ',max1);
writeln('Минимальный нечетный элемент: ',min);
writeln('Максимальный нечетный элемент: ',max2);
if c<d then
writeln('Максимальный элемент стоит раньше')
else
writeln('Минимальный элемент стоит раньше');
end.
Похожие вопросы
Предмет: Русский язык,
автор: runarapenston
Предмет: Английский язык,
автор: удачя
Предмет: Українська мова,
автор: liza20051992
Предмет: Русский язык,
автор: aiko126