Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Редактор VBA. Условный оператор. ПодпрограммыСодержание книги
Поиск на нашем сайте
Цель работы: · изучить основы компьютерной логики, познакомиться с алгоритмом типа «ветвление» и условным оператором If…Then…Else; · получить навыки использования вспомогательных подпрограмм, их описания и вызова на выполнение.
Теоретическая часть Как правило, алгоритмы обработки информации и реализующие их программы содержат проверки каких-либо условий, от которых зависит последующее действие. Для этого предназначен условный оператор, который имеет вид (см.рис. 56). If условие Then инструкция 1 Else инструкция2 (если) (истинно) (то) (иначе) Рис.56. Общий формат условного оператора Этим оператором реализуется алгоритм типа «ветвление». Работает условный оператор следующим образом: 1. Проверяется условие 2. Если условие истинно, то исполняется инструкция 1 3. Если условие ложно, то исполняется инструкция 2 В инструкциях, помещаемых в ветви Then или Else, обычно фигурируют выполняемые операторы. Ветвь Else может отсутствовать. В качестве условия может быть использовано любое логическое выражение со знаком > (больше), < (меньше), = (равно), > = (больше либо равно), < = (меньше либо равно), <> (не равно). В каждой ветви может быть как один оператор, так и блок операторов, разделённых при линейной (строчной) записи двоеточием. Приведенный выше формат является форматом строчного условного оператора. Его удобно использовать в случае, когда в каждой ветви помещается по одному оператору. Иначе будет необходимо организовать перенос (через пробел знаком «подчерк») единой логически строки записи на вторую или несколько строк текста программы. При помещении в ветви нескольких операторов удобнее (и это придаёт больше наглядности) использовать блочный условный оператор, имеющий следующий формат: If условие Then блок инструкций Else блок инструкций End If Начало (заголовок) блочного условного оператора (служебные слова If, Then и условие между ними), а также служебное слово Else и обозначение конца оператора End If помещаются в отдельные строки. При включении в блок инструкций нескольких операторов можно размещать их по два или три и более, если они короткие, в одной или нескольких строках, разделяя внутри строки двоеточиями. Для наглядности связи рекомендуется помещать слово Else под соответствующим словом Then. Допускается вложенность условного оператора в другой условный оператор (в любую ветвь внешнего условного оператора; обычно – в ветвь Else), когда требуется дополнительное ветвление. Оборудование, инструменты и приборы ПЭВМ, программное обеспечение Microsoft Office (Excel 2007). Варианты заданий Составить алгоритм, эскиз окна формы и программный код для решения задач, приведенных в таблице 3.2. Таблица 3.2 Варианты заданий
Продолжение табл. 3.2
Продолжение табл. 3.2
Продолжение табл. 3.2
Порядок выполнения работы 1. Открыть в бригадной папке созданный на предыдущей лабораторной работе Excel – документ с именем “max2_my” и подготовить для текущей работы копию этого документа по команде Файл/Сохранить как, задав для копии имя “max3_my”. 2. Запустить редактор VBA. Результат: открытие окон и формы ранее созданного проекта. 3. Оставить имя проекта «Проба_If», но изменить свойством “Caption” заголовок формы на «Выбор максимума из трех чисел». 4. Дополнить форму надписью «Ввод с» (с – латинская буква) и текстовым полем для ввода значения переменной «с» с именем «Text4». Задать в этом поле, например, значение 15. Примечание. Если в форме свободного места для дополнительных объектов нет, то следует сместить ранее созданные объекты, возможно уменьшив их размеры. 5. Дополнить текст подпрограммы, используя возможность копирования фрагментов текста: - в инструкцию Dim вставить описание переменной «с» и изменить в этой инструкции и далее по тексту имя результата на “max3”; - вставить строку с оператором присваивания переменной «с» числового значения из поля “Text4”; - вставить строку со вторым условным оператором без ветви “Else” для переприсваивания переменной “max3” значения переменной «с», если выполняется соответствующее условие. Примечание. Для рационального использования поля редактирования с текстом подпрограммы (чтобы весь текст был виден в этом поле) можно воспользоваться следующими двумя возможностями размещения текста: 1) логически единую, но длинную строку инструкции Dim (или другой инструкции внутри оператора), выходящую, возможно, за правую границу поля, можно разместить на две строки (и более), обозначив перенос; для этого нужно после запятой (разделителя списка описаний переменных) или по тексту другой инструкции вставить пробел, знак подчерк, а далее, нажав клавишу Enter, перенести остаток текста строки на следующую строку поля (для наглядности рекомендуется сместить перенесенный текст вправо под аналогичные элементы списка описаний переменных); 2) для размещения всего текста на виду в поле редактирования по вертикали можно размещать в одной строке поля по несколько коротких записей операторов, разделяя их внутри строки двоеточием (в конце строки перед следующей строкой операторов двоеточие не ставить). 6. Сохранить вновь созданный проект, выполнить заложенную в него программу и в конце закрыть файл. 7. Скопировать в бригадную папку: - в вычислительном центре из папки Х:\Программы каф. ПМ и САПР\Наумов\VBA, - на кафедре ПМ и САПР из папки Х:\Naumov\VBA файлы max2.xls и max3_func.xls. 8. Открыть сначала файл max2.xls, а в нем – программную реализацию проекта вывода максимального из 2-х чисел с помощью структурированной программы, состоящей из главной (командной, вызывающей) подпрограммы с именем «CmdРешение» и вспомогательной (вызываемой, содержащей описание выполняемых действий) подпрограммы с именем «Анализ». 9. Ознакомиться с содержанием программы «Выбор максимального числа из двух чисел с помощью структурированной программы, состоящей из главной и вспомогательной подпрограмм» ¢Вспомогательная подпрограмма (описание) Private Sub Анализ (Byval x As Integer, └┘– Byval y As Integer, └┘– ByRef r As Integer) If x>y Then r = x Else If x<y Then ¢Вложенный оператор r = y Else ¢Блок из 2-х операторов МsgBox “числа равные”: r = x End If End If End Sub ¢Главная подпрограмма Private Sub CmdРешение_ Click () Dim a As Integer, b As Integer, └┘– maximum2 As Integer a = CInt (Text1.Text) b = CInt (Text2.Text) Анализ a, b, maximum2 ¢Вызов вспомогательной подпрограммы Text3.Text= maximum2 End Sub Пояснения. В главной подпрограмме помещен вызов вспомогательной подпрограммы с именем «Анализ». После имени следует список фактических параметров: «а» и «b» – входные данные, «maximum2» – результат анализа. В описании вспомогательной подпрограммы помещен блочный условный оператор. В этой подпрограмме фигурируют формальные параметры, соответствующие фактическим параметрам по месту в списке и типу. Перед именем каждого формального параметра стоит одно из двух ключевых (служебных) слов: ByVal или ByRef. Эти слова определяют статус параметра, а именно условия передачи параметра в подпрограмму и из нее. Слово ByVal задает передачу по значению (By Value – посредством значения). Параметры такого статуса являются только входными. На их месте при вызове подпрограммы на выполнение в качестве фактических параметров кроме переменных, имеющих присвоенные им значения, могут стоять непосредственно числа и даже арифметические выражения. Значение переменной, переданной по значению, остается в вызывающей подпрограмме неизменным даже если оно изменялось внутри вызываемой (вспомогательной) подпрограммы. Слово ByRef задает передачу по ссылке (By Reference – посредством ссылки на адрес в памяти ЭВМ, где прописана (размещена) переменная, являющаяся соответствующим фактическим параметром подпрограммы. Параметры такого статуса являются, как правило, выходными, но через них в вызываемую подпрограмму можно передавать и исходные данные (текущие значения, изменяемые внутри этой подпрограммы, например, значения времени, изменяемые с заданным шагом при динамических расчетах). По умолчанию, т.е. без указания статуса параметра, принимается способ передачи по ссылке, но рекомендуется тот или иной способ передачи указывать явно для наглядного различия входных и выходных параметров. В блочном условном операторе блоки операторов, помещенные в его ветвях, размещаются по тексту обязательно в отдельных строках (отдельно от строк, где размещены условия со служебным словом Then и служебное слово Else). В блоке операторов в одной строке могут размещаться несколько операторов, разделенных двоеточием. Блочный оператор завершается служебными словами End If, размещаемыми в отдельной строке. Для наглядности соответствующие служебные слова If и End If, Then и Else рекомендуется размещать одно под другим, а вложенные блоки смещать по строкам вправо, выравнивая их по левому краю. 10. Выполнить программу из файла max2.xls для любых трех пар неравных чисел. Далее закрыть этот файл и открыть скопированный ранее в бригадную папку файл max3.func.xls. В этом файле реализован проект вывода максимального из 3-х чисел с помощью структурированной программы, состоящей из главной подпрограммы и вспомогательной подпрограммы – функции с именем “max2”. Эта функция задает выбор максимума из 2-х чисел. 11. Ознакомиться с содержанием программы из файла max3_func.xls:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-08-15; просмотров: 533; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.217.193.85 (0.011 с.) |