Массивы

Определения

Массивом называется упорядоченная совокупность однородных величин, обозначенных каждая одним и тем же именем с различными целочисленными индексами, изменяющимися по порядку.
Массив - это набор однородных данных (чисел, символов, слов).


Рис.  Изображение одно-, двух- и трехмерных массивов.




Одномерный массив

Одномерный массив можно рассматривать как список однотипных элементов. Например, список фамилий студентов группы – одномерный массив, численные данные о средней температуре за месяц - одномерный массив, буквы русского алфавита - одномерный массив.




Описание массива

В Бейсике элементы массива располагаются в последовательных ячейках памяти. Это означает, что массив занимает непрерывную область памяти. Прежде чем мы сможем обращаться к массиву из программы, надо указать, сколько памяти необходимо для размещения массива. Всему массиву, определяется объемом памяти, занимаемым одним элементом массива умноженным на число элементов в массиве. Поэтому нужно указать максимальное число элементов массива.
В Бейсике фирмы Microsoft описание размера массива делается с помощью оператора DIM, который имеет следующий синтаксис:

DIM имя массива (максимальное число элементов массива)

Например:
S(5) - где S имя массива, 5- максимальное число элементов массива,
M(25)- M имя массива, 25- максимальное число элементов массива.

Первый элемент массива имеет номер 0. Наличие именно этого дополнительного элемента и приводит к тому, что массив занимает на один элемент больше памяти, чем это задано в его описании, но с единицы нам привычнее и удобнее, поэтому нулевой элемент можно пропустить.


 



Доступ к элементам массива

Мы должны обращаться к отдельным элементам массива, чтобы присвоить им значения, вывести их на печать, использовать в выражении и т. д.
Для обращения к отдельному элементу массива мы должны указать имя массива и после него в скобках номер этого элемента в массиве: S(1), S(2), S(3). Значение в скобках называется индексом массива. Минимальное значение индекса 0, максимальное значение индекса - это значение, заданное в операторе DIM.

Индекс - это метка ячейки памяти которая используется для обращения к этой ячейке.



 


Присваивание значений элементам массива

Первый способ

CLS
10 DIM S(5)
    в этой строке объявлен массив с именем S и пятью элементами
11 S(1)=53
12 S(2)=31

13 S(3)=-32       в этих строках элементам массива присваиваются значения
14 S(4)=44
15 S(5)=-23
16 PRINT "S(1) равно " ; S(5)
17 PRINT "S(2) равно " ; S(4)

18 PRINT "S(3) равно " ; S(3)          в этих строках на экран последовательно выводятся
19 PRINT "S(4) равно " ; S(2)          значения элементов массива
20 PRINT "S(5) равно " ; S(1)

Результаты работы этой программы будут выглядеть так:
53
31
-32
44
-23


Второй способ (заполнение массива с помощью оператора INPUT)

CLS
INPUT “введите количество элементов массива”; N
DIM A(N)
FOR I=1 TO N
PRINT “введите”; N ; “элемент массива”
INPUT A(I)
NEXT I
FOR I=1 TO N
PRINT A(I)
NEXT I


Результаты работы программы для 3-х элементов будут выглядеть так:

Введите 1 элемент массива
? 23
Введите 1 элемент массива
? -54
Введите 1 элемент массива
? 21

23
-54
21



Третий способ (заполнение массива с помощью оператора DATA)

CLS
DATA 23, 13, 98, -8, 7
DIM M(5)
FOR I=1 TO 5
READ M(I)
PRINT M(I)
NEXT I


Результаты работы этой программы будут выглядеть так:
23
13
98
-8
7

Четвертый способ (следующий короткий программный модуль
генерирует случайные числа и записывает их в массив):


DIM S(IOO)
FOR 1=1 ТО 100
S(I) = 1+INT(1000*RND)
NEXT


 

Задачи.

1. Подсчитайте произведение элементов массива.

2. Вычислите значения функции Y=X*X для X=2,4,6,8,...,36 и разместите их в одномерном массиве Y.

3. Измените порядок значений элементов массива на обратный.

4. "Сожмите" числовой массив, выбросив из него отрицательные числа.

5. Задан массив и некоторое число. Найти, на каком месте расположено число в массиве.

6. Напечатайте первую сотню простых чисел.

7. Поверните квадратный массив на 90, 180, 270 градусов по часовой стрелке.

8. Выясните, есть ли одинаковые числа в одномерном массиве, в двумерном массиве.

9. Подсчитайте количество уникальных чисел в массиве.

10. Задан массив чисел. Замените каждое число суммой предыдущих: а) включая заменяемое; б) исключая заменяемое.

11. Задан одномерный массив из 10 элементов. Увеличить положительные числа в 3 раза, уменьшить отрицательные в 2 раза.

12. Задан массив из N элементов. Определить максимальный элемент.

13. Определить сумму элементов с четным индексом.

14. Определить y, если x=x1,x2,x3...x10:
         y=2*x2-4*x+sin2x

15. Заданы два одномерных массива. Напечатать все элементы массивов, полученных путем суммирования и вычитания элементов исходных массивов с одинаковыми индексами.

16. Заполнить данную таблицу элементами, значения которых равны их удвоенному порядковому номеру.

17. Составить программу замены отрицательных элементов таблицы их квадратами.

18. Написать программу удвоения каждого элемента одномерного массива.

19. Написать программу переписи элементов одного одномерного массива в другой.

20. Дана целочисленная таблица. Изменить все элементы этой таблицы на противоположные по знаку.

21. Найти заданный элемент в одномерном массиве. Напечатать индекс найденного элемента.

22. Написать программу для определения сколько раз число 10 встречается среди элементов одномерного массива.

23. Найдите количество элементов этой таблицы, больших среднего арифметического всех ее элементов.

24. Найти наименьший элемент одномерного массива.

25. Найти наибольший элемент одномерного массива.

26. Найти наименьший элемент двумерного массива.

27. Найти наибольший элемент двумерного массива.

Источник информации: Массивы

<< Возврат назад

Хостинг от uCoz