
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.97.9.170] |
![]() |
|
Сообщ.
#1
,
|
|
|
объяните что такое массивы и с чем его едят, т.е. для чего нужны ???
|
Сообщ.
#2
,
|
|
|
![]() |
Сообщ.
#3
,
|
|
vot вам лекция на тему
Что такое массивы и как с ними бороться © vot Как, вы не знаете, что такое "массивы"?! Ну, это враки! Вы давно и близко с ними знакомы, еще с детства, просто бывают на свете такие талантливые преподаватели, которые умудряются так запудрить нам мозги, что мы перестаем понимать даже элементарные вещи... Итак начнем... Тетрадку в клеточку знаете? Ну, конечно, кто ж ее не знает! :))) Так вот, представьте себе, что оперативная память компьютера весьма похожа на такую тетрадку. У тетрадки есть странички, и память тоже может иметь "страницы", но об этом мы поговорим как-нибудь отдельно... А сейчас обратим внимание на самое главное, на то, что, собственно, дает название такой тетрадке! Так что же там "главное"? Правильно! Ну конечно же - клетка! Память можно рассматривать именно как набор клеточек или ячеек (припоминаются еще и пчелиные соты), в которые можно "складывать" нашу информацию, по одной штучке в каждую ячейку. (Кстати, ячейки памяти могут быть разными, но этот вопрос мы тоже рассмотрим попозже.) Ну, а теперь перейдем непосредственно к массивам. Возьмите ручку и обведите на тетрадном листке несколько ячеек подряд, например, пусть это будет горизонтальный прямоугольник высотой в одну клетку и шириной в 10 клеток. Мы получили группу объединенных клеток (ячеек). Теперь пора открыть вам страшный секрет - это и есть массив! Давайте придумаем ему название, например Massive1, и подпишем его слева от нашей "полоски клеток". Теперь это уже "именованый" массив ячеек. Осталось только пронумеровать ячейки нашего массива от 1 до 10: ![]() ![]() 1 2 3 4 5 6 7 8 9 10 ------------------------------- Massive1 | | | | | | | | | | | ------------------------------- Такой массив в Паскале описывается следующим образом: var Massive1 = Array[1..10] of тип_данных_в_ячейке. Теперь мы можем указать (адресовать) любую ячейку этого массива как "ячейка № N в массиве Massive1". В языке Паскаль это записывается как Massive1[n], например Massive1[2] - вторая ячейка массива, или Massive1[10] - десятая ячейка. Теперь давайте вспомним игру "Морской бой" и обведем в тетрадке прямоугольник высотой 10 клеток и шириной тоже 10 клеток. Назовем его, к примеру, SeaBattle, и пронумеруем колонки и строки этого массива: ![]() ![]() 1 2 3 4 5 6 7 8 9 10 ------------------------------- SeaBattle 1| | | | | | | | | | | ------------------------------- 2| | | | | | | | | | | ------------------------------- 3| | | | | | | | | | | ------------------------------- 4| | | | | | | | | | | ------------------------------- 5| | | | | | | | | | | ------------------------------- 6| | | | | | | | | | | ------------------------------- 7| | | | | | | | | | | ------------------------------- 8| | | | | | | | | | | ------------------------------- 9| | | | | | | | | | | ------------------------------- 10| | | | | | | | | | | ------------------------------- Такой массив в Паскале описывается следующим образом: var SeaBattle = Array[1..10,1..10] of тип_данных_в_ячейке. Такой массив называется "двумерным" потому, что любая его ячейка может быть указана с помощью двух значений - номера строки, и номера колонки (столбца). Двумерный массив - прямой аналог понятия "матрица" в математике. Вспомните, как адресуется каждая клеточка в игре "Морской бой". Помните - А9, В1, Г3... Ну, и здесь почти так же! Единственная разница - мы используем для нумерации не буквы, а цифры! Например, SeaBattle[1,5] - ячейка, расположенная на пересечении первой строки и пятого столбца. SeaBattle[9,2] - ячейка, расположенная в девятой строке и втором столбце. Ну а теперь - зачем это все нужно? Да просто затем, что так иногда информацию гораздо удобнее представлять именно в виде массивов. Например, когда вы работаете с матрицами - легче всего разместить ее именно в двумерном массиве. Часто исходная информация от природы имеет структуру, которая наиболее логично умещается именно в массив. Приглядитесь к пофамильному списку студентов вашей группы - да ведь это же обыкновенный одномерный массив! Только ячейками массива являются не числовые значения, а фамилии и имена, т.е. строки символов (strings). Еще один пример массивов - карта в какой-нибудь игре. Всё, дальше сами придумывайте аналогии, а то мне уже надоело :))) |