Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Порядок выполнения работы. 1. Открыть в бригадной папке созданный на предыдущей лабораторной работе Excel – документ с именем “max2_my” и подготовить для текущей работы копию этого





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:

Выбор максимального из трёх чисел с использованием подпрограммы–функции выбора максимума из двух чисел.

¢ подпрограмма–функция (описание)

Function max2(ByValx As Integer, └ ┘ –

ByVal y As Integer) As Integer

If x> y Then max2= x Else max2= y

End Function

¢ Главная подпрограмма

Private Sub CmdРешение_ Click ()

Dim a As Integer, b As Integer, └ ┘ –

c As Integer, maximum As Integer

a = CInt(Text1.Text)

b = CInt(Text2.Text)

c = CInt(Text3.Text)

maximum=max2(max2(a, b), c)

Text4.Text= maximum

End Sub

Пояснения.

В главной подпрограмме в конце действий выполняется вывод в поле с именем “Text4” максимального значения из 3-х чисел. Это значение определено с использованием и последовательным вызовом подпрограммы – функции выбора максимума из 2-х чисел.

Из описания этой функции следует, что результат ее выполнения, как и любой функции, связан с ее именем. Тип функции задан в конце заголовка описания функции.

После первого обращения к функции с именем “max2” она имеет значение максимума из значений переменных “a” и “b”. Это значение передается в качестве фактического параметра при втором обращении к функции наряду со значением переменной «с». В итоге получается окончательный результат.

12. Выполнить программу из файла max3_func.xls. Далее закрыть этот файл.

13. В конце работы самостоятельно реализовать проект по варианту, заданному преподавателем.

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

 

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

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

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

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

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

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

 

 

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

 

1. Определение разветвляющегося алгоритма. Пример.

2. Что такое логические операции, их назначение? Приведите примеры.

3. Синтаксис условного оператора «если…то». Формы записи условного оператора.

4. Сколько строк кода может следовать за операторами ThenилиElse?







Дата добавления: 2014-11-12; просмотров: 637. Нарушение авторских прав; Мы поможем в написании вашей работы!




Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Дренирование желчных протоков Показаниями к дренированию желчных протоков являются декомпрессия на фоне внутрипротоковой гипертензии, интраоперационная холангиография, контроль за динамикой восстановления пассажа желчи в 12-перстную кишку...

Деятельность сестер милосердия общин Красного Креста ярко проявилась в период Тритоны – интервалы, в которых содержится три тона. К тритонам относятся увеличенная кварта (ув.4) и уменьшенная квинта (ум.5). Их можно построить на ступенях натурального и гармонического мажора и минора.  ...

Понятие о синдроме нарушения бронхиальной проходимости и его клинические проявления Синдром нарушения бронхиальной проходимости (бронхообструктивный синдром) – это патологическое состояние...

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

Тактика действий нарядов полиции по предупреждению и пресечению правонарушений при проведении массовых мероприятий К особенностям проведения массовых мероприятий и факторам, влияющим на охрану общественного порядка и обеспечение общественной безопасности, можно отнести значительное количество субъектов, принимающих участие в их подготовке и проведении...

Тактические действия нарядов полиции по предупреждению и пресечению групповых нарушений общественного порядка и массовых беспорядков В целях предупреждения разрастания групповых нарушений общественного порядка (далееГНОП) в массовые беспорядки подразделения (наряды) полиции осуществляют следующие мероприятия...

Studopedia.info - Студопедия - 2014-2024 год . (0.013 сек.) русская версия | украинская версия