Опубликован: 04.07.2006 | Доступ: свободный | Студентов: 5470 / 628 | Оценка: 4.11 / 3.96 | Длительность: 11:08:00
Лекция 2:

Управление ходом выполнения программ. Примеры типовых алгоритмов

Примеры типовых алгоритмов

Ниже приводятся примеры некоторых типовых алгоритмов.

Практическая работа 14. Краткие примеры: нахождение экстремума, создание признака конца списка, деление элементов массива на группы, сортировка и т.д.

14а. Нахождение максимального элемента (массива).

  1. Создать на форме элементы управления CommandButton, поле списка, Label, рис. 2.5 и ввести код, данный ниже. Пояснения даны под комментариями:
    Схема формы

    Рис. 2.5. Схема формы
    Private Sub Command1_Click()
    Dim m(25) As Integer ' описание массива
    ' описание переменной для хранения максимального значения 
    Dim max As Integer 
    Dim j As Integer, i As Integer 'описание переменныx-счeтчик
    ' создание массива и вывод его элементов в поле списка
    For i = 0 To 24 
    m(i) = Int(Rnd * 40 + 1) 
    lst1.List(i) = m(i) 
    Next i
    max = m(0) ' пусть m(0) будет максимальным элементом
    For j = 1 To 24 ' поиск максимального элемента
    ' если текущий элемент массива больше текущего 
    ' максимального, то сделать его максимальным элементом
    If m(j) > max Then max = m(j) 
    Next j
    lbl1.Caption = max ' вывод результата в поле lbl1
    End Sub
  2. стартовать проект, сделать щелчок на командной кнопке.

14 в. Нахождение наибольшего из 2-х элементов, условная инструкция If ... Then ... Else

В университетах M и N число студентов x1 и x2 соответственно, стоимость обучения каждого за весь период обучения равна st1 и st2; обучение длится ja1 и ja2 лет соответственно. Определить где выше стоимость обучения за 1 год. Последовательность действий:

  • создать на форме элементы управления CommandButton и TextBox, ввести код, данный ниже:
Private Sub Command1_Click()
Dim st1 As Single, st2 As Single, ja1 As Integer, ja2 As Integer
Dim x1 As Integer, x2 As Integer
x1 = 2000 ' ввод исходных данных
x2 = 3000: ja1 = 4: ja2 = 5: st1 = 250.5: st2 = 300.7
If x1 * st1 / ja1 > x2 * st2 / ja2 Then
txt1.Text = "Университет M:" & x1 * st1 / ja1 
Else
txt1.Text = "Университет N:" & x2 * st2 / ja2 
End If
End Sub
  • стартовать проект, сделать щелчок на командной кнопке.

14с. Создание списка данных типа String, создание признака конца списка, вывод списка в массив

Задание: создать список названий футбольных клубов страны. Переписать список в массив football(j). Последовательность действий:

  1. Создать на форме элементы управления: CommandButton, 2 элемента управления ListBox, поле метки. Ввести код, данный ниже, пояснения даны под комментариями:
    (General) (Declarations)
    Dim football(20) As String ' описание массива названий клубов
    
    Private Sub Form_Load()
    Dim j As Integer, i As Integer, Аr As String 
    ' Аr - условное название клуба
    For j = 0 To 14 ' формирование списка названий клубов
    Ar = "C" ' часть условного названия клуба
    ' формирование условных названий клубов
    For i = 0 To 2 
    Ar = Ar & Int(Rnd * 10 + 1)
    Next i
    lst1.List(j) = Ar ' вывод названий в поле ListBox
    Next j
    ' создание признака конца списка. После инструкции 
    ' Next значение переменной-счётчик увеличивается на 1
    lst1.List(j) = "-1" 
    End Sub
    
    ' переписывать список в массив football(20) до тех пор, пока не 
    ' появится признак конца списка
    Private Sub Command1_Click() 
    Dim j As Integer
    j = 0
    Do Until lst1.List(j) = "-1"
    football(j) = lst1.List(j)
    lst2.List(j) = football(j)
    j = j + 1
    Loop
    lbl1.Caption = j ' определить, сколько элементов переписано
    End Sub
  2. стартовать проект, сделать щелчок на командной кнопке.
антонина квасова
антонина квасова
Владимир Муратов
Владимир Муратов

По курсу Visual Basic где же взять материалы для практических работ? 

Светлана Ведяева
Светлана Ведяева
Россия, Саратов
Оксана Пагина
Оксана Пагина
Россия, Москва