Читайте также:
|
|
При работе с большим числом данных одного типа очень удобно использовать массивы.
Итак, что же такое массивы...
Массив - это набор переменных, имеющих одинаковое имя (идентификатор), но различающихся порядковыми номерами (индексами).
Элементы одномерных массивов снабжаются одним индексом.
Для того чтобы использовать массив, его надо сначала объявить в программе. Для этого используют оператор DIM.
Можно объявить массив таким образом:
DIM mas2(10)
mas2- имя массива, 10 – количество элементов в массиве
| ||||||||||
|
ПРИМЕР: В классе 30 учеников, которым нужно выставить оценки по предмету.
REM Выставление оценок:)
DIM mark(30)
FOR I=1 TO 30
mark(I)=3+INT(RND*3)
NEXT
END
Mark
| ||||||||||
|
Для создания случайных чисел в языке Basic служит стандартная функция RND. Она создает случайное число в диапазоне от 0 до 1. Умножив его на 3, мы получаем случайное число от 0 до 3. А взяв от него целую часть (с помощью функции INT), получим целое случайное число в диапазоне от 0 до 2. Прибавив к нему число 3, мы получаем случайную оценку, которая не меньше 3 и не больше 5.
Пример: Составить программу заполнения массива из 15 элементов случайными числами в диапазоне от 1 до 10. Предусмотреть вывод массива на экран.
REM Заполнение и вывод массива
DIM mas(15)
FOR I=1 TO 15
mas(I)=1+INT(RND*10)
NEXT
CLS
PRINT "Вывод массива"
FOR I=1 TO 15
PRINT mas(I);
NEXT
END
CLS - очистка экрана. Точка с запятой (;) в операторе PRINT позволяет выводить элементы массива в строку.
Пример: Вывести количество отрицательных элементов массива.
REM Вывести количество отрицательных элементов
INPUT "Введите число элементов массива", n
DIM mas(n)
FOR I=1 TO n
INPUT "Введите элемент массива", mas(I)
NEXT
CLS
PRINT "Вывод массива"
FOR I=1 TO n
PRINT mas(I);
NEXT
k=0
FOR I=1 TO n
IF mas(I)<0 THEN k=k+1
NEXT
PRINT
PRINT "Число отрицательных элементов: ",k
END
Пример: Составить программу для вычисления наибольшего элемента массива и его номера.
REM вычисления наибольшего элемента массива и его номера
INPUT "Введите число элементов массива", n
DIM mas(n)
FOR I=1 TO n
INPUT "Введите элемент массива", mas(I)
NEXT
CLS
PRINT "Вывод массива"
FOR I=1 TO n
PRINT mas(I);
NEXT
max=mas(1)
nomer=1
FOR I=1 TO n
IF mas(I)>max THEN
max=mas(I)
nomer=I
END IF
NEXT
PRINT
PRINT "Максимальный элемент: ", max, " с номером ", nomer
END
Пример: составить программу сортировки массива по возрастанию.
REM сортировка массива
INPUT "Введите число элементов массива", n
DIM mas(n)
FOR I=1 TO n
mas(I)=1+INT(RND*10)
NEXT
CLS
PRINT "Вывод массива"
FOR I=1 TO n
PRINT mas(I);
NEXT
REM сортировка массива
FOR I=1 TO n
FOR J=I TO n
IF mas(I)>mas(J) THEN
REM если нашли меньший элемент, то обменяем их местами
a=mas(I)
mas(I)=mas(J)
mas(J)=a
END IF
NEXT J
NEXT I
REM конец сортировки массива
PRINT
PRINT "Вывод отсортированного массива"
FOR I=1 TO n
PRINT mas(I);
NEXT
END
Иногда для ввода данных удобно использовать операторы DATA и READ.
DATA указывает значения для чтения последующими операторами READ. READ считывает эти значения и присваивает их переменным. RESTORE позволяет READ заново считать значения в указанном операторе DATA.
DATA константы
READ переменные
Пример: ввод массива с использование оператора DATA.
REM Ввод данных из DATA
DIM mas(5) AS INTEGER
DATA 2, -4, 1, 5, 9
REM ввод массива
FOR I=0 TO 4
READ mas(I);
NEXT
REM вывод массива
FOR I=0 TO 4
PRINT mas(I);
NEXT
END
Дата добавления: 2015-02-16; просмотров: 36 | Поможем написать вашу работу | Нарушение авторских прав |