- •Москва 2009 Введение
- •Циклические вычислительные процессы с известным числом повторений.
- •1.Табулирование функции
- •2. Суммирование, вычисление произведения.
- •Построение графика
- •Табулирование функций, нахождение максимума и минимума
- •Вычисление суммы бесконечного ряда (циклы с неизвестным числом повторений)
- •Пример оформления лабораторной работы.
- •Нахождение суммы бесконечного ряда.
- •Работа с массивами
- •Лабораторная работа №3 Одномерные массивы
- •1. Суммирование элементов массива
- •2.Поэлементное суммирование двух массивов
- •3.Суммирование по условию
- •4.Поиск максимального (минимального) элемента в массиве.
- •5.Удаление элемента из массива
- •6. Включение элемента в заданную позицию массива
- •7.Получение нового массива из данного
- •Задачи для самостоятельного решения. Задание 1
- •Задание 2
- •Задание 3
- •Задание 4
- •Задание 5
- •13. Найти сумму элементов массива х
- •Двумерные массивы
- •1Способ: с использованием вспомогательной переменной т.
- •2 Способ: с использованием вспомогательного массива с.
- •3 Способ.
- •Задание 2
Лабораторная работа №3 Одномерные массивы
Ввод одномерного массива
Пример: Ввести одномерный массив действительных чисел, состоящий из n элементов.
А)
Рис.2 |
cls option base 1 input n dim a(n) for i=l to n input a(i) next i |
При выполнении этой программы элементы массива вводятся с клавиатуры.
Б) При выполнении этой программы элементы массива вводятся из блока данных
dim a ( 1 to n) for i=l to n read a (i) next i data 3.5,4.6,7.3 |
|
В операторе data должно быть указано n значений. Этот вариант ввода удобен, когда число элементов массива известно заранее иначе, оператор data необходимо обновлять. |
В) |
|
|
cls input n dim a (1 to n) for i=l to n a(i)= rnd (i) next i |
|
В данном случае элементы массива генерируются с помощью функции RND. |
Если необходимо ввести два или несколько одномерных массивов, то программа может быть:
print "введите массивы а и b"
for i=l to n
input a (i), b(i)
next i.
Вывод одномерного массива
Пример: вывести на печать элементы одномерного массива (массив из 10 элементов.
Рис.3 |
Фрагмент программы: for i=l to 10 print a(i) next i
|
В этом случае при выполнении программы все элементы массива будут напечатаны в столбец, каждый элемент на отдельной строке.
Если в цикле будет оператор print a (i), (запятая после оператора print), то элементы будут напечатаны по 5 элементов в строке.
Если в цикле будет оператор print a (i); (ставится ;) то элементы массива будут напечатаны в строку.
При выводе двух или более одномерных массивов одного размера удобно вывести их как параллельно расположенные столбцы:
print "массив a", "массив b"
for i= I to n
print a (i), b(i)
next i
Рассмотрим фрагменты отдельных операций с одномерными массивами.
1. Суммирование элементов массива
Для одномерного массива а= (а1 а2,... аn)
Вычислить
Рис.4 |
Фрагмент программы S = 0 For i = 1 to n S = S + a(i) next i |
2.Поэлементное суммирование двух массивов
Для одномерных массивов аi , bi , i = 1 , n вычислить ci = ai + bi i = 1, n
Рис.5 |
Фрагмент программы rem суммирование векторов for i = 1 to n c(i) = a(i) + b(i) next i
|
3.Суммирование по условию
Вычислить среднее положительных элементов одномерного массива ai (i=1, n)
Если ai > 0
rem среднее положительных
rem элементов одномерного
rem массива
S = 0 : k = 0
for i = l to n
if a( i ) > 0 then
S = S + a(i)
k = k + 1
end if
next i
S2 = S/k
print S2
Рис.6