Программирование с использованием массивов

Массивом называется упорядоченная последовательность величин, обозначаемая одним именем. Упорядоченность заключается в том, что элементы массива располагаются в последовательных ячейках памяти.

 
 


1        

Начало
 
 


Рис. 2.5. Блок - схема циклического вычислительного процесса

Чтобы получить доступ к нужной ячейки, нужно указать имя массива и его индекс. Индекс записывается в круглых скобках после имени массива.

Если нужно присвоить, например, значение 5 третьему элементу массива A, нужно написать

A(3) = 5

При выполнении этого оператора будет найден массив A, отсчитана третья ячейка памяти и в нее присвоено значение 5.

Индекс может быть переменной. Если нужно всем пяти элементам массива A присвоить значение 5, можно написать

FOR I = 1 TO 5

A(I) = 5

NEXT I

Имя массива образуется так же как имя переменной. В BASICе массивы могут быть одномерные и двумерные и т.д. В двумерном массиве каждый элемент идентифицируется номером строки и номером столбца, на пересечении которых он расположен. При записи элемента массива индекс (индексы) записывается в круглых скобках после имени массива. Если индексов несколько, то они разделяются запятой. Массивы определяются в операторе описания массивов DIM. В операторе DIM указываются имя массива и в круглых скобках границы изменения индексов.

Например, оператор

DIM A(1 ТО 3), B(1 ТО 4, 1 ТО 5)

описывает два числовых массива: A состоящий из трех элементов и B содержащий 4 строки и 5 столбцов. Можно указать только верхние границы, в этом случае нижние границы будут равны нулю.

В соответствии с оператором DIM в памяти ЭВМ выделяется место для размещения этих массивов. Так, для массива A будут выделены три ячейки памяти, для массива B - двадцать ячеек. Под двумерный массив выделяется линейный участок памяти, в котором массив располагается по строкам.

В BASICе обработка массивов, а также ввод – вывод массивов осуществляется поэлементно.

Например, ввод одномерного массива A, содержащего 11 элементов, можно осуществить при помощи операторов

DIM A(10)

FOR I = 0 TO 10

INPUT A(I)

NEXT I

Ввод двумерного массива B (4,5) можно осуществить при помощи операторов

DIM B(1 ТО 4, 1 ТО 5)

FOR I = 1 TO 4

FOR J = 1 TO 5

INPUT B(I,J)

NEXT J

NEXT I

Ввод двумерного массива в приведенной программе осуществляется по строкам.

Вывод двумерных массивов для повышения наглядности рекомендуется осуществлять по строкам, начиная вывод каждой новой строки массива в новую строку экрана.

Использование оператора PRINT USING при выводе массивов позволяет выводить массивы в удобной для восприятия форме. Например, таблицa элементов массива B выводится на экран операторами

DIM В(1 ТО 4, 1 ТО 4)

P =.5

FOR I=1 TO 4

FOR J=1 TO 4

P=P+1: В(I,J) = P

PRINT USING "##.##"; В(I,J);

NEXT J: PRINT

NEXT I: PRINT

END

На экране элементы массива расположатся так:

1.50 2.50 3.50 4.50

5.50 6.50 7.50 8.50

9.50 10.50 11.50 12.50

13.50 14.50 15.50 16.50

Оператор PRINT осуществляет только возврат каретки перед выводом новой строки.

 
 


Пример 7. Даны два массива x i и y i (i=1,10). Составить программу для вычисления

Программа для примера 7 (см. на рис. 2.6):

DIM X(10), Y(10)

INPUT "M,N"; M,N

DATA 8.12, -3.54, 7.73, -0.37, -76.8, 99, 54.87, 1.61, 58.3, 9.74

DATA 7.46, 63.74, -5.83, 7.66, -33.8, 3.99, 154.7, 31.22, -9.33, 21.12

FOR I=1 TO 10

READ X(I)

NEXT I

FOR I=1 TO 10

READ Y(I)

NEXT I

S=0

FOR I=1 TO 10

S=S+X(I)^2-N*Y(I)

NEXT I

T=M*S

PRINT " T= "; T

END

 
 


Рис. 2.6. Блок - схема программы на обработку массивов

Пример 8. Найти сумму элементов каждой строки массива C (4,5).

Программа для примера 8 (см. рис. 2.7.):

DIM C(4,5), S(4)

DATA 2, 4, 6, 8, 10

DATA -1, -3.4, -6, 7, 9

DATA -2, -4, 6, -8, -10

DATA 1, 3, 5.1, 12, 15

FOR I = 1 TO 4

FOR J = 1 TO 5

READ C(I,J)

NEXT J, I

FOR I = 1 TO 4

S(I)=0

FOR J = 1 TO 5

S(I) = S(I)+C(I,J)

NEXT J

PRINT S(I);

NEXT I: PRINT

END


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: