A) Ввод при помощи текстового окна:



Dim x() As Single

Private Sub Button1_Click()

Dim n As Integer, i As Integer

n = CSng(InputBox("Введите n"))

ReDim x(0 To n-1)

For i = 0 To n-1

x(i) = CSng(TextBox1.Text)

Next i

End Sub

 

b ) Ввод при помощи функции InputBox :

Dim x() As Single

Private Sub Button1_Click()

Dim n As Integer, i As Integer

n = CSng(InputBox("Введите n"))

ReDim x(0 To n-1)

For i = 0 To n-1

x(i) = CSng(InputBox("x(" & CStr(i) & ")", "массив аргументов"))

Next i

End Sub


Нахождение наибольшего элемента массива и порядкового номера этого элемента:


 Max = x(0)

For i = 0 To n-1

          If x(i) > Max Then Max = x(i): nm = i

Next i


Вычисление суммы элементов массива:


s = 0

For i = 0 To n-1

s = s + x(i)

Next i


Вывод последовательности элементов одномерного массива

А)Вывод при помощи текстового окна:


Dim x() As Single

Private Sub Button1_Click()

n = CSng(InputBox("Введите n"))

ReDim x(0 To n-1)

For i = 0 To n-1

TextBox1.text= TextBox1.text +CStr(x(i))+vbCrLf

Next i

End Sub


b) Вывод при помощи функции MsgBox:


Dim x() As Single

Private Sub Button1_Click()

n = CSng(InputBox("Введите n"))

ReDim x(0 To n-1)

For i = 0 To n-1

x(i) = MsgBox(CStr(x(i)), , "x(" & CStr(i) & ")")

Next i

End Sub


 

20. Visual Basic. Типовые программы обработки массивов. Сортировка.


Private Sub sortVa ()

Dim 1Va (2) As String

1Va (0) = "lion"

1Va (1) = "turtle"

1 (2) = "ostrich"

Array.Sort(1Va)

End Sub


21. Visual Basic. Процедуры, создаваемые пользователем. Заголовок процедуры. Формальные и фактические параметры. Обращение к процедуре. Порядок выполнения.


Определение. Подпрограмма - это отдельная функционально независимая часть программы.

Подпрограммы решают три важные задачи:

  • избавляют от необходимости многократно повторять в тексте программы аналогичные фрагменты;
  • улучшают структуру программы, облегчая ее понимание;
  • повышают устойчивость к ошибкам программирования и непредвиденным последствиям при модификациях программы.

Очень важно понимать, что в подпрограмму может выделяться любой законченный фрагмент программы.

Подпрограммы могут быть стандартными, т.е. определенными системой, и собственными, т.е. определенными программистом.

Стандартная подпрограмма (процедура или функция) - подпрограмма, включенная в библиотеку программ, доступ к которой обеспечивается средствами языка программирования. Вызывается подпрограмма по имени с заданием фактических параметров. Типы фактических параметров должны соответствовать типам формальных параметров, указанным при описании данной процедуры в библиотечке процедур и функций.

Из набора стандартных процедур и функций по обработке одного типа информации составляются модули.

Формальные и фактические параметры

Формальные параметры подпрограммы указывают, с какими аргументами следует обращаться к этой подпрограмме (количество аргументов, их последовательность, типы). Они задаются в заголовке подпрограммы в виде списка.

Все формальные параметры можно разбить на четыре категории: 1)параметры-значения; 2)параметры-переменные; 3)параметры-константы; 4)параметры-процедуры и параметры-функции.

Для каждого формального параметра следует указать имя и, как правило, тип, а в случае параметра-переменной или параметра-константы - его категорию. Имена параметров могут быть любыми, в том числе и совпадать с именами объектов программы. Необходимо лишь помнить, что в этом случае объект основной программы с таким именем становится недоступным для непосредственного использования подпрограммой. Тип формального параметра может быть практически любым, однако в заголовке подпрограммы нельзя вводить новый тип.

Вызов по ссылке и по значению

Список параметров, задаваемый в заголовке процедуры или функции, обеспечивает связь подпрограммы с вызывающей программой. Через него в подпрограмму передаются исходные данные и возвращается результат. При этом предусмотрено два принципиально отличающихся механизма передачи параметров - по значению и по ссылке.

При вызове по значению в подпрограмме создаются переменные в соответствии с объявлениями в заголовке подпрограммы. Эти переменные существуют только на время выполнения подпрограммы. В вызывающей программе в качестве аргумента подпрограммы может использоваться не только переменная, но и выражение. В начале выполнения подпрограммы значение этой переменной или выражения присваиваются внутренней временной переменной подпрограммы. Когда подпрограмма завершается, используемые подпрограммой переменные не сохраняют своего значения, поэтому передачу данных по значению можно использовать только для передачи данных в подпрограмму, но не для получения от нее результатов.

При вызове по ссылке в подпрограмме память под передаваемые переменные не отводится. Основная программа передает в подпрограмму не значение переменной, а ссылку на место в памяти основной программы, где расположена некоторая переменная. Подпрограмма, производя некоторые действия с этой переменной, в действительности производит действия с переменной основной программы, поэтому после выполнения процедуры изменения, совершенные с переменными основной программы, сохраняются. Этот механизм используется для получения от подпрограммы результатов ее выполнения. Понятно, что при вызове подпрограмм с передачей данных по ссылке невозможно использовать в качестве аргументов выражения или константы, так как они не имеют адреса для передачи.

Параметры–значения

Параметры-значения передаются основной программой в подпрограмму через стек в виде их копий и, следовательно, соответствующие фактические параметры программы подпрограммой измениться не могут.

Параметр-значение указывает в заголовке подпрограммы своим именем и через двоеточие - типом. Тип параметра-значения может быть любым за исключением файлового.

Если параметров - значений одного типа несколько, их можно объединить в одну группу, перечислив их имена через запятую, а затем уже указать общий тип. Как отмечалось выше, отдельные группы параметров отделяются друг от друга точкой с запятой.

Функция

Другой вид подпрограммы – функция оформляется аналогично процедуре. Отличительные особенности функции: она имеет только один результат выполнения (но может иметь несколько входных параметров); результат обозначается именем функции и передаётся в основную программу.

Вызывается функция по её имени с указанием фактических параметров.

Вызов функции можно делать непосредственно внутри выражения. При вызове функции тип не указывается.


Дата добавления: 2018-11-24; просмотров: 208; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!