пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

pogromirovanie:
» sooqa
Уася:
» History motherfuckers

Двумерные массивы, объявление, ввод/вывод. (Пример программы формирования и обработки массивов).

Двумерные массивы

Элемент массива может быть любого типа, кроме файлового, следовательно, он может быть и массивом: 
const n = 4; m = 3;
type mas = array [1 .. n] of integer; 
mas2 = array [1 .. m] of mas; 
Более компактно это можно записать так: 
type mas2 = array [1 .. m, 1 .. n] of integer; 
Здесь описан тип массива, состоящего из m массивов, каждый из которых содержит n целых чисел. Иными словами, это матрица из m строк и n столбцов (рис. 1). Обе размерности массива должны быть константами или константными выражениями. Имя типа указывается при описании переменных: 
var a, b : mas2;
В памяти двумерный массив располагается по строкам: 
a11 a12 a13 a14 a21 a22 a23 a24 a31 a32 a33 a34
| 1-я строка | 2-я строка | 3-я строка |
При просмотре массива от начала в первую очередь изменяется правый индекс (номер столбца). 

К элементу двумерного массива обращаются, указывая номер строки и номер столбца, на пересечении которых он расположен, например: 
a[1, 4] b[i, j] b[j, i]
Необходимо помнить, что компилятор воспринимает как номер строки первый индекс, как бы он ни был обозначен в программе. 

При инициализации двумерных массивов каждая строка заключается в дополнительную пару круглых скобок: 
const a : mas2 = (( 2, 3, 1, 0),
( 1, 9, 1, 3),
( 3, 5, 7, 0) );
С массивами в целом определена только одна операция - присваивание массивов одного типа (например, b:= a). Все остальные действия выполняются с отдельными элементами. Например, чтобы ввести с клавиатуры двумерный массив, необходимо организовать вложенные циклы: 
for i := 1 to m do

for j := 1 to n do read(a[i, j]);
Для приведенного здесь порядка следования циклов элементы массива должны вводиться по строкам.
 


27.01.2014; 07:02
хиты: 194
рейтинг:0
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь