Одномерный массив (2 задачи) - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

1) Ввести массив, состоящий из 14 элементов действительного типа. Расположить элементы с 1 по 7 по возрастанию, а с 8 по 14 - в порядке убывания. 2)Ввести массив, состоящий из 14 элементов действительного типа. Поменять местами первую половину со второй. Определить количество произведенных при этом перестановок.

Решение задачи: «Одномерный массив (2 задачи)»

textual
Листинг программы
const
    N = 14;
var
    ar: Array[1..N] Of Real;
    i, j: Byte;
    swap: Real;
begin
    Randomize;
    for i := 1 to N do
    begin
        ar[i] := Random * 198 - 99;
        Write(ar[i]:7:2);
    end;
    WriteLn;
    for i := 1 to 6 do
        for j := 1 to 7 - i do
            if (ar[j] > ar[j + 1])
            then
            begin
                swap := ar[j];
                ar[j] := ar[j + 1];
                ar[j + 1] := swap;
            end;
    for i := 1 to 6 do
        for j := 8 to N - i do
            if (ar[j] < ar[j + 1])
            then
            begin
                swap := ar[j];
                ar[j] := ar[j + 1];
                ar[j + 1] := swap;
            end;
    for i := 1 to N do
        Write(ar[i]:7:2);
    WriteLn;
end.

Объяснение кода листинга программы

В данном коде объявлен одномерный массив ar размером N, где N равно 14. Далее, в цикле for i := 1 до N выполняется следующие действия:

  1. На каждой итерации цикла, значение переменной i увеличивается на 1, и значение переменной ar[i] вычисляется как случайное число от 0 до 197, с помощью формулы Random * 198 - 99. Это число записывается в соответствующую ячейку массива ar.
  2. Затем, с помощью функции Write, выводится значение переменной ar[i] с приставкой :7:2, что означает, что число будет записано в формате с 7 знаками после запятой и 2 знаками до запятой.
  3. После выполнения всех итераций внутреннего цикла, выполняется вывод строки ``.
  4. Далее, в цикле for i := 1 до 6 выполняется следующий код:
    • В каждой итерации внутреннего цикла, выполняется проверка, если значение переменной ar[j] больше значения переменной ar[j+1].
    • Если это условие выполняется, то происходит обмен значениями переменных ar[j], ar[j+1] и swap.
    • Если условие не выполняется, то происходит обмен значениями переменных ar[j], ar[j+1] и swap.
    • После выполнения всех итераций внутреннего цикла, выполняется вывод строки ``.
  5. Наконец, в цикле for i := 1 to N выполняется последний код:
    • На каждой итерации внутреннего цикла, значение переменной ar[i] записывается в формат с 7 знаками после запятой и 2 знаками до запятой с помощью функции Write.
    • После выполнения всех итераций внутреннего цикла, выполняется вывод строки ``.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4 из 5
Похожие ответы