ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Какие бывают массивыМассивы могут быть одномерные, двумерные, трехмерные, четырехмерные и т.д.: array [1..10] of Integer -одномерный массив 10 ячеек array [1..10, 1..5] of Integer -двумерный массив 50 ячеек array [1..10, 1..5, 1..2] of Integer -трехмерный массив 100 ячеек array [1..10, 1..5, 1..2, 1..3] of Integer -четырехмерный массив 300 ячеек
Массивы бывают не только числовые, но и символьные, строковые и прочие. Подходит любой известный нам тип. Например: array [1..50] of Char Это означает, что в каждой из 50 ячеек должно находиться не число, а произвольный символ. Еще один пример: array [1..50] of String Здесь в каждой из 50 ячеек должна находиться строка. Примеры программ с такими массивами мы увидим в 12.13. Границы индексов в квадратных скобках тоже могут быть разными, например: array [20..60] of Real Здесь под вещественные числа отводится 41 ячейка. array [0..9, -10..30] of Real Здесь под вещественные числа отводится 10*41=410 ячеек. Вообще индексы могут быть не только числовыми, но и любыми порядковыми. Например, array [‘А’..’Я’] of Real Зачем это нужно, будет ясно в 12.8. Полная синтаксическая информация о массивах будет приведена в 14.8.
Какая польза от массивов при программировании игр? Вряд ли хоть одну «умную» игру можно запрограммировать без применения массивов. Возьмем хотя бы «крестики-нолики» на поле 3 на 3. Вам придется рисовать на экране большие клетки, а в них – нолики (кружочки) после ваших ходов и крестики (пересекающиеся линии) после ходов компьютера. Но этого недостаточно. Чтобы компьютер мог поставить крестик в свободном поле, он должен хотя бы знать, а в каких клетках крестики и нолики уже стоят. Анализировать для этого информацию о пикселах экрана очень неудобно. Гораздо разумнее заранее организовать VAR a: array[1..3,1..3] of Byte и записывать туда в нужные места нолики после ходов человека и единички после ходов компьютера. Сразу же после записи в массив 0 или 1 программа должна рисовать в соответствующем месте экрана кружок или крестик. Мыслить компьютер мог бы при помощи примерно таких операторов – if (a[1,1]=0) AND (a[1,2]=0) then a[1,3]:=1. Это очевидный защитный ход компьютера.
Не нашли, что искали? Воспользуйтесь поиском:
|