Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Контрольные работы ТП.doc
Скачиваний:
2
Добавлен:
08.11.2019
Размер:
781.31 Кб
Скачать

Пример выполнения задания

В массиве A(n) осуществить попарную перестановку рядом расположенных элементов по схеме, изображенной на рис. 1.

Рис. 1. Схема перестановки элементов массива

Для перестановки необходимо использовать промежуточную переменную. Тогда перестановка двух элементов i и j будет выполняться по схеме, представленной на рис. 2.

Рис. 2. Схема перестановки значений двух элементов

Пример реализации программы

Наибольшую сложность представляет организация ввода одномерного массива в программу. Для этого создадим форму, приведенную на рис. 3. Назначение элементов управления на форме приведено в таблице.

Ввод элемента массива, номер которого указан в Label1, осуществляется через элемент Text1. После указания номера массива с помощью HScroll1 необходимо ввести значение этого элемента массива в Text1 и нажать на кнопку Запомнить (Command1).

Рис. 3. Внешний вид формы для ввода одномерного массива

Для вывода массива служит форма Form2 (рис. 4). Для ее создания наведите курсор на панель Project и нажмите правую кнопку мыши. В появившемся локальном меню выберите AddForm. Измените размеры формы Form2 и поместите во всю ее ширину элемент управления Label1.

Назначение элементов управления

Элемент управления

Назначение

Text1

Отображение и редактирование текущего элемента массива

Label1

Отображение номера текущего элемента (1, 2,…)

HScroll1

Изменение номера текущего элемента массива

Command1

Кнопка для запоминания текущего элемента массива

Command2

Кнопка для отображения всего массива на форме Form2

Command3

Кнопка для запуска процесса вычисления суммы элементов массива

Label2

Отображение статической надписи “Сумма равна”

Label3

Для отображения вычисленной суммы

Command4

Кнопка для скрытия вычисленной суммы (уменьшения размера окна)

Рис. 4. Внешний вид формы Form2

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

Option Explicit

Const N = 10

Dim m(1 To N) As Double

′При загрузке формы необходимо инициализировать

′свойства элементов управления.

Private Sub Form_Load() ′Выполняется при запуске программы

HScroll1.Min = 1 : HScroll1.Max = N

HScroll1.Value = 1 ′ После запуска программы первый элемент массива

Label1.Caption = "1" ′ имеет индекс 1

Text1.Text = "0" ′ В первом элементе массива записан 0

Height = 2200 ′Уменьшить размер формы, спрятав визуальные элементы

End Sub ′ для вывода вычисленной суммы

Private Sub HScroll1_Change() ′Вызывается при изменении позиции ползунка

Dim st As Integer ′Величина шага сдвига визуальных элементов

st = (Width – Text1.Width) / N ′ввода элемента массива

Text1.Left = (HScroll1.Value ­– 1) * st ′Сдвинуть визуальные элементы

Label1.Left = (HScroll1.Value – 1) * st

Command1.Left = (HScroll1.Value – 1) * st

Label1.Caption = CStr(HScroll1.Value)

Text1.Text = CStr(m(HScroll1.Value)) ′Вывод соответствующего

End Sub ′элемента массива

Private Sub Command1_Click() ′Запомнить введенное число в соответ-

m(HScroll1.Value) = CDbl(Text1.Text) ′ствующем элементе массива

End Sub

Private Sub Command2_Click() ′Показать массив на форме Form2

Dim i As Double

Form2.Label1.Caption = ""

For i = 1 To N

Form2.Label1.Caption = Form2.Label1.Caption + " " & CStr(m(i))

Next i

Form2.Show vbModal ′Отобразить Form2 на экране

End Sub ′в модальном режиме

Private Sub Command3_Click()

Dim i As Byte

Height = 2500 ′Увеличить размер формы для отображения суммы

Dim s As Double

s = 0 ′Вычислить сумму элементов массива

For i = 1 To N

s = s + m(i)

Next i

Text2.Text = CStr(s) ′Вывести сумму на экран

End Sub

Private Sub Command4_Click() ′ Уменьшить размер формы

Height = 2200

End Sub

Контрольные вопросы

1. Типы массивов.

2. Понятие одномерного массива.

3. Декларация одномерных массивов на языке программирования.

4. Формула определения количества элементов в одномерном массиве.

5. Способ обращения к элементу массива.

6. Алгоритм вычисления суммы и произведения элементов одномерного массива.

7. Понятие сдвига и обмена. Алгоритм обмена содержимого двух переменных. Алгоритм сдвига элементов массива.

8. Способы ввода одномерного массива в компьютер.

9. Элементы управления VScrollBar, HScrollBar: назначение, свойства, события.