HelpPlzzzzz
19.09.2021 19:30

Кто-нибудь ответьте на эти 2 варианта


Кто-нибудь ответьте на эти 2 варианта

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
agm7132
08.07.2020 15:57
const
  n = 15;

var
  a, b: array[1..n] of integer;
  i, j, step, t: integer;
  flag: boolean;

begin
  Randomize;
  Writeln('Исходные элементы массива');
  for i := 1 to n do
  begin
    a[i] := Random(10) - 5;
    Write(a[i]:4)
  end;
  { Сортируем массив (метод Шелла) }
  step := n div 2;
  while step > 0 do
  begin
    for j := n - step downto 1 do
    begin
      i := j;
      while i <= n - step do
      begin
        if a[i] > a[i + step] then
        begin
          t := a[i]; a[i] := a[i + step]; a[i + step] := t
        end;
        i := i + step
      end
    end;
    step := step div 2
  end;
  {
  проходим по массиву и если элемент встречается более одного раза подряд,
  переносим его в другой массив
  }
  j := 0; t := a[1]; flag := false;
  for i := 2 to n do
  begin
    if (a[i] = t) and (not flag) then
    begin
      j := j + 1; b[j] := t; flag := true
    end
    else begin flag := false; t := a[i] end
  end;
  Writeln;
  Writeln('Отобранные элементы массива');
  for i := 1 to j do Write(b[i]:4);
  Writeln
end.

Тестовое решение:

Исходные элементы массива
  -2   4   1  -3  -1  -2  -5  -1   2   4   1   3  -5  -2  -3
Отобранные элементы массива
  -5  -3  -2  -1   1   4
0,0(0 оценок)
Ответ:
дима4класс1
04.04.2021 16:45
Var
  a: array [1..10] of integer;
  pr, i, kol, sum: integer;begin
  sum := 0;
  pr := 1;
  for i := 1 to 10 do
    a[i] := -50 + random(100);
  for i := 1 to 10 do
  begin
    if (a[i] mod 2 = 1) or (a[i] mod 2 = -1) then   // 1
      sum := sum + a[i];  
    if (i mod 2 = 0)   then                         // 2
      pr := pr * a[i]
    else if (i mod 2 = 0) and (a[i] = 0) then
      pr := 0;               
  end;
  for i := 1 to 10 do
    if (a[i] mod 10 = 0) then
      a[i] := 0;
  for i := 2 to 9 do                                // 3
  begin
    if a[i] = 0 then
      if (a[i + 1] <> 0) and ((i + 1) mod 2 = 0) and (a[i - 1] <> 0) and ((i - 1) mod 2 = 0) then
        kol := kol + 1;
  end;
  writeln('сумму нечетных элементов =', ' ', sum);
  writeln('произведение элементов =', ' ', pr);
  writeln('число пар соседних элементов =', ' ', kol);
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота