В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
данил2081
данил2081
14.11.2020 22:09 •  Информатика

Дан список 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

Показать ответ
Ответ:
vladugan
vladugan
18.03.2021 19:40
uses crt;
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;
0,0(0 оценок)
Ответ:
есенина1920
есенина1920
14.03.2023 17:11
Если вам нужно на паскале, то ловите. Числа в массив выпадают рандомно. Диапазон (-50, 50):
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.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота