1-11 класс
  • 1-11 класс
  • 1 класс
  • 2 класс
  • 3 класс
  • 4 класс
  • 5 класс
  • 6 класс
  • 7 класс
  • 8 класс
  • 9 класс
  • 10 класс
  • 11 класс
Выберите класс
Предметы
Семакин
Работа 3.6 Упр.12 ГДЗ Семакин 10 класс (Информатика)
Семакин, Хеннер, Шеина
10 класс
Автор
Семакин, Хеннер, Шеина

Работа 3.6 Упр.12 ГДЗ Семакин 10 класс (Информатика)

Задача

Рассмотрим вариант решения задания из учебника Семакин, Хеннер, Шеина 10 класс, Бином: 12. Дана последовательность действительных чисел а1 < = а2 < = ... < = аn Вставить действительное число b в нее так, чтобы последовательность осталась неубывающей. *Цитирирование задания со ссылкой на учебник производится исключительно в учебных целях для лучшего понимания разбора решения задания. 10 semakin10 pract/3-6/12 98

Подробный ответ

Чтобы вставить число $$b$$ в неубывающую последовательность, нужно найти такое место, где выполняется

$$a_{i-1} \le b \le a_i.$$

Тогда число $$b$$ ставится на позицию $$i$$, а все элементы, начиная с этой позиции, сдвигаются вправо на один шаг.

Если подходящее место не найдено, то число $$b$$ добавляется в конец последовательности.

var n,f,z,x,j,i,b: integer; a: array[1..100] of integer;
begin
  f := 0;
  writeln;
  write(‘введите кол-во элементов ‘); read(n);
  for i := 1 to n do begin
    write(‘Введите A[‘, i, ‘]’); read(a[i]);
  end;
  write(‘Введите b ‘); read(b);
  for i := n downto 1 do begin
    if (f = 0) and (b <= a[i]) and (b >= a[i-1]) then begin
      x := a[i];
      a[i] := b;
      z := i;
      f := 1;
    end;
  end;
  a[z] := x;
  for i := n+1 downto z do begin
    a[i] := a[i-1];
  end;
  for i := 1 to n+1 do writeln(‘A[‘, i, ‘] = ‘, a[i]);
end.

В этом решении программа:

  • считывает количество элементов и саму последовательность;
  • считывает число $$b$$;
  • находит место вставки в неубывающей последовательности;
  • сдвигает элементы вправо и вставляет $$b$$;
  • выводит новую последовательность из $$n+1$$ элемента.

Ответ: число $$b$$ вставляется в найденную позицию так, чтобы сохранялось условие $$a_1 \le a_2 \le \dots \le a_n$$.



Общая оценка
5 / 5
Другие учебники
Другие предметы