Приоритет выполнения логических операций в Pascal.

Логические операции применяются при написании многих программ в Pascal. Все операции имеют определенный приоритет выполнения : Первой выполняется операция NOT. Второй выполняется операция AND. Последними выполняются операции OR и XOR (Они имеют ...

Тип данных Boolean. Значения True, False в Pascal.

Мы рассмотрели с Вами целый тип данных (integer), вещественный тип (real), символьный (char). В этом уроке мы рассмотрим тип данных, который имеет большое значение в программировании. Логический типBoolean. Одной из особенностей этого типа данных ...

Функции Sqr, Abs, Sqrt, Sin, Cos, Arctan, Ln, Exp, Pi в Pascal.

Мы уже знаем, какие существуют функции для целых переменных. Это – нахождение модуля числа (Функция Abc), а также возведение числа в квадрат (Функция Sqr). В этом уроке мы рассмотрим функции, применяемые к дробным числам. Это функции Sqr - квадрат ...

Циклы и массивы

Инициализация одномерного массива.

Отличительной особенностью Паскаля от большинства процедурных языков является то, что все переменные должны быть инициализированы. То есть в разделе VAR переменным отводится место, а начальное ...

Использование оператора WITH ... DO.

Из предыдущего примера легко заметить, что при каждом обращении к полю записи следует указывать имя этой записи. Если вы работаете с полями одной и той же записи, то этой проблемы можно избежать ...

Пример 36. Задан двумерный массив X из 6 строк и 4 столбцов. Упорядочить массив X по возрастанию элементов дробной части столбца с номером N. Отсортированный массив X вывести на экран монитора.

За основу алгоритма возьмем алгоритм сортировки одномерного массива методом пузырька. Отличие этой задачи в том, что переставлять местами нужно не два соседних элемента одномерного массива, а две соседние строки двумерного массива. Перестановка двух строк реализована с помощью арифметического цикла, третьего уровня вложения, с параметром цикла К.
Структурограмма:

sortirovka massiv.....


PROGRAM PR36;
VAR    
X: ARRAY [1..6, 1..4] OF REAL;
N, К, I, J: INTEGER;
R: REAL;
BEGIN
WRITELN('Введите матрицу X');
FOR I := 1 ТО 6
DO FORJ := 1 TO 4
       DO READ(X[I, J]);
WRITELN('Укажите номер столбца N матрицы X');
READLN(N);
FOR      I:=2 TO 6
DO    FOR J:=6 DOWNTO I
          DO    IF FRAC(X[J-1,N])>FRAC(X[J,N])
                    THEN   FOR К := 1 TO 4     { Перестановка строк}
                                  DO BEGIN
                                         R := X[J-1, К];
                                         Х[J-1, K] := X[J, К];
                                         Х[J, K]:- R;
                                         END;
{ Вывод на экран отсортированного массива X }
WRITELN('Матрица X имеет вид:');
FOR I := 1 ТО 6
DO    BEGIN
          FOR J := 1 ТО 4
          DO WRITE(X[I, J]: 6: 3,' ');
          WRITELN
          END
END.


Предыдущая статья: Отображение на экране значений двумерного массива.
Оглавление: Лекции по Pascal.


Комментарии  

 
-6 # buka 23.01.2013 19:42
:o :D :lol: :-? :cry: :-x
Ответить
 
 
-4 # oleg 23.05.2013 16:16
:eek: :eek: :eek: :-x :-x :-x :-* :-* :-*
Ответить
 
 
-7 # Алексей 26.08.2014 10:12
:lol: ;-) 8) :-| :-* :oops: :sad: :-? :eek: :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz :zzz
Ответить
 
 
-3 # Вася 29.10.2014 19:32
8)
Ответить
 
 
-1 # Хуец залупенский 26.12.2015 20:02
Шляпа немытая
Ответить
 
 
-4 # хакер 28.03.2017 07:10
8) 8) 8) 8) 8)
Ответить
 
 
0 # Ded1337 11.08.2017 10:34
А где объяснение программы? Тут практически ничего не понятно.
Ответить
 

Добавить комментарий

Защитный код
Обновить

   ГлавнаяПаскальЛекции по ПаскальСортировка двумерного массива.