Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Найти сумму элементов массива х



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

print

next i

то массив будет распечатан в виде матрицы, оператор print между next j и next i переводит курсор на новую строку.

 


Поделиться:



Последнее изменение этой страницы: 2017-03-14; Просмотров: 502; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.023 с.)
Главная | Случайная страница | Обратная связь