Файл: Informatika_Chast_3_2009_Naumov.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 26.07.2024

Просмотров: 265

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
  1. Аналогично п.2.7 и п.2.8 в желаемом месте формы создать надпись «Ввод b» (b – латинская буква), рядом справа – текстовое поле с именем «Text2» и поместить в поле начальное значение переменной «b», например, 5.

  2. Поместить в центр формы элемент управления «CommandButton» («командная кнопка»). Задать кнопке имя «CmdВыбор», создать на кнопке надпись «Выбор».

  3. Создать ниже командной кнопки надпись «Максимум» (элемент «Label» ), а под этой надписью – текстовое поле для вывода результата, задав полю имя «Text3».

    1. Приступить к созданию программного кода.

Сначала выполнить двойной щелчок ЛКМ на командной кнопке.

Результат: появление на переднем плане окна редактирования и в нем – шаблона (заготовки) главной подпрограммы – процедуры выбора:

Private Sub CmdВыбор _Click( )

пустая строка

End Sub

Пояснения

Слово Private означает – личная (для данного программного модуля), то есть процедура (подпрограмма) принадлежит только данной форме или модулю и не может быть использована другими формами, модулями. Sub – подпрограмма (Subroutine). Первая часть ее имени CmdВыбор – это свойство «Name» командной кнопки, связанной с этой подпрограммой. Вторая часть имени подпрограммы Click – это название события (щелчок). Этим указывается, что при переходе в режим выполнения программы данная процедура будет выполняться после щелчка ЛКМ на командной кнопке. Слова End Sub означают окончание подпрограммы.

Действие:

    1. Вставить в шаблон главной подпрограммы следующий текст:

Dim a As Integer, b As Integer, max2 As Integer

a = CInt (Text1.Text)

b = CInt (Text2.Text)

If a>b Then max2 = a Else max2=b

Text3.Text = max2

Пояснения

Первая строка – инструкция задания размерности (Dimension) переменных и их типа. Тип определяет те значения, которые может принимать переменная. В данном примере переменные – простые (не массивы). Они определены как (As) целого (Integer) типа.

Вторая и третья строки – операторы присваивания целочисленным переменным значений, считываемых из соответствующих полей формы. В текстовых полях формы данные представлены в виде символов (цифр). С помощью функции CInt выполняется преобразование данных (конверсия – Conversion ) в тип целый (Integer). При этом контролируется возможность данного преобразования. Первая часть составного имени данного в поле ввода – это значение свойства «Name» этого поля. Вторая часть имени данного определяет его тип в поле ввода.


Четвертая строка – строчный условный оператор, реализующий алгоритм типа «ветвление». Этот оператор выполняет анализ условия. Если (If) это условие – истина, то (Then) выполняется оператор в ветви «Then»; иначе (Else) выполняется оператор в этой ветви.

Пятая строка – оператор присваивания, а фактически – вывода значения целочисленной переменной max2 в текстовое поле формы с именем «Text3» (преобразование числового значения в символьное выполняется автоматически).

3.2. Выполнить программу созданного проекта.

Действия:

  1. перейти в режим выполнения программы, щелкнув ЛКМ на кнопке «Запуск подпрограммы/ UserForm» («Run Sub/ User Form») на панели инструментов (на кнопке изображен значок – стрелка, направленная вправо);

  2. выполнить программу с помещенными предварительно в поля ввода данными, щелкнув ЛКМ на командной кнопке в появившейся на переднем плане форме.

3.3. Повторите выполнение программы для следующих пар чисел: 45,5 и 12; -56 и 5,3; -858 и -99,9.

3.4. После выполнения программы проекта закрыть форму, выйти из среды программирования на внешний уровень Excel-файла, т.е. в окно с таблицей и вкладками (быстрые клавиши Alt+F4).

    1. На вкладке «Разработчик» щелкнуть в левом поле вкладки на значке « «!» Безопасность макросов»». В открывшемся окне «Центр управления безопасностью» выбрать в перечне «Параметры макросов» вариант «Включить все макросы» и под заголовком «Параметры макросов для разработчика» активизировать режим «Доверять доступ к объектной модели проектов VBA». Закрыть окно «Центр управления безопасностью» щелчком на кнопке «OК».

    2. Окончательно сохранить Excel-файл с созданным проектом и закрыть окно Excel.

    3. Для подтверждения готовности проекта для дальнейшего использования вновь открыть созданный Excel-файл, войти в среду программирования (быстрые клавиши Alt+F11), выполнить программу проекта, вернуться обратно и завершить работу.

    4. Самостоятельно реализовать проект по варианту, заданному преподавателем.

    5. Завершить работу щелчком ЛКМ на пункте «Завершение сеанса <имя группы>».


Содержание отчета

Отчет должен содержать:

  • номер, название и цель работы;

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

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

  • заключение по работе.

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

    1. Объясните термин «объектно-ориентированное программирование».

    2. Дайте определение алгоритма, программы, языка программирования.

    3. Назовите элементы языка VBA, приоритеты операций в VBA.

    4. Какой элемент управления формы может не только отображать текст, но и получать его от пользователя?

    5. Какую функцию выполняют события в Visual Basic?

ЛАБОРАТОРНАЯ РАБОТА №2

Редактор VBA. Условный оператор.

Подпрограммы

Цель работы:

  • изучить основы компьютерной логики, познакомиться с алгоритмом типа «ветвление» и условным оператором If …Then…Else;

  • получить навыки использования вспомогательных подпрограмм, их описания и вызова на выполнение.

Теоретическая часть

Как правило, алгоритмы обработки информации и реализующие их программы содержат проверки каких-либо условий, от которых зависит последующее действие. Для этого предназначен условный оператор, который имеет вид (рис. 2).

If условие Then инструкция 1 Else инструкция2

(если) (истинно) (то) (иначе)

Рис. 2. Общий формат условного оператора

Этим оператором реализуется алгоритм типа «ветвление». Работает условный оператор следующим образом:

  1. проверяется условие;

  2. если условие истинно, то исполняется инструкция 1;

  3. если условие ложно, то исполняется инструкция 2.


В инструкциях, помещаемых в ветви Then или Else, обычно фигурируют выполняемые операторы. Ветвь Else может отсутствовать. В качестве условия может быть использовано любое логическое выражение со знаком > (больше), < (меньше), = (равно), > = (больше либо равно), < = (меньше либо равно), <> (не равно).

В каждой ветви может быть как один оператор, так и блок операторов, разделённых при линейной (строчной) записи двоеточием. Приведенный выше формат является форматом строчного условного оператора. Этот оператор удобно использовать в случае, когда в каждой ветви помещается по одному оператору. Иначе необходимо будет организовать перенос (через пробел знаком «подчерк») единой логически строки записи на вторую или несколько строк текста программы.

При помещении в ветви нескольких операторов удобнее (и это придаёт больше наглядности) использовать блочный условный оператор, имеющий следующий формат (рис. 3):

If условие Then

блок инструкций

Else

блок инструкций

End If

Рис. 3. Формат блочного условного оператора

Начало (заголовок) блочного условного оператора (служебные слова If, Then и условие между ними), а также служебное слово Else и обозначение конца оператора End If помещаются в отдельные строки.

При включении в блок инструкций нескольких операторов можно размещать их по два или три и более, если они короткие, в одной или нескольких строках, разделяя внутри строки двоеточиями. Для наглядности связи рекомендуется помещать слово Else под соответствующим словом Then.

Допускается вложенность условного оператора в другой условный оператор (в любую ветвь внешнего условного оператора; обычно – в ветвь Else), когда требуется дополнительное ветвление.

Оборудование, инструменты и приборы: ПЭВМ, программное обеспечение Microsoft Office (Excel 2007).


Задания

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

Таблица 2

Варианты заданий

№ варианта

Задание

1

Ввести два целых числа a, b. Меньшее из них заменить полусуммой, а большее – удвоенным произведением. Вывести новые значения a, b

2

Решить задачу преобразования двух неравных чисел: большее число уменьшить на 2, а меньшее утроить и вывести результат. В окне формы разместить надписи и поля для ввода исходных данных и вывода результатов

3

Решить квадратное уравнение.

4

Ввести четыре вещественных числа a, b, c, d. Если аbcd, то каждое число заменить наибольшим из них; если a > b > c > d, то числа оставить без изменения; в противном случае все числа заменить их квадратами. Вывести новые значения a, b, c, d

5

Выяснить, пересекаются ли две прямые, заданные на плоскости уравнениями вида y = kx+b. Если пересекаются, то вывести координаты точки пересечения, иначе вывести сообщение об отсутствии пересечения

6

Выяснить, лежат или нет на одной прямой три точки, заданные своими координатами x, y. В результате вывести соответствующее сообщение

7

Ввести координаты x1, y1 и x2, y2 двух точек на плоскости. Определить, принадлежат эти точки одной четверти или нет

8

Ввести координаты x1, y1 и x2, y2 левой верхней и правой нижней вершин прямоугольника, а также координаты x, y произвольной точки. Проверить правильность ввода координат прямоугольника. При неверном вводе этих координат вывести сообщение, а при верном – определить принадлежность точки данному прямоугольнику