1-11 класс
  • 1-11 класс
  • 1 класс
  • 2 класс
  • 3 класс
  • 4 класс
  • 5 класс
  • 6 класс
  • 7 класс
  • 8 класс
  • 9 класс
  • 10 класс
  • 11 класс
Выберите класс
Предметы
(Сам и контр)
Задание 8 Вариант 3 Самостоятельная работа 4 ГДЗ Рабочая тетрадь Босова 11 класс (Информатика)
Босова, Босова, Аквилянов
11 класс
Автор
Босова, Босова, Аквилянов

Задание 8 Вариант 3 Самостоятельная работа 4 ГДЗ Рабочая тетрадь Босова 11 класс (Информатика)

Задача

Массив С, упорядоченный по возрастанию.
program s4_v3_8;
const
n = 11;
var
c: array[1..n] of real;
a: real;
i, j: integer;
begin
writeln(‘ввод массива’);
//randomize;
for i := 1 to n do
//c[i] := random*20-10;
readln(c[i]);
// сортировка методом «пузырька»
for i := 1 to n — 1 do
for j := 1 to n — i do
if c[j] > c[j+1] then
begin
a := c[j];
c[j] := c[j+1];
c[j+1] := a
end;
for i := 1 to n do
write(c[i], ‘, ‘)
end.
Массив С, упорядоченный по возрастанию:
-310, -14, -10, -4.5, 0, 5, 7.2, 11, 14, 50, 63,
В программе предусмотрен (в комментариях) ввод массива через генератор случайных чисел. Можно воспользоваться им, для этого убрать // и закомментировать ввод с клавиатуры. Для изменения количества элементов измените n.

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

Для упорядочивания массива по возрастанию используем сортировку методом «пузырька». Соседние элементы сравниваются, и если левый больше правого, то они меняются местами. После нескольких проходов наибольшие элементы постепенно «всплывают» в конец массива.

program s4_v3_8;
const
  n = 11;
var
  c: array[1..n] of real;
  a: real;
  i, j: integer;
begin
  writeln(‘ввод массива’);
  //randomize;
  for i := 1 to n do
  //c[i] := random*20-10;
  readln(c[i]);
  // сортировка методом «пузырька»
  for i := 1 to n — 1 do
    for j := 1 to n — i do
      if c[j] > c[j+1] then
      begin
        a := c[j];
        c[j] := c[j+1];
        c[j+1] := a
      end;
  for i := 1 to n do
    write(c[i], ‘, ‘)
end.

Проверим программу на массиве $$C = \{63, 7.2, -4.5, 0, -10, 14, -310, 50, 11, -14, 5\}.$$

После сортировки элементы массива будут расположены так:

$$-310,\ -14,\ -10,\ -4.5,\ 0,\ 5,\ 7.2,\ 11,\ 14,\ 50,\ 63$$

В программе можно использовать генератор случайных чисел: для этого нужно убрать символы // перед randomize и строкой с присваиванием случайного значения, а ввод с клавиатуры закомментировать. Если нужно изменить количество элементов, следует изменить значение n.

Ответ

$$-310,\ -14,\ -10,\ -4.5,\ 0,\ 5,\ 7.2,\ 11,\ 14,\ 50,\ 63$$



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