Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Обработка одномерного массиваСодержание книги
Поиск на нашем сайте
Цель занятия – изучение операций по обработке одномерного массива с использованием конструкций условия.
Конструкция условия For...Next выполняет последовательность команд определенное число раз. Такую конструкцию называют циклом, а выполняемые ею программные коды — телом цикла. Синтаксис конструкции For...Next следующий: For счетчик = начальное значение То конечное значение [ Step шаг] конструкции Next [счетчик] Первый аргумент конструкции — счетчик определяет имя переменной, которая будет считать количество выполнении цикла. Параметр начальное значение указывает числовое значение, которое присваивается переменной-счетчику перед первым выполнением цикла. Цикл выполняется до тех пор, пока значение счетчика не превысит конечного значения, указанного после ключевого слова Tо. После каждого выполнения цикла значение счетчика изменяется на величину шага, указанную за ключевым словом Step. Ключевое слово Next обозначает конец тела цикла и является обязательным. Перед каждым проходом цикла Visual Basic сравнивает значения счетчика и аргумента конечное значение. Если значение счетчика не превышает установленного значения конечное значение, то выполняются конструкции тела цикла. В противном случае управление переходит к следующей за Next конструкции. Например:
For n = 1 То 10 Step 2 m = m+1 Next Здесь цикл выполняется пять раз при значениях счетчика n = 1, 3, 5, 7 и 9. Ключевое слово Step можно опустить. В этом случае значение шага по умолчанию принимается равным 1.
Для создания в форме раскрывающегося списка используется объект типа ComboBox. Этот тип списка позволяет пользователю осуществлять выбор значения, вводимого в размещаемое сверху поле ввода, или выбирать значение из списка, открываемого нажатием кнопки со стрелкой, размещаемой с правой стороны. Список данного типа удобно использовать в том случае, если вводимых значений много, а места в форме для расположения обычного списка не хватает.
В качестве примера рассмотрим создание программы обработки одномерного числового массива.
Входные данные: размер массива (size), элементы массива. Выходные данные: сумма элементов (sum), минимальный элемент (min). Разработка алгоритма: алгоритмы разработаны на предыдущих занятиях. Диалоговая форма программы Спроектируйте интерфейс программы с использованием элементов управления (рис. 2.13). На форме располагаются 4 текстовых надписи (одна из них пустая), 2 текстовых поля для ввода данных, 1 - для вывода результата; раскрывающийся список для выбора операции; 4 кнопки: 1 для ввода размера (количество элементов) массива (Ввод размера), 1 для ввода элементов массива (Ввод массива), 1 для выполнения операции (ОК), 1 для выхода из программы (Выход).
Свойства объектов В окне свойств объектов определите свойства каждого элемента управления: Таблица 2.8
Свойства элементов управления
* - пустая надпись (надпись выводится в зависимости от типа операции) В текстовых полях необходимо стереть заданный по умолчанию текст. В раскрывающемся списке в свойстве List наберите список операций: Сумма и Минимум.
Программный код
'Установка индексации элементов массива (начинается с 1) Option Base 1 'Объявление переменной целого типа для ввода размера массива Dim size As Integer 'Объявление переменной целого типа (флага) для обеспечения многократного ввода данных Dim f As Integer 'Объявление имени массива и максимального количества элементов Dim A(100) 'Процедура ввода размера массива Private Sub Command1_Click() size = Val(РазмерМассива.Text) Command1.Enabled = False 'Установка курсора в окно ввода элементов массива ЭлементыМассива.SetFocus 'Активация кнопки ввода элементов массива в случае ее деактивации If Command1.Enabled = False Then Command2.Enabled = True 'Установка флага на единицу f = 1 End If 'Очистка формы Form1.Cls 'Очистка текстового поля Результат.Text = "" 'Очистка надписи Label3.Caption = "" End Sub 'Процедура ввода элементов массива Private Sub Command2_Click() 'Установка курсора в окно ввода элементов массива ЭлементыМассива.SetFocus 'Объявление счетчика элементов массива (статическая переменная) Static i 'Если флаг содержит единицу (повторный ввод данных) устанавливаем счетчик элементов массива на 0 и флаг устанавливаем на 0 If f = 1 Then i = 0 f = 0 End If 'Операция ввода элементов массива If i <= size Then A(i+1) = Val(ЭлементыМассива.Text) i = i + 1 'Очистка текстового поля ввода элементов массива ЭлементыМассива.Text = "" End If 'Деактивация кнопки ввода элементов массива и их вывод (индекс больше или равен количеству элементов массива) If i >= size Then Command2.Enabled = False Command1.Enabled = True Combo1.SetFocus For i = 1 To size Print Spc(1); A(i); Next End If End Sub 'Процедура выполнения операций по обработке массива данных Private Sub Command3_Click() 'Объявление переменных для хранения результатов обработки массива данных Dim min As Double Dim sum As Double 'Поиск минимального элемента If Combo1.Text = "Минимум" Then min = A(1) For i = 1 To size If A(i) <= min Then min = A(i) End If Next 'Вывод минимального элемента Label3.Caption = "Минимум" Результат.Text = Str(min) End If 'Вычисление суммы элементов массива If Combo1.Text = "Сумма" Then sum = 0 For i = 1 To size sum = sum + A(i) Next 'Вывод суммы элементов массива Label3.Caption = "Сумма" Результат.Text = Str(sum) End If End Sub 'Процедура выхода из программы Private Sub Command4_Click() End End Sub
Практическое задание 1. Дополнительно запрограммируйте операцию поиска максимума, вычисления произведения элементов массива, среднего арифметического из элементов, суммы отрицательных и суммы положительных элементов, определение номера максимального элемента.
Контрольные вопросы
1. Объясните работу конструкции For… Next. 2. Объясните работу элемента управления ComboBox.
Лабораторная работа 5
|
|||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2017-02-07; просмотров: 209; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.117.231.160 (0.006 с.) |