Главная страница
Навигация по странице:

  • 33. Подпрограммы. Назначение и классификация Подпрограмма

  • 34. Способы передачи данных в подпрограмму в VBA

  • Function

  • 37. Операторы ввода данных в VBA.

  • 40. Особенности ввода-вывода в табличную базу данных

  • Методы объекта Chart Рассмотрим основные методы, определяющие новое поведение объекта Chart: SubChartWizard

  • Sub SetSourceData

  • 44. Способы отладки и тестирования программ Отладка программы

  • Синтаксическая ошибка

  • Логическая ошибка

  • По шаговая отладка

  • 45. Декомпозиция задач на подзадачи. Применение IDEF0. Декомпозиция программы

  • Экзамен Понятие информации и данных


    Скачать 421.5 Kb.
    НазваниеЭкзамен Понятие информации и данных
    Дата07.05.2019
    Размер421.5 Kb.
    Формат файлаdoc
    Имя файлаEkzamen.doc
    ТипДокументы
    #76433
    страница4 из 4
    1   2   3   4

    32. Оператор While


    Общий вид оператора While:

    While выражение

    [инструкции]

    Wend

    Оператор While предназначен для организации цикла-пока.

    Инструкции будут выполняться пока выражение будет истинно.

    Пример. Вычислить сумму чисел от 0 до 100.

    Решение.

    Sub сумма1()

    Dim x, s As Double

     

    x = 0

    s = 0

    While x <= 100

    s = s + x

    x = x + 1

    Wend

    MsgBox ("s=" + Str(s))

     

    End Sub

    Do – ключевое слово (делать); While – ключевое слово (пока); Until – ключевое слово (до тех пор пока); Loop – ключевое слово, указывающее на окончание цикла; <условие> – логическое выражение, истинность которого проверяется в начале каждого выполнения тела цикла; <тело_цикла> – произвольная последовательность операторов;

    Ключевое слово Until обеспечивает выполнение цикла до тех пор, пока не выполняется условие, т.е. пока условие имеет значение False «ложь». Как только условие примет значение True «истина», выполнение цикла закончится.

    Условие выхода из цикла можно поставить в конце, после тела цикла. Такой цикл называется циклом с послеусловием. Такой цикл реализуется также с помощью инструкции Do ... Loop.

    Проверка условия выхода из цикла проводится с помощью ключевых слов While или Until. Цикл с предусловием никогда не выполняется в случае невыполнения условия. Цикл с послеусловием выполняется обязательно, как минимум один раз, независимо от того, выполняется условие или нет.

    Условие проверяется до выполнения операторов:

    1. Do While condition

    2. [ statements ]

    3. [ Exit Do ]

    4. [ statements ]

    5. Loop

    Условие проверяется после выполнения операторов:

    1. Do

    2. [ statements ]

    3. [ Exit Do ]

    4. [ statements ]

    5. Loop While condition

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

    Существует два вида процедур:

    1. Подпрограмма – представляет собой определенный набор операторов, составленный пользователем и расположенный отдельно от основной программы.

    2. Функция-процедура, определяемая пользователем – это функция, которая создается пользователем, а не входит в стандартный набор; функция определяемая пользователем также располагаемся отдельно от основной программы. Это особый вид процедуры VBA, возвращающей результат. Пользовательские функции-процедуры, как и встроенные функции VBA, могут иметь необязательные и именованные аргументы. Функции можно использовать для обеспечения значениями выражений (присваивания) или в качестве аргументов других функций и процедур. Создание новой функции состоит из написания программных операторов, которые определяют:

    1. аргументы, используемые функцией;

    2. действия, выполняемые функцией;

    3. значение, возвращаемое функцией.

    Функции, создаваемые с помощью VBA, имеют различное применение, например, в Excel и Word. В Excel можно использовать функции VBA для расширения коллекции встроенных функций рабочих листов. Другие host-приложения VBA, такие как Access, также позволяют применять создаваемые VBA-функции для расширения и улучшения встроенной коллекции функций.

    Отличие функции от подпрограммы состоит в том, что:

    – функция обязательно должна возвращать (передавать результат вычисления) результат в основную программу;

    – имя функции должно иметь спецификатор типа для определения типа самой функции.

    Процедуры характеризуются следующими основными свойствами:

    1. процедуры могут использовать локальные переменные – переменные, которые не зависят от одноименных переменных основной программы; эти переменные существуют и используются только внутри процедуры (одноименные переменные в основной программе и в процедуре – это разные переменные)

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

    33. Подпрограммы. Назначение и классификация

    Подпрограмма - это отдельная функционально независимая часть программы.

    задачи:

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

    • улучшают структуру программы, облегчая ее понимание;

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

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

    Функции служат, прежде всего, для определения алгоритма вычисления некоторого значения (простого типа). В этом отношении функции подобны выражениям, которые также вычисляют значение. В соответствии с этим вызов функции является одним из допустимых операндов выражения, обозначая в нем то значение, которое вычисляет ("возвращает") функция.

    34. Способы передачи данных в подпрограмму в VBA.

    Подпрограммы VBA могут принимать для обработки формальные параметры, указываемые при объявлении. При вызове они заменяются фактическими параметрами, т.е. реально используемыми в вызывающей программе. В VBA список формальных параметров подпрограммы представляет имена переменных, разделенных запятой. При этом желательно указать тип каждой переменной: Если тип данных параметра не указан, то автоматически будет использован тип Variant. Список параметров может быть пустым как для процедуры, так и для функции. В этом случае после имени процедуры ставятся пустые круглые скобки. При передаче фактических параметров в подпрограмму может использоваться один из двух различных способов:

    • передача по значению;

    • передача по ссылке.

    При передаче по значению, в подпрограмме создается копия полученного фактического параметра. Все действия внутри подпрограммы выполняются над этой копией и при выходе из подпрограммы все изменения теряются. Если переменная передается по ссылке, то процедуре или функции будет передан адрес этой переменной. Тем самым вызываемая процедура может изменить значение фактического параметра: если будет измен формальный параметр процедуры, то переданный при вызове ей фактический параметр тоже изменит свое значение. Способ передачи указывается при описании параметров в строке объявления подпрограммы. Имени параметра может предшествовать один из явных описателей способа передачи:

    • ByRef – задает передачу по ссылке;

    • ByVal – задает передачу по значению.

    По умолчанию выполняется передача по ссылке.

    35. Функции в VBA. Назначение. Условно-графическое обозначение (УГО), пример применения.

    В Excel Visual Basic набор команд, выполняющий определённую задачу, помещается в процедуру Function (Функция) или Sub (Подпрограмма). Главное отличие между процедурами Function и Sub состоит в том, что процедураFunction возвращает результат, процедура Sub – нет.

    Поэтому, если требуется выполнить действия и получить какой-то результат (например, просуммировать несколько чисел), то обычно используется процедура Function, а для того, чтобы просто выполнить какие-то действия (например, изменить форматирование группы ячеек), нужно выбрать процедуру Sub. VBA ПРОЦЕДУРА «SUB»: ПРИМЕР 1. ВЫРАВНИВАНИЕ ПО ЦЕНТРУ И ИЗМЕНЕНИЕ РАЗМЕРА ШРИФТА В ВЫДЕЛЕННОМ ДИАПАЗОНЕ ЯЧЕЕК. Рассмотрим пример простой VBA процедуры Sub, задача которой – изменить форматирование выделенного диапазона ячеек. В ячейках устанавливается выравнивание по центру (и по вертикали, и по горизонтали) и размер шрифта изменяется на заданный пользователем.

    36. Процедуры в VBA. Назначение. Условно-графическое обозначение (УГО), пример применении

    Процедура - это некий блок кода, который будет выполняться всякий раз при вызове этой процедуры. Каждая процедура начинается зарезервированным словом Sub и заканчивается End. MsgBox - это встроенная функция Visual Basic, которая выводит на экран окно с сообщением, заданным в качестве параметра. Остальные параметры необязательны (их всего 5). Подробнее о функции MsgBox можно прочитать здесь.

    37. Операторы ввода данных в VBA.

    Оператор ввода служит для задания исходных данных при выполнении программы. Операторы вывода позволяют получить результаты выполнения программы. Ввод и вывод может осуществляться в нескольких формах: обмен данными между программой и ячейками Excel и между программой и стандартным окном Windows. Для ввода данных используется InputBox.

    40. Особенности ввода-вывода в табличную базу данных. Характерной особенностью баз данных, созданных в Access, является хранение создаваемых таблиц и средств для обработки данных в одном файле, имеющем расширение .mdb. Достоинством Access является возможность создания СУБД (т.е. программы управления) без программирования. Однако, для сложных СУБД применение программирования на встроенном языке Visual Basic for Applications (VBA) позволяет повысить эффективность системы управления.

    Основным элементом БД является таблица. Столбцы таблицы БД называются полями, а строки — записями. Первым этапом создания таблицы БД является задание ее структуры, т.е. определение количества и типа полей. Вторым этапом является ввод и редактирование записей в таблицу. БД считается созданной, даже если она пустая. Поля таблицы просто определяют ее структуру и групповые свойства данных, записываемых в ячейках. Рассмотрим основные свойства полей БД.

    1. Имя поля — определяет как надо обращаться к данным поля (имена используются как заголовки таблиц).

    2. Тип поля — определяет тип данных, которые могут содержаться в данном поле (текстовые, числовые, дата, Memo, денежный, счетчик и др.).

    3. Размер поля — определяет предельную длину данных, которые могут размещаться в поле.

    4. Формат поля — способ форматирования данных в ячейках.

    41. Праграммы в Excel

    Диаграммы можно размещать на рабочем листе. Для этого используется коллекция chartobjects. Ее элементы – объекты класса chartobject – являются контейнерами, содержащими объект Chart, задающий непосредственно диаграмму.

    Методы объекта Chart

    Рассмотрим основные методы, определяющие новое поведение объекта Chart:

    SubChartWizard([Source], [Gallery], [Format], [PlotBy], [CategoryLabels], [SeriesLabels], [HasLegend], [Title], [CategoryTitle], [ValueTitle], [Extra-Title])

    Этот метод позволяет построить или модифицировать существующую диаграмму. В отличие от мастера диаграмм (ChartWizard), который вызывается при построении диаграммы вручную, метод не является интерактивным, более того, он не позволяет задать все возможные свойства. С его помощью можно выполнить основную работу, а детали строятся с использованием других свойств и методов объекта Chart. Все параметры метода являются необязательными:

    1) Source – объект Range, содержащий исходные данные для построения новой диаграммы. Если параметр опущен, то метод позволяет отредактировать существующую диаграмму – либо выделенную диаграмму рабочего листа, либо диаграмму активного листа диаграмм;

    2) Gallery – задает тип диаграммы и может быть одной из следующих констант: xlArea, xlBar, xlColumn, xlLine, xlPie, xlRadar, xlXY-Scatter, xlCombination, xl3DArea, xl3DBar, xl3DColumn, xl3DLine, xl3DPie, xl3DSurface, xlDoughnut, или xlDefaultAutoFormat;

    3) Format – задает формат для данного типа диаграммы. Каждому типу диаграммы соответствует некоторое число возможных форматов. Параметр задает номер формата, по умолчанию выбирается первый формат данного типа;

    4) PlotBy – соответствует терминальному свойству PlotBy;

    5) CategoryLabels и SeriesLabels – целые, указывающие число строк или столбцов с метками категорий и рядов данных в области, заданной параметром Source. Указывать эти числа нужно на единицу меньше фактического значения;

    6) остальные параметры позволяют добавить легенду, задать название диаграммы и ее осей – они совпадают с соответствующими терминальными свойствами.

    Sub SetSourceData(source as range, [plotby]). Устанавливает источник данных диаграммы. Второй параметр соответствует терминальному свойству plotby.

    SubApplyCustomType(ChartTypeAsXlChartType, [typename]). Метод позволяет модифицировать диаграмму, применив к ней новый тип – стандартный или настраиваемый. Если этот тип стандартный, то тогда первый параметр полностью его определяет. Его возможные значения совпадают со значениями соответствующего терминального свойства charttype. Если же тип настраиваемый, то первый параметр должен иметь одно из следующих значений: xlbuiltin, xluserdefined или xlanygallery. В этом случае второй параметр задает имя типа диаграммы.

    Function Export(filename as string, [filtername], [interactive]) as boolean позволяет экспортировать диаграмму, преобразуя ее в графический формат. Первый параметр задает имя файла, в который будет записана диаграмма в графическом формате, второй – задает имя графического фильтра в том виде, как оно записано в системном регистре. Булев параметр interactive должен иметь значение true, если мы хотим вызвать диалоговое окно в процессе фильтрации. Функция export возвращает значение true в случае успешного завершения работы.

    Sub GetChartElement(x as long, y as long, elementid as long, argl as long, arg2 as long). Представьте себе, что пользователь щелкнул кнопку мыши где-то над диаграммой. Обработав это событие, можно получить координаты курсора мыши – x и y. Если теперь вызвать метод getchartelement с этими координатами, то он вернет значение параметра elementid – идентификатор элемента диаграммы и значения двух параметров, связанных с этим элементом. Конечно, параметры зависят от типа того элемента, чьи координаты x и y заданы.

    Function Location(where as xlchartlocation, [name]) as

    Chart. Передвигает диаграмму в новое местоположение. Параметр Where имеет следующие значения: xlLocationAsNewSheet, xlLocationAsObject или xlLocationAutomatic.

    В первом случае диаграмма помещается на новый лист диаграммы и параметр Name задает имя этого листа. Во втором случае диаграмма помещается как встроенный объект и Name задает имя рабочего листа.
    44. Способы отладки и тестирования программ

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

    1. Синтаксическая ошибка.Неправильное употребление синтаксических конструкций, например употребление оператора цикла For без то или Next.

    2. Семантическая ошибка.Нарушение семантики той или иной конструкции, например передача функции параметров, не соответствующих ее аргументам.

    3. Логическая ошибка.Нарушение логики программы, приводящее к неверному результату. Это наиболее трудный для "отлова" тип ошибки, ибо подобного рода ошибки, как правило, кроются в алгоритмах и требуют тщательного анализа и всестороннего тестирования.

    По шаговая отладка

    Тестирование программ и поиск ошибок Одним из способов тестирования программы является её запуск с различными исходными данными и наблюдение за правильностью её функционирования. (чем мы выше и занимались). Этот процесс заканчивается в том случае, когда программа корректно реагирует на все вводимые данные. Однако этот способ не эффективен для больших программ. В любом случае выбор тестовых данных для проверки корректности работы является достаточно важным. Выбор необходимых тестовых данных связан с большими трудностями, так как надо проверить все возможные пути выполнения программы для того, чтобы быть уверенным в отсутствии ошибок."


    45. Декомпозиция задач на подзадачи. Применение IDEF0.

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

    На этапе декомпозиции задачи на подзадачи следует придерживаться трех правил:

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

    2. каждая подзадача может быть решена независимо,

    3. полученные решения могут быть объединены вместе, позволяя решить исходную задачу.

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

    Пример. Группа авторов создает пьесу, причем каждый из них пишет текст для одного персонажа. Очевидно, что хотя каждый из авторов и справится со своей задачей, о смысле готового произведения говорить не приходится
    1   2   3   4


    написать администратору сайта