Работа с ZX-Spectrum 1993 г.

Глава 12 - массивы.


ГЛАВА 12

МАССИВЫ

Краткое содержание: DIM.

Допустим, у Вас имеется список из чисел, каким-то образом описыва-
ющих 10 человек. Для записи их в память компьютера Вы должны будете за-
вести переменную на каждого человека. Это не удобно, так как приходится
обращаться к данным, называя каждый раз новую переменную. Например:
bloggsl, bloggs2 и т.д. до bloggslO. Как это неудобно, Вы можете убедиться
из программы:

5 REM This programm will not work
10 FOR N-l TO 10
20 READ bloggs N
30 NEX N

40 DATA 10,2,5,19,16,3,11,1,0,6

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

В нашем примере имя будет "В" (подобно управляющим переменным в
FOR-NEXT утверждениях, имя массива должно быть уникальным в данной
программе). И десятью переменными будут В(1),В (2) и т.д. До В(10).

Элементы массивов называют индексируемыми переменными. Перед
использованием массива необходимо зарезервировать под него память.
Это делается в операторе DIM (от английского DIMENSION). В нашем слу-
чае это будет оператор DIM В(10), который определяет массив с именем "В"

и размерностью 10 (т.е. 10 индексируемых переменных В(1), В(2).....В(10)) и

присваивает всем элементам массива значение 0.

И так, теперь мы можем записать:
10 FOR Nel ТО 10
20 READ B(N)
30 NEXT N

40 DATA 10,2,5,19,16,3,11,1,0,6

Можно также объявлять массивы с более чем одной размерностью.
Например в двухмерном массиве первый индекс можно сравнить с номе-
ром строки, а второй с позицией в строке. Такой массив как бы описывает
страницу. Если ввести третье измерение для номера страницы, то массив
будет описывать книгу в виде:

(номер страницы, номер строки, номер столбца)

Объявим двухмерный массив X" с размерностью 3 и 6:
DIM С(3,6)

Что даст 3*6 « 18 индексируемых переменных:
С(1,1),С(1,2),... ,С(1,6)
С(2,1),С(2,2),... ,С(2,6)
С(3,1),С(3,2),... ,С(3,6)

Могут быть также строковые массивы. Строки в таких массивах отлича-
ются от скалярных тем, что имеют фиксированную длину, а присваивание им
значения осуществляется с усечением справа или добавлением до полной
длины пробелами. Имя строкового массива образуется добавлением справа
к имени специального символа, перечеркнутой буквы S ("$").

Допустим Вам необходимо объявить массив А$ на 5 строк по 10 симво-
лов в каждой, Вы должны записать:
DIM А$(5,10)

Телерь Вы можете обращаться как целиком к отдельной строке, так и к
каждому символу в строке:

А$< 1 )жА$(1,1) А$ (1,2)... А$(1,10)
А$(2)«А$(2,1)А$<2,2)... А$(2,10)

A$(5)*SA$(5,1)A$(5,2)... А$(5,10)
Можно также рассматривать элемент строкового массива как массив
символов. Пусть объявлен массив А$(2,7), можно записать и так А(2Х7) Сле-
дующая программа:

10 LET А$(2)e" 1234567890"
20 PRINT А$(2),А$(2,7)
даст "123456789 7"
Можно использовать также сечения массивов:
А$(2,4 ТО 8)«А$(2) (4 ТО 8)«"45678м
Помните, что в строковых массивах все строки имеют фиксированную
длину. Эту длину определяет последнее число размерности массива в опе-
раторе DIM. Если объявлен одномерный массив, то он определяет массив
символов: DIM А$(10).




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Срочно в номер - GOOD-BYE AND I AM SORRI !
Софт - Real Сommander 2.0: step 2 the future .
Игрушки - обзор новинок: Los Angeles Drugs Bust, Jungle Warfare, Dragonia, 3D Starfighter, Rock star ate my hamster, Star Cobtrol, Malstese joe's pool challenge, Dynamite dux, Blood Brodthers, Galactic Games, Motor Masscre, International Kickboxing.
Печатается с продолж. - Папуас из Гондураса (продолжение).
Moзаика - O установке счетчиков АТС.

В этот день...   16 августа