Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






ДЕМОНСТРАЦИОННЫЕ ПРИМЕРЫ




Пример 1

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

'Программа содержит процедуру ввода и процедуру вывода одномерного массива (вектора)

 

Option Explicit

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

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

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

Sub Input (A)

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

' процедура с параметрами

' A-параметр, передаваемый по ссылке

' k-глобальная константа

Dim i ' параметр цикла

For i=0 to k

A(i)=CDbl(InputBox("Введите "&i&"-й элемент одномерного массива","Ввод “&_ “вектора A:",5))

Next

End Sub

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

Sub Output (A)

' процедура вывода на экран элементов вектора

' процедура с параметрами

' A-параметр, передаваемый по ссылке

' k-глобальная константа

Dim i ' параметр цикла

Dim s ' строковая переменная, в которой будет сохранён массив

For i=0 to k

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

Next

MsgBox "Вы ввели одномерный массив:"&vbCrLf&_

s,_

vbExclamation,_

"Вывод вектора A:"

End Sub

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

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

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

Пример 2

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

'Программа содержит процедуру ввода и процедуру вывода двумерного массива (матрицы)

Option Explicit

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

Const m=4 ' m, n -индексы последнего элемента матрицы

Const n=5

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

Sub Input (A)

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

' процедура с параметрами

' A-параметр, передаваемый по ссылке

' m, n -глобальные константы

Dim i, j

For i=0 to m

For j=0 to n

A(i,j)=CDbl(InputBox("Введите элемент A("&i&","&j&")","Ввод матрицы A:",5))

Next

Next

End Sub

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

Sub Output (A)

' процедура вывода на экран элементов матрицы

' процедура с параметрами

' A-параметр, передаваемый по ссылке

' m, n -глобальные константы

Dim i, j

Dim s ' строковая переменная, в которой будет сохранён массив

For i=0 to m

For j=0 to n

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

Next

s=s&vbCrLf

Next

MsgBox "Вы ввели двухмерный массив:"&vbCrLf&_

s,_

vbExclamation,_

"Вывод матрицы A:"

End Sub

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

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

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

Пример 3

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

' Программа находит минимальный и максимальный элемент вектора

Option Explicit

Dim s, i

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 Min (A)

Dim i

Min=A(0)

For i=1 to k

If A(i)<Min Then

Min=A(i)

End If

Next

End Function

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

Function Max (A)

Dim i

Max=A(0)

For i=1 to k

If A(i)>Max Then

Max=A(i)

End If

Next

End Function

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

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

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

For i=0 to k

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

Next

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

s&vbCrLf&_

"Минимальный элемент данного вектора: "&Min (A)&vbCrLf&_

"Максимальный элемент данного вектора: "&Max (A)&vbCrLf,_

vbExclamation,_

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

Пример 4

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

'Программа находит все простые числа в двумерном массиве (в матрице)

Option Explicit

Dim k, i, j, p, s

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

Const m=4 ' m, n -индексы последнего элемента матрицы

Const n=5

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

Sub Input (A)

' Процедура ввода элементов матрицы с клавиатуры

' процедура с параметрами

' A-параметр, передаваемый по ссылке

' m, n -глобальные константы

For i=0 to m

For j=0 to n

A(i,j)=CDbl(InputBox("Введите элемент A("&i&","&j&")","Ввод матрицы A:",5))

Next

Next

End Sub

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

Function Simple (k)

' Функция возвращает True, если число k окажется простым, и false - в противном случае

Dim x

Simple=True

If k<>1 Then

For x=2 to Int(sqr(k))

If k mod x =0 Then

Simple=False

End If

Next

Else Simple=False

End If

End Function

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

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

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

For i=0 to m

For j=0 to n

If Simple(A(i,j)) Then ' Вызов процедуры, которая проверяет, является ли A(i,j) ' простым числом

p=p&A(i,j)&" " ' если да, то число записывается в строку p

End If

Next

Next

' Выводим введённую матрицу и те элементы массива, которые являются простыми числами

For i=0 to m

For j=0 to n

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

Next

s=s&vbCrLf

Next

MsgBox "Вы ввели двухмерный массив:"&vbCrLf&_

s&vbCrLf&_

"Элементы массива, которые являются простыми числами: "&vbCrLf&_

p,_

vbExclamation,_

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

Пример 5

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

'Программа определяет количество нулевых элементов двумерного массива (матрицы)

Option Explicit

Dim k, i, j, s

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

Const m=4 ' m, n -индексы последнего элемента матрицы

Const n=5

Вводим матрицу

k=0

For i=0 to m

For j=0 to n

A(i,j)=CDbl(InputBox("Введите элемент A("&i&","&j&")","Ввод матрицы A:",5))

If A(i,j)=0 Then ' проверяем, нулевой ли элемент мы ввели

k=k+1 ' счётчик нулевых элементов

End If

Next

Next

' Выводим введённую матрицу и количество нулевых элементов

For i=0 to m

For j=0 to n

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

Next

s=s&vbCrLf

Next

MsgBox "Вы ввели двухмерный массив:"&vbCrLf&_

s&vbCrLf&_

"Количество нулевых элементов в данной матрице: "&k,_

vbExclamation,_

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

Пример 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, "Результат:"

Пример 8

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

' Дана матрица A размерностью 4 на 3 и вектор B, состоящий из 4-х элементов.

' Сформировать новую матрицу A размерностью 4 на 4, которая бы содержала в себе

' матрицу A и вектор B, в качестве последнего столбца.

 

Option Explicit

Dim i, j

Dim B(3) ' объявление вектора B, состоящего из 4-х элементов

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

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

Sub Input_Rnd_Arr (A)

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

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

ReDim A (3, 2)

For i=0 to 3

For j=1 to 2

Randomize

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

Next

Next

End Sub

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

Sub Input_Rnd_Vec (B)

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

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

For i=0 to 3

Randomize

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

Next

End Sub

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

Function Arr_to_Str (A)

' функция записи матрицы в строку s

Dim s

For i=0 to 3

For j=1 to 2

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

Next

s=s&vbCrLf

Next

Arr_to_Str=s

End Function

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

Function Vec_to_Str (B)

Dim s

' функция записи вектора в строку s

For i=0 to 3

s=s&B(i)&" "

Next

Vec_to_Str=s

End Function

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

Function New_Arr(A, B)

Dim s

' функция формирования новой матрицы A и запись её в строку s

ReDim Preserve A (3, 3)

A(0, 3)=B(0)

A(1, 3)=B(1)

A(2, 3)=B(2)

A(3, 3)=B(3)

For i=0 to 3

For j=1 to 3

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

Next

s=s&vbCrLf

Next

New_Arr=s

 

End Function

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

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

Input_Rnd_Vec B ' вызов процедуры ввода элементов вектора B

MsgBox Vec_to_Str (B),,"Вектор B:"

MsgBox Arr_to_Str (A),,"Первоначальная матрица A:"

MsgBox New_Arr (A, B),,"Изменённая матрица A:"

 






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных