Дан список raw_list (содержимое списка приведено в начале кода). Найдите минимальное (x_min) и максимальное (x_max) значения элементов данного списка.
Создайте новый список my_list, состоящий из элементов списка raw_list, умноженных на x_min, если элемент является чётным числом и на x_max в случае, если элемент нечётный.
Найдите максимальное значение списка my_list. Результат присвойте переменной result.
моя программа:
raw_list = [2, 8, 10, 23, 64, 49, 11, 52, 71, 14]
x_min=min(raw_list)
x_max=max(raw_list)
my_list=[]
if x_min%2==0:
for i in raw_list:
my_list.append(i*x_min)
if x_max%2!=0:
for i in raw_list:
my_list.append(i*x_min)
result=max(my_list)
И мне выдают при введении решения в поле для решений курса:
result contains wrong data
const nmax=100;
var x:array[1..nmax] of integer;
n,m,i,j,k,a,p:integer;
begin clrscr;
randomize;
repeat
write('Размер массива от 2 до ',nmax,' n=');
readln(n);
until n in [2..nmax];
writeln('Исходный массив:');
for i:=1 to n do
begin
x[i]:=random(10);
write(x[i]:4); end;
writeln; i:=1;
m:=n;
while i<n-1 do
begin
k:=1;
a:=x[i];
for j:=n downto i+1 do
if x[j]=a then k:=k+1;
if k>2 then
begin
j:=i;
while j<=n do
if x[j]=a then
begin
if j=n then n:=n-1
else
begin
for p:=j to n-1 do
x[p]:=x[p+1];
n:=n-1;
end;
end
else j:=j+1;
end
else i:=i+1;
end; if n=0 then
begin
exit
end;
if n=m then
write('Все элементы встречены не более 2 раз и не удалены') else
begin
for i:=1 to n do write(x[i]:4);
for i:=1 to n-1 do
for j:=i+1 to n do
if(i mod 2=0)and(j mod 2=0) and(x[i]<x[j]) then
begin
a:=x[i];
x[i]:=x[j];
x[j]:=a;
end;
for i:=1 to n do
write(x[i]:4);
end;
var mass: Array[1..30] of real;
i, j: integer;
isE: boolean;
begin
randomize;
isE := true;
for i := 1 to 30 do begin
mass[i] := random (100) - 50;
end;
for i := 1 to 30 do begin
writeln('mass[', i, '] = ', mass[i]);
end;
for i := 1 to 30 do begin
for j := 1 to 30 do begin
if i <> j then begin
if mass[i] = mass[j] then begin
writeln('Массив не уникален!');
isE := false;
end;
end;
end;
end;
if isE = true then writeln('Массив уникален!');
end.