Delphi Studio [Pascal] работа с матрицами
FeniXElite | 13-04-2010, 09:16 | Pascal Статьи

[Pascal] работа с матрицами

Основные приемы при работе с матрицами на Pascal

Всем студентам или школьникам, которые изучают паскаль, обычно задают задания на работу с матрицами. Я постараюсь описать все основные аспекты при работе с ними.

Работа с матрицами


Для начала давайте определимся, что же такое матрица.
Матрица - это множество чисел, сгруппированных в столбцы и строки.
Пример матрицы :
1 2 3 5
6 4 7 9
0 3 5 8


Эта матрица имеет 3 строки и 4 столбца.

Матрица объявляется как двухмерный массив :
matrix: array [1..3,1..3] of integer;

Можно сразу задать значение элементов:
matrix: array [1..3,1..3] of integer = (5,5,5,8,8,8,1,1,1);


Элементы матрицы можно поменять так :
temp = A
A = B
B = temp

Где А и В элементы, которые нужно поменять местами. Temp - промежуточная переменная.



Диагонали

У квадратных матриц есть две диагонали : главная и побочная

Главная диагональ задается формулой A[N,N] - Где N число от 1 до максимального значения.

Пример главной диагонали :
2 0 0 0
0 2 0 0
0 0 2 0
0 0 0 2


Двойки - элементы главной диагонали.

Побочная диагональ задается формулой A[N,MAX-N+1] - Где N число от 1 до максимального значения, MAX размерность матрицы.

Пример побочной диагонали :
0 0 0 2
0 0 2 0
0 2 0 0
2 0 0 0


Двойки элементы побочной диагонали.

Определить где находится элемент относительно диагоналей можно так:
Для главной диагонали :
Если X>Y Тогда элемент выше главной диагонали.
Если X=Y Тогда элемент на главной диагонали.
Eckb X<Y Тогда элемент ниже главной диагонали.

Для побочной диагонали :
Если X>Y-MAX+1 - выше
Если X=Y-MAX+1 - на
Если X<Y-MAX+1 - ниже

Поиск максимального/минимального элемента


Максимальный элемент - это элемент матрицы, имеющий максимальное значение.
Например, в матрице
1 4
9 0

9 - максимальный элемент.

Поиск максимального элемента делается так :

1. Кладем в "корзину" 1 элемент матрицы
2. Смотрим следующий элемент, если он больше того, что лежит в корзине, то ложим в корзину его, иначе переходим к следующему элементу.
3. Делаем шаг 2. пока не кончатся элементы. В итоге в корзине будет лежать максимальный элемент.


Так это выглядит на паскале :
var
m: array [1..2,1..2] of integer = (1,5,2,9);
a,b,temp:integer;
begin
for a:=1 to 2 do
  for b:=1 to 2 do
   if m[a,b]>temp them temp:=m[a,b];
write(temp,' - максимальный элемент');
end.


Поиск минимального элемента совершается аналогично.(В коробку кладется минимальный элемент)

На этом я закончу. Если есть какие то вопросы, пишите в личку.
  • 0
 (голосов: 0)
91 | 0

    Информация
    Информация

      Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.

        Лучшее на Delphi Studio

        Лучшие книги по Delphi

        • Книга Delphi 2010 Handbook with Source Code
          Книга Delphi 2010 Handbook with Source Code - Книга Delphi 2010 Handbook with Source Code посвящена CodeGear Delphi 2010
        • Книга Программирование в Delphi глазами хакера. Фленов
          Книга Программирование в Delphi глазами хакера. Фленов - В книге вы найдете множество нестандартных приемов программирования на языке Delphi, его недокументированные функции и возможности. Вы узнаете, как создавать маленькие шуточные программы. Большая часть книги посвящена программированию сетей
        • Книга Delphi в шутку и всерьез что умеют хакеры М.Флёнов
          Книга Delphi в шутку и всерьез что умеют хакеры М.Флёнов - Электронная книга о профессиональных приемах программирования в Delphi. В легкой и доступной форме с использованием большого количества профессиональных примеров рассмотрены вопросы корректного написания кода, оптимизации программ, работы с системным окружением, создания сетевых приложений
        • Книга Библия Delphi Михаил Фленов (2-е издание) + CD
          Книга Библия Delphi Михаил Фленов (2-е издание) + CD - Книга посвящена программированию на языке Delphi от самых основ до примеров построения конкретных приложений. Подробно описывается логика выполнения каждого участка кода, чтобы читатель смог использовать эти знания при решении собственных задач. Книга содержит большое количество примеров практического программирования
        • Книга О чем не пишут в книгах по Delphi + CD Григорьев А.Б
          Книга О чем не пишут в книгах по Delphi + CD Григорьев А.Б - Рассмотрены малоосвещенные вопросы программирования в Delphi. Описаны методы интеграции VCL и API. Показаны внутренние механизмы VCL и приведены примеры вмешательства в эти механизмы. Рассмотрено использование сокетов в Delphi: различные режимы их работы, особенности для протоколов TCP и UDP
        • Книга Delphi 7 Учебный курс С.Бобровский
          Книга Delphi 7 Учебный курс С.Бобровский - Электронная книга является руководством по программированию в среде Delplii 7. Описывается весь процесс разработки программы: от конструирования диалогового окна до организации справочной системы и создания установочного CD-ROM
        • Книга Delphi Быстрый Старт
          Книга Delphi Быстрый Старт - В книге описываются интерфейс системы визуального программирования Delphi на основе 6-й версии, состав и характеристика элементов проекта приложения, приемы программирования на языке Object Pascal
        • Книга Indy in Depth. Глубины Indy
          Книга Indy in Depth. Глубины Indy - Книга Indy in Depth Глубины Indy будет интересно для тех, кто интересуется хакингом, вирусописанием, а значит и для тех, кто занимается защитой сетей, программ, информации. Эта книга не только по Indy, она про Интернет, про протоколы, термины, методы работы, а к Indy относятся только примеры
        • Книга OpenGL - Графика в проектах Delphi + CD. М.В.Краснов
          Книга OpenGL - Графика в проектах Delphi + CD. М.В.Краснов - Книга посвящена использованию стандартной графической библиотеки OpenGL в проектах Delphi. Начиная с самой минимальной программы, последовательно и подробно рассматриваются все основные принципы программирования компьютерной графики: двухмерные итрехмерные построения, анимация, работа с текстурой, визуальные эффекты
        • Книга Delphi 7 для профессионалов. Марко Кэнту
          Книга Delphi 7 для профессионалов. Марко Кэнту - Книга, которую должен прочитать каждый, кто хочет стать профессиональным программистом на Delphi. Книга не предназначена для начинающих. Требуются хорошие знания Delphi. Предназначена для тех, кто хочет стать именно профессиональным программистом



        Поиск на Delphi Studio



        Случайные новости

        Книга Библия Delphi Михаил Фленов (2-е издание) + CD
        Книга Библия Delphi Михаил Фленов (2-е издание) + CD - Книга посвящена программированию на языке Delphi от самых основ до примеров построения конкретных приложений. Подробно описывается логика выполнения каждого участка кода, чтобы читатель смог использовать эти знания при решении собственных задач. Книга содержит большое количество примеров практического программирования
        Книга Библия Delphi Михаил Фленов (2-е издание) + CD
        Книга Библия Delphi Михаил Фленов (2-е издание) + CD - Книга посвящена программированию на языке Delphi от самых основ до примеров построения конкретных приложений. Подробно описывается логика выполнения каждого участка кода, чтобы читатель смог использовать эти знания при решении собственных задач. Книга содержит большое количество примеров практического программирования
        Как загрузить в Memo текст из внешнего файла Пример на Delphi
        Как загрузить в Memo текст из внешнего файла Пример на Delphi - Пример на Delphi показывающий как можно загрузить в Memo текст из внешнего файла


        Опрос

        Что вы хотите больше на Delphi Studio?
        Исходники
        Книги, Учебники
        Компоненты
        Статьи
        Примеры



        Информация

        А знаете ли вы что такие известные программы как AIMP, Skype, QIP, QIP Infium, R&Q, The Bat!, FL Studio, Guitar Pro, Game Maker, Total Commander, PowerArchiver, Download Master написаны на Delphi? И это далеко не весь список программ чем может похвастаться продукция Borland Delphi!


        rss