Использование Var, Integer, Readln.

Процедура Readln используется не только для задержки экрана. Ее основная задача - ввод данных с клавиатуры. В этой статье мы научимся вводить числа с клавиатуры, и потом выводить их на экран. Для этого нам будет необходимо познакомиться с разделом ...

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

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

Функции trunc, round в Pascal.

Для того чтобы в Паскаль можно было оперировать не только целыми числами, но и дробными существуют вещественные типы данных. Один из таких типов называется Real. В этом уроке мы рассмотрим 2 функции, которые производятся над дробными числами. Это ...

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

Сортировка одномерного массива. Метод пузырька.

Сортировка — перестановка местами объектов в определенном порядке. Известно несколько сотен алгоритмов сортировки и их модификаций.

Индексы одномерного массива.

Существует класс задач, в которых индекс массива используется для формализации вычислительного процесса путем сведения исходных формул к конечным суммам и произведениям. Преобразованные таким образом ...

Пример 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.


Комментарии  

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

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

   ГлавнаяПаскальЛекции по ПаскальТип данных Char.