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

Решение

Этап 1. Математическая часть

Алгоритм записан на естественном языке

  1. Const n = 13

  2. i = 1

  3. Если i <= n, то шаг 4, иначе шаг 7

  4. Ввести М(i)

  5. i = i + 1

  6. шаг 3

  1. Ввести v

  2. Resul = -1

  3. i = 1

  4. Если i <= n, то шаг 11, иначе шаг 7

  5. Если М(i) = v, то Resul = i,

иначе шаг 12

  1. i = i + 1

шаг 10

  1. Если Resul = -1, то Вывести «В этом массиве нет такого числа», иначе Вывести Resul

Этап 2. Ввод данных в таблицу Excel

В ячейки А1:A13 вводятся элементы массива M(i).

Этап 3. Определение переменных

Константа n = 13, размер массива M(13)

Вводится: массив M(i) (неупорядоченный массив, Single), v (число, равное которому ищем в массиве, Single).

Выводятся (результат): Resul (номер элемента массива, равного заданному часлу, Integer).

Промежуточные переменные: i – счетчик цикла (Integer).

Этап 4. Написание процедуры.

На рабочем листе Лист1 при помощи Элементов управления создать элемент Кнопка (СommandBatton1).

Переименовать Кнопку в режиме конструктора. Вызвать контекстное меню ПКМ  Свойства  закладку Alhpabetic  Caption  в Поле ввода ввести новое название кнопки Поиск перебором.

Написать Процедуру-Событие для Кнопки «Поиск перебором»:

Private Sub CommandBatton1_Click()

'Декларация констант -

'n количество элементов массива

Const n As Integer = 13

'Декларация переменных

Dim M(1 To n) As Single

Dim v As Single

Dim i As Integer

Dim Resul As Integer

'Ввод массива из ячеек A1:A20

Range("a1").Activate

For i = 1 To n

M(i) = Cells(i, 1).Value

Next i

'Ввод искомого числа

v = InputBox("Введите искомое число", "ВВОД ДАННЫХ")

'Поиск перебором

Resul = -1

For i = 1 To n

If M(i) = v Then

Resul = i

End If

Next i

'Вывод результата поиска

If Resul = -1 Then

MsgBox ("В этом массиве нет такого числа!"), vbCritical, "Внимание"

Else

MsgBox ("Элемент номер " & Resul & " равен числу " & v _

& " !!! "), vbInformation, "Найден ответ"

End If

End Sub

Примечание 1. Работу с функцией InputBox и MsgBox смотрите в Прил. 1.

Э тап 5. Выполнение.

Перейти на рабочий лист (ViewMicrosoft Excel или Alt+F11). Выйти из режима Конструктора. Нажать Кнопку «Поиск перебором». В появившемся диалоговом окне «ВВОД ДАННЫХ» введите число 4. В окне сообщений "Найден ответ" появится ответ "Элемент номер 7 равен числу 4 !!!" (рис.2).

Этап 6. Переименование листа. Навести курсор на закладку Лист1, правой клавишей мыши (ПКМ) вызвать контекстное меню, выбрать пункт Переименовать, удалить старое название листа и с клавиатуры набрать новое Поиск_перебором, нажать Enter.

Задача 2. Дан вектор a(20). Найти максимальный элемент этого вектора, вывести номер этого элемента.