Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Найти сумму элементов массива х
S= , если
при tg j 3 xj = e при tg j > 3, n = 5
14. Найти S = , где i при i – нечётном ai = i2 при i - чётном i2 при i - нечётном bi = i3 при i - чётном
15. Найти сумму модулей компонентов вектора z S = Если zi= sin i при cos i < 0, 5 ctg i2 при cos i 0, 5. 16. Дан массив 30 чисел х (30). Найти среднее значение и количество нулевых членов в первой и второй половинах этого массива.
17. Даны два массива чисел a и b по 12 элементов в каждом. Упорядочить массив z по убыванию элементов; элементы массива zi образуются по правилу: zi = ai – bi sini.
18. Составить таблицу функции y = e icos 2xi – 2|xi| для следующих значений аргумента: x = -2, 3; 3, 5; 0, 6; 1, 2; 1, 5.
19. Составить таблицу функции zi = e-xycos(x+yi) для случая, когда аргумент х на отрезке х изменяется с постоянным шагом h = 0.1, а аргумент у принимает значения у = -1; 2; 4; 10.
20. Даны два массива чисел а и b по 9 элементов в каждом. Найти наибольшее число в новом массиве с, элементы которого образуются по правилу: ci = (ai – bi) , где а = {0, 7; 2, 8; -3, 7; 4, 2; 0, 5; 6, 3; -2, 1; 0, 2; 0, 9}, b = {2, 1; 0, 5; -2, 1; 0, 7; 2, 3; 7, 2; -0, 5; 1, 2; 3, 1}.
21. Даны массивы чисел a и b: a ={1, 2; 1, 7; 3, 5; 1, 6; 4, 9; 2, 1}, b ={9, 2; 7, 8; 8, 3; 3, 5; 5, 7; 7, 3}. Для массива х найти среднее арифметическое значение и среднее квадратическое отклонение s, если его элементы определяются по правилу: xi =
22. Найти расстояние между точками А(а1, а2, а3) и B(b1, b2, b3) в трёхмерном пространстве по формуле d = где А(0, 1; 0, 2; 0, 3); В(-0, 4; 0, 2; 0, 3). 23. Дан вектор х = {1, 0; 0; 1, 4; 2; 6; 8, 4; 16; 2; 9, 1; -3, 6; -2, 8; -1, 0; 0, 6; -1, 2}. Найти сумму компонентов вектора, удовлетворяющих условию: a xi< b, где a = 1, 5; b = 3, 9.
24. Даны массивы чисел а и b, содержащие по 8 элементов каждый. Найти наибольший элемент в массиве с, если ci = (ai – bi)/(aibi). 25. Дан массив а, состоящий из 10 чисел. Упорядочить этот массив по возрастанию чисел. Лабораторная работа №4 Двумерные массивы
При решении задач с использованием двумерных массивов, так же как и при решении задач с одномерными массивами, можно определить следующие модули: ввод массива, операции с массивом, вывод массива. Рассмотрим эти модули для двумерного массива. Ввод матрицы Пример: Ввести двумерный массив действительных чисел, состоящий из n строк и m столбцов, Оператор input в данной программе выполняется n x m раз и при каждом его выполнении вводится один элемент матрицы. Порядок ввода элементов - сначала вводятся элементы 1-й строки, начиная с элемента а(1, 1) до элемента а(1, m), затем элементы 2-й строки и т.д. до строки с номером n. В приведенном примере внутренний цикл- цикл по j, внешний - по i rem ввод матрицы input n, m dim a(l to n, l to m) for i = l to n for j =1 to m нет input a(i, j) next j да next i
нет
да
Рис. 14 Матрицу можно ввести и по столбцам. Сначала вводятся по очереди все элементы столбца 1, начиная с а(1, 1) до а(n, 1), затем элементы второго столбца и т.д. до столбца с номером m. Блок-схема решения задачи ввода матрицы по столбцам и программе на QBASIC для решения задачи имеют следующий вид rem ввод матрицы input n, m dim a(l to n, l to m) for j = 1 to m for i = 1 to n input a(i, j) нет next i next j да Продолжение
нет да
Рис.15
При выполнении приведенных программ все элементы матрицы вводятся с клавиатуры поочередно. При вводе и отладке программы на экране монитора появится знак "? " и поочередно вводятся элементы массива. Элементы матрицы могут быть введены с помощью блока данных. В цикле выполняется оператор read (a(i, j)) и вне цикла записывается оператор data, в котором перечисляются все значения элементов массива. rem ввод матрицы input n, m dim a(l to n, l to m) for i = 1 to n for j = 1 to m read a (i, j) next i next j data 5, 8.9, 4.67, 2, 92.8 и т.д.
Значение элементов матрицы в операторе data отделяются друг от друга запятой. Для получения элементов матрицы можно использовать функцию rnd.
rem ввод матрицы cls input n, m dim a(l to n, l to m) for i = 1 to n for j =1 to m a(i, j) = rnd (i) next j next i
Функция rnd дает возможность получить случайные числа в диапазоне от 0 до 1. Если нужно получить случайное число в диапазоне от 0 до N (где N> 1), то необходимо умножить результат функции rnd на N. Если в цикле записать a(i, j) = 100 x rnd (1), то можно получить случайные действительные числа между 0 и 100. Если необходимо получить целые числа, то используется функция int. Например, при выполнении в цикле оператора a(i, j)=int ( 100 x rnd (i)) можно получить целые числа от 0 до 100.
Вывод двумерного массива
Блок-схема решения задачи вывода матрицы размерностью n x m и программа на QBASIC имеют следующий вид:
нет rem ввод матрицы да Продолжение dim a(l to n, l to m) for i = 1 to n for j =1 to m нет print a(i, j) next j да next i
Рис.16
В данном примере при выполнении оператора print a(i, j) каждый элемент матрицы будет печататься на отдельной строке, Если записать print a (i, j), будет напечатано по 5 элементов в строке. Если записать print a (i, j); все элементы будут печататься в строчку. Если программу записать: rem ввод матрицы for i = 1 to n for j =1 to m print a(i, j) next j next i то массив будет распечатан в виде матрицы, оператор print между next j и next i переводит курсор на новую строку.
|
Последнее изменение этой страницы: 2017-03-14; Просмотров: 502; Нарушение авторского права страницы