Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Programmirovanie_Metod_2009_VVYeD.doc
Скачиваний:
6
Добавлен:
06.12.2018
Размер:
1.14 Mб
Скачать

Пример 6

' Имя файла Difference.vbs

' Программа находит разность между произведением и суммой элементов целочисленного

' одномерного массива, состоящего из 5-ти положительных элементов

Option Explicit

Dim i, s

Dim A(4) ' объявление одномерного массива А

Const k=4 ' k-индекс последнего элемента в векторе

'-------------------------------------------------------------------------------

Sub Input_Rnd (A)

' процедура заполнения одномерного массива целыми

' числами от 0 до 20, выбранными случайным образом

Dim i

For i=0 to k

Randomize

A(i)=Fix(Rnd(1)*20)

Next

End Sub

'-------------------------------------------------------------------------------

Function Summa (A)

Dim i, s

For i=0 to k

s=s+A(i)

Next

Summa=s

End Function

'-------------------------------------------------------------------------------

Function Multiplication (A)

Dim i, s

s=1

For i=0 to k

s=s*A(i)

Next

Multiplication=s

End Function

'-------------------------------------------------------------------------------

Function Difference (multiplication, summa)

Difference=multiplication-summa

End Function

'-------------------------------------------------------------------------------

Input_Rnd A ' вызов процедуры ввода элементов массива

' Вывод введённого вектора:

For i=0 to k

s=s+CStr(A(i))+" "

Next

MsgBox "Вектор, полученный случайным образом:"&vbCrLf&_

s&vbCrLf&_

"Произведение элементов вектора: "&Multiplication (A)&vbCrLf&_

"Сумма элементов вектора: "&Summa (A)&vbCrLf&_

"Разность между произведением и суммой элементов данного”&_ “вектора:"&vbcrLf&_

Difference(multiplication (A), summa (A)),_

vbExclamation,_

"Результат:"

Пример 7

' Имя файла Array of Arrays.vbs

' Дана нерегулярная матрица: 1 3 -4

' -2 5 5 7

' 6 3 -6

' 5 5 7 2 -8

' Задача: Найти в данной матрице все отрицательные элементы и распечатать их вместе с 'индексами.

Option Explicit

' Объявление матрицы как массива массивов

Dim Arr(3)

Arr(0)=Array(1, 3, -4)

Arr(1)=Array(-2, 5, 5, 7)

Arr(2)=Array(6, 3, -6)

Arr(3)=Array(5, 5, 7, 2, -8)

dim i, j, s

' В данном цикле организована проверка каждого элемента матрицы, является ли

' он отрицательным. если да, то данный элемент вместе со своими индексами сохраняется

' в строку s

For i=0 to 3

For j=0 to UBound(Arr(i)) ' Функция UBound возвращает индекс последнего элемента

' в i-той строке

If Arr(i)(j)<0 Then

s=s&"A("&i&", "&j&") = "&Arr(i)(j)&vbCrLf

End if

Next

Next

' Вывод исходной матрицы, а также найденных в ней отрицательных элементов, вместе

' с их индексами

MsgBox "Дана матрица A:"&vbCrLf&_

" 1 3 -4"&vbCrLf&_

"-2 5 5 7"&vbCrLf&_

" 6 3 -6"&vbCrLf&_

" 5 5 7 2 -8"&vbCrLf&_

"Отрицательные элементы данной матрицы:"&vbCrLf&_

s,_

vbExclamation, "Результат:"

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]