Основы программирования. Язык программирования VBA

Содержание

Слайд 2

Введение. Литература по курсу. Степанов А.Г., Мичурин С.В. Информатика и программирование.

Введение. Литература по курсу.

Степанов А.Г., Мичурин С.В. Информатика и программирование. Учебное

пособие/СПбГУАП. СПб., 2004. – 120 с.
Информатика. Применение программ пакета Microsoft Office. Учебно-методическое пособие. /Н.В. Зуева, Н.С. Медведева, О.И. Москалева, А.Г. Степанов. ГУАП, 2007.
Информатика. Программирование на языке VBA. Зуева Н.В. и др. Методические указания к выполнению лабораторных работ. ГУАП, 2007 г.
Информатика. Методические указания по выполнению курсовой работы. ГУАП, 2007.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 3

03.02.2017 20:56 09.03.03 Прикладная информатика Дополнительная литература по курсу Уокенбах Д.

03.02.2017 20:56

09.03.03 Прикладная информатика

Дополнительная литература по курсу

Уокенбах Д. Подробное руководство по

созданию формул в Excel 2002. : Пер. с англ. — М. : Издательский дом "Вильяме", 2002. – 624 с.
Гарнаев А. Ю. Самоучитель VВА. – СПб.: БХВ - Санкт-Петербург, 1999. – 512 с.
Малышев С.А. Самоучитель VBA. Как это делается в Word, Excel, Access. – СПб: Наука и техника, 2001. – 496 стр.
Visual Basic 6.0: Пер. с англ. – СПб.: БХВ-Петербург, 2002. – 992 стр.
Браун С. Visual Basic 5 с самого начала. – СПб: Питер, 1998. – 320 с.
Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++, 2-е изд. : Пер. с англ. – М.: «Издательство Бином», СПб.: «Невский диалект», 2000. – 560 с.
Слайд 4

1. Язык программирования VBA В разделе рассматривается: Элементарное взаимодействие Excel и

1. Язык программирования VBA

В разделе рассматривается:
Элементарное взаимодействие Excel и VBA
Отладка и

выполнение программы в среде VBA
Обмен данными между Excel и VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 5

1.1. Элементарное взаимодействие Excel и VBA В подразделе рассматривается: Создание и

1.1. Элементарное взаимодействие Excel и VBA

В подразделе рассматривается:
Создание и выполнение

макросов Excel
Разработка пользовательской таблицы средствами процессора Excel
Интегрированная среда разработки VBA
Типы записи ссылок в Excel
Анализ текста созданного макроса

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 6

1.1.1. Создание и выполнение макросов Excel Макросом обычно называют файл, хранящий

1.1.1. Создание и выполнение макросов Excel

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

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 7

Создание и выполнение макросов Excel 03.02.2017 20:56 09.03.03 Прикладная информатика

Создание и выполнение макросов Excel

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 8

Создание и выполнение макросов Excel Для создания макроса в Excel легче

Создание и выполнение макросов Excel

Для создания макроса в Excel легче всего

использовать автоматический режим его создания, вызываемый из главного меню системы командами СЕРВИС, Макрос.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 9

Создание и выполнение макросов Excel Если в меню СЕРВИС, Макрос выбрать

Создание и выполнение макросов Excel

Если в меню СЕРВИС, Макрос выбрать пункт

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 10

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

Создание и выполнение макросов Excel

По умолчанию система предлагает стандартное имя Макрос#.


Во избежание недоразумений старайтесь задавать собственные имена макросов, отличные от стандартных.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 11

Создание и выполнение макросов Excel Начиная с этого момента все действия

Создание и выполнение макросов Excel

Начиная с этого момента все действия с

рабочей книгой дополнительно записываются в файл макроса
Остановить запись макроса можно кнопкой Остановить запись дополнительно открывшейся панели инструментов или через аналогичный пункт главное меню СЕРВИС, Макрос.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 12

Создание и выполнение макросов Excel К записанному макросу можно обратиться через

Создание и выполнение макросов Excel

К записанному макросу можно обратиться через главное

меню

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 13

1.1.2. Разработка пользовательской таблицы средствами процессора Excel Мы предполагаем, что вы:

1.1.2. Разработка пользовательской таблицы средствами процессора Excel

Мы предполагаем, что вы:
в состоянии

придумать собственную пользовательскую таблицу, данные в которой организованы по строкам и столбцам, имеют вполне определенный практический смысл и требуют некой обработки, в частности, вычислений
знакомы со способами ее оформления (шрифт, фон, рамки)

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 14

Разработка пользовательской таблицы средствами процессора Excel 03.02.2017 20:56 09.03.03 Прикладная информатика Исходные данные

Разработка пользовательской таблицы средствами процессора Excel

03.02.2017 20:56

09.03.03 Прикладная информатика

Исходные данные

Слайд 15

Разработка пользовательской таблицы средствами процессора Excel 03.02.2017 20:56 09.03.03 Прикладная информатика Результаты программирования в Excel

Разработка пользовательской таблицы средствами процессора Excel

03.02.2017 20:56

09.03.03 Прикладная информатика

Результаты программирования в

Excel
Слайд 16

1.1.3. Интегрированная среда разработки VBA 03.02.2017 20:56 09.03.03 Прикладная информатика Запуск редактора VBA

1.1.3. Интегрированная среда разработки VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Запуск редактора VBA

Слайд 17

Интегрированная среда разработки VBA 03.02.2017 20:56 09.03.03 Прикладная информатика

Интегрированная среда разработки VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 18

1.1.4. Типы записи ссылок в Excel Необходимо принять во внимание существование

1.1.4. Типы записи ссылок в Excel

Необходимо принять во внимание существование двух

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 19

Типы записи ссылок в Excel При записи макросов Excel использует тип

Типы записи ссылок в Excel

При записи макросов Excel использует тип ссылки

R1C1.
В обозначении типа присутствуют первые буквы английских слов Row (строка) и Column (колонка).

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 20

Типы записи ссылок в Excel 03.02.2017 20:56 09.03.03 Прикладная информатика Использование

Типы записи ссылок в Excel

03.02.2017 20:56

09.03.03 Прикладная информатика

Использование стиля A1 позволяют

организовать относительную и абсолютную адресацию к ячейкам таблицы (за счет введения в строку символа $).
Слайд 21

Типы записи ссылок в Excel 03.02.2017 20:56 09.03.03 Прикладная информатика При

Типы записи ссылок в Excel

03.02.2017 20:56

09.03.03 Прикладная информатика

При использовании абсолютной адресации

после символов R и C указывается собственно номер строки и столбца. Так, например, ячейка $B$3 имеет адрес R3C2.

Обратите внимание на то, что, в отличие от типа A1, при использовании типа ссылок R1C1 сначала записывается строка, а потом столбец.

Слайд 22

Типы записи ссылок в Excel 03.02.2017 20:56 09.03.03 Прикладная информатика При

Типы записи ссылок в Excel

03.02.2017 20:56

09.03.03 Прикладная информатика

При использовании относительной адресации

в стиле R1C1 после обозначения строки или колонки в квадратных скобках указывается смещение по отношению к текущей ячейке.
Слайд 23

Типы записи ссылок в Excel 03.02.2017 20:56 09.03.03 Прикладная информатика Так,

Типы записи ссылок в Excel

03.02.2017 20:56

09.03.03 Прикладная информатика

Так, например, если данные

находятся в ячейке B3, а ссылка на нее программируется в ячейке А5, то в формуле она запишется как R[-2]C[1]

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

Слайд 24

Типы записи ссылок в Excel Соответственно запись R[2]C[-1] означает обращение к

Типы записи ссылок в Excel

Соответственно запись R[2]C[-1] означает обращение к ячейке

на две строки ниже и одну колонку левее (по отношению к активной ячейке A5 такая ячейка не существует).

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 25

1.1.5. Анализ текста созданного макроса 03.02.2017 20:56 09.03.03 Прикладная информатика Sub

1.1.5. Анализ текста созданного макроса

03.02.2017 20:56

09.03.03 Прикладная информатика

Sub Расчет_заработной_платы()
'
' Расчет _заработной_платы

Макрос
' Макрос записан 01.12.2005 (Администратор)
'
'
Range("C2").Select
ActiveCell.FormulaR1C1 = "=RC[-1]*R7C3"
Range("D2").Select
ActiveCell.FormulaR1C1 = "=RC[-2]-RC[-1]"
Range("C2:D2").Select
Selection.AutoFill Destination:=Range("C2:D5"), Type:=xlFillDefault
Range("C6").Select
ActiveCell.FormulaR1C1 = "=SUM(R[-4]C:R[-1]C)"
Range("D6").Select
ActiveCell.FormulaR1C1 = "=SUM(R[-4]C:R[-1]C)"
End Sub
Слайд 26

Анализ текста созданного макроса 03.02.2017 20:56 09.03.03 Прикладная информатика

Анализ текста созданного макроса

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 27

Анализ текста созданного макроса Range (диапазон). Возникает при выделении ActiveCell (активная

Анализ текста созданного макроса

Range (диапазон). Возникает при выделении
ActiveCell (активная ячейка). Возвращает

объект Range
FormulaR1C1. Свойство, возвращающее или задающее формулу типа R1C1 в активную ячейку
Selection (выделение). Свойство, возвращающее выделенный объект
AutoFill (автозаполнение). Метод, осуществляющий заполнение выделенных ячеек

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 28

1.1.5. Анализ текста созданного макроса 03.02.2017 20:56 09.03.03 Прикладная информатика Sub

1.1.5. Анализ текста созданного макроса

03.02.2017 20:56

09.03.03 Прикладная информатика

Sub Расчет_заработной_платы()
'
' Расчет _заработной_платы

Макрос
' Макрос записан 01.12.2005 (Администратор)
'
'
Range("C2").Select
ActiveCell.FormulaR1C1 = "=RC[-1]*R7C3"
Range("D2").Select
ActiveCell.FormulaR1C1 = "=RC[-2]-RC[-1]"
Range("C2:D2").Select
Selection.AutoFill Destination:=Range("C2:D5"), Type:=xlFillDefault
Range("C6").Select
ActiveCell.FormulaR1C1 = "=SUM(R[-4]C:R[-1]C)"
Range("D6").Select
ActiveCell.FormulaR1C1 = "=SUM(R[-4]C:R[-1]C)"
End Sub
Слайд 29

1.2. Отладка и выполнение программы в среде VBA В подразделе рассматривается:

1.2. Отладка и выполнение программы в среде VBA

В подразделе рассматривается:


Назначение окон интегрированной среды разработки VBA
Выполнение программы в автоматическом режиме
Выполнение программы в режиме отладки

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 30

1.2.1. Назначение окон интегрированной среды разработки VBA 03.02.2017 20:56 09.03.03 Прикладная информатика

1.2.1. Назначение окон интегрированной среды разработки VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 31

Назначение окон интегрированной среды разработки VBA Окно проектов содержит список форм

Назначение окон интегрированной среды разработки VBA

Окно проектов содержит список форм и

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 32

Назначение окон интегрированной среды разработки VBA Окно редактора кодов служит для

Назначение окон интегрированной среды разработки VBA

Окно редактора кодов служит для редактирования

программного кода приложения. Для каждой формы и каждого модуля кода создается свое окно.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 33

Назначение окон интегрированной среды разработки VBA Окно свойств перечисляет установленные свойства

Назначение окон интегрированной среды разработки VBA

Окно свойств перечисляет установленные свойства выбранного

объекта

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 34

Назначение окон интегрированной среды разработки VBA 03.02.2017 20:56 09.03.03 Прикладная информатика

Назначение окон интегрированной среды разработки VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Окно локальных переменных

предназначено для контроля за значениями переменных во время отладки программы
Слайд 35

Назначение окон интегрированной среды разработки VBA Кроме перечисленных интегрированная среда разработки

Назначение окон интегрированной среды разработки VBA

Кроме перечисленных интегрированная среда разработки содержит

окна
тестирования Immediate (немедленное выполнение), позволяющее изменять значения переменных программы в момент ее выполнения и даже вводить дополнительные операторы;
просмотра мгновенных значений Watch, позволяющее вести контроль выбранной переменной программы;
некоторые другие.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 36

1.2.2. Выполнение программы в автоматическом режиме 03.02.2017 20:56 09.03.03 Прикладная информатика

1.2.2. Выполнение программы в автоматическом режиме

03.02.2017 20:56

09.03.03 Прикладная информатика

Run, Run Sub/User

Form
Run, Run Macro
Слайд 37

1.2.3. Выполнение программы в режиме отладки 03.02.2017 20:56 09.03.03 Прикладная информатика

1.2.3. Выполнение программы в режиме отладки

03.02.2017 20:56

09.03.03 Прикладная информатика
Debug, Step Into


Debug, Step Over
Debug, Step Out
Debug, Run To Cursor
Debug, Toggle Breakpoint
Слайд 38

1.3. Обмен данными между Excel и VBA В подразделе рассматривается: Типы

1.3. Обмен данными между Excel и VBA

В подразделе рассматривается:
Типы

данных VBA
Идентификаторы в VBA
Объявление переменных в VBA
Массивы в VBA
Присваивание значения переменной
Использование свойства Cells() для обмена данными между Excel и VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 39

1.3.1. Типы данных VBA Тип данных ‑ способ внутреннего представления данных

1.3.1. Типы данных VBA

Тип данных ‑ способ внутреннего представления данных в

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 40

Типы данных VBA 03.02.2017 20:56 09.03.03 Прикладная информатика Типы данных Excel

Типы данных VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Типы данных Excel

Слайд 41

Типы данных VBA 03.02.2017 20:56 09.03.03 Прикладная информатика

Типы данных VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 42

Типы данных VBA 03.02.2017 20:56 09.03.03 Прикладная информатика

Типы данных VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 43

Типы данных VBA 03.02.2017 20:56 09.03.03 Прикладная информатика

Типы данных VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 44

Типы данных VBA 03.02.2017 20:56 09.03.03 Прикладная информатика

Типы данных VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 45

Type (определяемый пользователем). Определяется элементами типа. Диапазон каждого элемента определяется его

Type (определяемый пользователем). Определяется элементами типа. Диапазон каждого элемента определяется его типом

данных
Type Запись_Ведомости
Фамилия_И_О As String
Начислено_Ведомость As Currency
Налог_Ведомость As Currency
К_выдаче_Ведомость As Currency
End Type

Типы данных VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 46

1.3.2. Идентификаторы в VBA Идентификатором называется символическое имя ячейки памяти. Каждый

1.3.2. Идентификаторы в VBA

Идентификатором называется символическое имя ячейки памяти.
Каждый язык программирования

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 47

Идентификаторы в VBA В языке VBA имеются следующие ограничения на имена:

Идентификаторы в VBA

В языке VBA имеются следующие ограничения на имена:
Длина имени

не должна превышать 255 символов.
Имя должно начинаться с буквы.
Имя не может содержать точек и символов %, &, !, #, @, $.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 48

Идентификаторы в VBA В языке VBA имеются следующие ограничения на имена:

Идентификаторы в VBA

В языке VBA имеются следующие ограничения на имена:
Буквы рассматриваются

инвариантно по отношению к регистру, то есть имя Aa и aA есть одно и то же имя.
Допускается использование символов латыни и кириллицы.
Совпадения имен идентификаторов с так называемыми ключевыми словами не допускается.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 49

Идентификаторы в VBA Использование символов кириллицы в именах позволяет программисту создавать

Идентификаторы в VBA

Использование символов кириллицы в именах позволяет программисту создавать осмысленные

имена идентификаторов, что облегчает чтение и отладку программы

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 50

Идентификаторы в VBA Возможные варианты идентификаторов языка VBA: I, j, Name,

Идентификаторы в VBA

Возможные варианты идентификаторов языка VBA:
I, j, Name, Переменная,

Результат_вычислений.
Еще варианты записи идентификаторов:
A%, B&, C!, D#, E@, F$.
В этом случае символы %, &, !, #, @, $ не входят в состав идентификатора и используются в качестве специального признака типа данных

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 51

1.3.3. Объявление переменных в VBA Dim I As Integer, Name, j

1.3.3. Объявление переменных в VBA

Dim I As Integer, Name, j As

_ Integer, Переменная As _ Integer, GGG As Integer
Обратите внимание на то, что если вы не указываете явно тип переменной, то по умолчанию она имеет тип Variant. Так, в рассмотренном выше примере такой тип имеет переменная Name

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 52

Объявление переменных в VBA Обрабатывая файл исходного текста программы компилятор создает

Объявление переменных в VBA

Обрабатывая файл исходного текста программы компилятор создает двоичный

файл, который впоследствии после дополнительной обработки представляет собой последовательность кодов программы, выполняемой процессором
Там же в программе отводится область для хранения данных

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 53

Объявление переменных в VBA Строка объявления переменных обрабатывается компилятором. Результат обработки

Объявление переменных в VBA

Строка объявления переменных обрабатывается компилятором. Результат обработки –

резервирование ячеек памяти в двоичном файле
Адреса ячеек определяются как смещение по отношению к первому байту исполняемой программы
После загрузки файла в ОЗУ адреса ячеек получают абсолютные значения

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 54

1.3.4. Массивы в VBA Практика программирования широко использует переменные, обращение к

1.3.4. Массивы в VBA

Практика программирования широко использует переменные, обращение к которым

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 55

Массивы в VBA Массив ‑ последовательно упорядоченные в памяти данные одного

Массивы в VBA

Массив ‑ последовательно упорядоченные в памяти данные одного типа


Каждый массив имеет имя
Имя массива – идентификатор, за которым закреплен свой адрес ОЗУ

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 56

Массивы в VBA 03.02.2017 20:56 09.03.03 Прикладная информатика Каждый элемент представляет

Массивы в VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Каждый элемент представляет собой ячейку или

последовательность ячеек памяти в зависимости от используемого типа данных
Количество таких ячеек определяет размер массива
Слайд 57

Массивы в VBA Объявления массивов: Dim YY(25) Объявляется одномерный массив из

Массивы в VBA

Объявления массивов:
Dim YY(25)
Объявляется одномерный массив из 26 элементов. Начальный

(базовый) индекс принят по умолчанию равным 0.
Dim ZZ(3,10) As Single
Объявляется двумерный массив ZZ типа Single, первый индекс которого меняется в диапазоне от 0 до 3, а второй в диапазоне от 0 до 10.
Dim SS(-3 To 3,1 To 10) As Integer

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 58

Массивы в VBA Для обращения к ячейке памяти или элементу массива

Массивы в VBA

Для обращения к ячейке памяти или элементу массива достаточно

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 59

Массивы в VBA Dim SS(-3 To 3,1 To 10) As Integer

Массивы в VBA

Dim SS(-3 To 3,1 To 10) As Integer
Обращение к

элементу массива в тексте программы с явным указанием номеров элементов: SS(-2,5)
Если переменная Name содержит число –2, а ячейка Переменная число 5, то обращение SS(Name, Переменная) полностью эквивалентно предыдущему.
Если в процессе предыдущих вычислений переменная Name примет значение –4, а мы попытаемся выполнить SS(Name, Переменная), то произойдет обращение к несуществующему элементу массива и возникнет ошибка выхода индекса за границы массива.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 60

Массивы в VBA Иногда приходится создавать массивы, размер которых невозможно определить

Массивы в VBA

Иногда приходится создавать массивы, размер которых невозможно определить на

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 61

Массивы в VBA Dim Начислено() As Currency, i As Integer i

Массивы в VBA

Dim Начислено() As Currency, i As Integer
i = 10
ReDim

Начислено(1 To i)
Массив Начислено() первоначально был объявлен как массив неопределенной длины. Инструкция ReDim изменила массив, причем память под него была отведена в момент выполнения программы.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 62

1.3.5. Присваивание значения переменной Оператор присваивания обеспечивает занесение информации в ячейки

1.3.5. Присваивание значения переменной

Оператор присваивания обеспечивает занесение информации в ячейки памяти,

связанные с идентификатором и имеет символ равенства (=).
i = 10
В отличие обычного равенства, которое выполняется всегда, оператор присваивания имеет динамические свойства (зависит от времени).

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 63

Оператор присваивания При выполнении оператора присваивания результат вычислений правой части оператора

Оператор присваивания

При выполнении оператора присваивания результат вычислений правой части оператора заносится

в ячейку памяти, указанную слева от знака равенства.
Содержимое ячейки, указанной слева от символа =, имело одно значение до выполнения оператора и другое после его выполнения.
Задавая последовательность операторов присваивания мы можем программировать запись данных в ячейки памяти ЭВМ.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 64

1.3.6. Использование свойства Cells() для обмена данными между Excel и VBA

1.3.6. Использование свойства Cells() для обмена данными между Excel и VBA

Отдельную

проблему представляет прямая и обратная передача данных из таблицы Excel в ячейки памяти, объявленные в программе, написанной на VBA.
Автоматически созданный макрос непосредственно манипулирует с ячейками таблицы используя стили ссылки на ячейки в Excel: A1 и R1C1.
Такой прием может быть использован и в рабочей программе, однако в этом случае ее модификация и использование существенно затруднены.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 65

Использование свойства Cells() для обмена данными между Excel и VBA Гораздо

Использование свойства Cells() для обмена данными между Excel и VBA

Гораздо предпочтительнее

использовать свойство Cells() стандартного объекта Excel Range.
Сам объект представляет собой ячейку, столбец, строку или выделенный диапазон листа Excel.
Свойство Cells() позволяет непосредственно обратиться к объекту Excel по номеру строки и колонки.
Поскольку это свойство установлено по умолчанию для рабочего листа Excel, то его можно использовать без дополнительных указаний.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 66

Использование свойства Cells() для обмена данными между Excel и VBA Dim

Использование свойства Cells() для обмена данными между Excel и VBA
Dim ddd,

x, y
ddd= Cells(3,7)
X=3
Y=7
Cells(x,y)=“Сумма”

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 67

Использование свойства Cells() для обмена данными между Excel и VBA Если

Использование свойства Cells() для обмена данными между Excel и VBA

Если запись

свойства стоит слева от оператора присваивания, то производится запись данных в ячейку таблицы, если справа, то считывание значения из ячейки таблицы.
Кроме собственно записи данных свойство Cells() в сочетании со свойствами других объектов (Font, Color и т.п.) позволяет задавать параметры шрифта, его цвет, фон и так далее.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 68

Использование свойства Cells() для обмена данными между Excel и VBA Для

Использование свойства Cells() для обмена данными между Excel и VBA

Для изучения

этих возможностей целесообразно ознакомиться с описанием соответствующих свойств и объектов в литературе, воспользоваться Help-системой или, что проще всего, запустить режим записи макроса в Ехсеl, выполнить, например, установку цвета и изучить текст полученного макроса.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 69

2. Операции и операторы VBA В разделе рассматривается: Операции VBA Операторы

2. Операции и операторы VBA

В разделе рассматривается:
Операции VBA
Операторы VBA

03.02.2017 20:56

09.03.03

Прикладная информатика
Слайд 70

2.1 Операции VBA В подразделе рассматривается: Арифметические операции Операции сравнения Логические

2.1 Операции VBA

В подразделе рассматривается:
Арифметические операции
Операции сравнения
Логические операции
Операции со строками

03.02.2017

20:56

09.03.03 Прикладная информатика

Слайд 71

2.1.1. Арифметические операции 03.02.2017 20:56 09.03.03 Прикладная информатика

2.1.1. Арифметические операции

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 72

2.1.2. Операции сравнения 03.02.2017 20:56 09.03.03 Прикладная информатика

2.1.2. Операции сравнения

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 73

2.1.3. Логические операции 03.02.2017 20:56 09.03.03 Прикладная информатика

2.1.3. Логические операции

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 74

2.1.4. Операции со строками 03.02.2017 20:56 09.03.03 Прикладная информатика

2.1.4. Операции со строками

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 75

2.2. Операторы VBA В подразделе рассматривается: Правила записи операторов в языке

2.2. Операторы VBA

В подразделе рассматривается:
Правила записи операторов в языке VBA
Оператор

присваивания Let
Условный оператор
Оператор ветвления
Семейство операторов For
Семейство операторов Do

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 76

Операторы VBA Оператором называется самостоятельная конструкция языка программирования, которая может быть

Операторы VBA

Оператором называется самостоятельная конструкция языка программирования, которая может быть отдельно

откомпилирована и выполнена в виде заранее определенной последовательности кодов процессора

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 77

2.2.1. Правила записи операторов в языке VBA Операторы записываются на отдельных

2.2.1. Правила записи операторов в языке VBA

Операторы записываются на отдельных строчках

и могут не нумероваться.
Для размещения нескольких операторов на одной строке между ними необходимо поставить символ двоеточие ( : ). Этот же символ используется для обозначения меток.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 78

Правила записи операторов в языке VBA Для переноса продолжения оператора на

Правила записи операторов в языке VBA

Для переноса продолжения оператора на следующую

строку используется комбинация символов пробел знак подчеркивания ( _). Нельзя разбивать переносом выражения и строки. Допускается не более семи переносов строк одного оператора.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 79

2.2.2. Оператор присваивания Let Оператор присваивания Let в VBA в момент

2.2.2. Оператор присваивания Let

Оператор присваивания Let в VBA в момент выполнения

записывает в переменную, указанную слева от символа равенства некое значение, указанное справа от символа равенства, результат вычисления функции и т.п.
Формат оператора
Let Переменная=Значение

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 80

Оператор присваивания Let Существует сокращенная форма записи оператора Let при которой

Оператор присваивания Let

Существует сокращенная форма записи оператора Let при которой ключевое

слово опускается и сохраняется только символ равенства
Сокращенный формат оператора
Переменная=Значение

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 81

2.2.3. Условный оператор 03.02.2017 20:56 09.03.03 Прикладная информатика

2.2.3. Условный оператор

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 82

Условный оператор Формат условного оператора If Условие Then [Операторы] [Else Операторы_Else]

Условный оператор

Формат условного оператора
If Условие Then [Операторы] [Else Операторы_Else] End If
Пример

программы с условным оператором
Dim Таблица(10), i, extr
i = 5
extr = -20
If Таблица(i) > extr Then
extr = Таблица(i)
Else
End If

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 83

2.2.4. Оператор ветвления 03.02.2017 20:56 09.03.03 Прикладная информатика

2.2.4. Оператор ветвления

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 84

Оператор ветвления Формат оператора ветвления Select Case Выражение [Case Значение1 [Операторы1]]

Оператор ветвления

Формат оператора ветвления Select Case Выражение
[Case Значение1 [Операторы1]]
[Case ЗначениеN

[ОператорыN]]
[Case Else [ОператорыElse]]
End Select

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 85

Оператор ветвления Пример программы с оператором ветвления Dim РежимРаботы As String,

Оператор ветвления

Пример программы с оператором ветвления
Dim РежимРаботы As String, День As

Integer
День = 2
Select Case День
Case 1
РежимРаботы = "Прием документов"
Case 2, 3, 4
РежимРаботы = "Работа с документами"
Case 5
РежимРаботы = "Выдача документов"
Case 6, 7
РежимРаботы = "Выходные дни"
Case Else
РежимРаботы = "Ошибка задания номера дня"
End Select

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 86

2.2.5. Операторы цикла В пункте рассматривается: Семейство операторов For Семейство операторов

2.2.5. Операторы цикла

В пункте рассматривается:
Семейство операторов For
Семейство операторов Do

03.02.2017 20:56

09.03.03

Прикладная информатика
Слайд 87

2.2.5.1. Семейство операторов For 03.02.2017 20:56 09.03.03 Прикладная информатика

2.2.5.1. Семейство операторов For

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 88

Семейство операторов For Форматы оператора For Счетчик=Начало To Конец [Step Шаг]

Семейство операторов For

Форматы оператора
For Счетчик=Начало To Конец [Step Шаг]
[Операторы]
[Exit For]
[Операторы]
Next

[Счетчик]
For Each Элемент In Группа
[Операторы]
[Exit For]
[Операторы]
Next [Элемент]

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 89

Семейство операторов For Пример программы с оператором цикла for Dim i

Семейство операторов For

Пример программы с оператором цикла for
Dim i As

Integer, AA(10) As Double, _
BB(10) As Double, j As Variant
For i = 1 To 10
AA(i) = i
Next i
For Each j In AA
BB(j) = AA(j)
Next j

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 90

2.2.5.2. Семейство операторов Do 03.02.2017 20:56 09.03.03 Прикладная информатика

2.2.5.2. Семейство операторов Do

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 91

Семейство операторов Do 03.02.2017 20:56 09.03.03 Прикладная информатика

Семейство операторов Do

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 92

Семейство операторов Do Do [While Условие] [Операторы] [Exit Do] [Операторы] Loop

Семейство операторов Do
Do [While Условие]
[Операторы]
[Exit Do]
[Операторы]
Loop
Do
[Операторы]
[Exit Do]
[Операторы]
Loop [While Условие]

03.02.2017 20:56

09.03.03 Прикладная

информатика

Операторы While выполняются до тех пор,
пока Условие = True.

или

Слайд 93

Семейство операторов Do Пример программы с оператором цикла While Dim i

Семейство операторов Do

Пример программы с оператором цикла While
Dim i As Integer,

AA(10) As Double, _
BB(10) As Double, j As Variant
i = 1
Do While i <= 10
AA(i) = i
i = i + 1
Loop
j = 1
Do
BB(j) = AA(j)
j = j + 1
Loop While j <= 10

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 94

Семейство операторов Do Do [Until Условие] [Операторы] [Exit Do] [Операторы] Loop

Семейство операторов Do

Do [Until Условие]
[Операторы]
[Exit Do]
[Операторы]
Loop

Do
[Операторы]
[Exit Do]
[Операторы]
Loop [Until Условие]

03.02.2017 20:56

09.03.03 Прикладная

информатика

Операторы Until выполняются до тех пор, пока Условие = False

или

Слайд 95

Семейство операторов Do Пример программы с оператором цикла Until Dim i

Семейство операторов Do

Пример программы с оператором цикла Until
Dim i As Integer,

AA(10) As Double, _
BB(10) As Double, j As Variant
i = 1
Do Until i > 10
AA(i) = i
i = i + 1
Loop
j = 1
Do
BB(j) = AA(j)
j = j + 1
Loop Until j > 10

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 96

Семейство операторов Do Оператор выполняется, пока Условие = True While Условие

Семейство операторов Do

Оператор выполняется, пока Условие = True
While Условие
[Операторы]
Wend

03.02.2017 20:56

09.03.03 Прикладная

информатика
Слайд 97

3. Процедуры и функции В подразделе рассматривается: Процедуры в VBA Функции

3. Процедуры и функции

В подразделе рассматривается:
Процедуры в VBA
Функции в VBA
Возврат

значений из процедур и функций в вызывающую программу через список формальных параметров
Встроенные функции VBA
Функции Excel, определенные пользователем

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 98

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

3.1. Процедуры в VBA

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

задачи.
Каждая процедура имеет имя. Это имя является идентификатором процедуры.
Макрос Excel представляет собой процедуру VBA.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 99

Процедуры в VBA Каждая процедура может быть вызвана по имени. Если

Процедуры в VBA

Каждая процедура может быть вызвана по имени. Если вызов

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 100

Процедуры в VBA Формат описания процедуры: [Private или Public] [Static] Sub

Процедуры в VBA

Формат описания процедуры:
[Private или Public] [Static] Sub Имя [(СписокАргументов)]
[Операторы]
[Exit

Sub]
[Операторы]
End Sub

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 101

Процедуры в VBA Формат описания списка аргументов: Optional - необязательный элемент.

Процедуры в VBA

Формат описания списка аргументов:
Optional - необязательный элемент. Должен иметь

тип Variant. Все последующие элементы списка должны иметь такой же ключ и тип.

03.02.2017 20:56

09.03.03 Прикладная информатика

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию]

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию]

Слайд 102

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию] Процедуры в

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию]

Процедуры в VBA

Формат

описания списка аргументов:
Способ передачи параметров
ByVal –по значению, ByRef – по ссылке (по умолчанию)

03.02.2017 20:56

09.03.03 Прикладная информатика

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию]

Слайд 103

Процедуры в VBA Формат описания списка аргументов: ParamArray – неизвестное число

Процедуры в VBA

Формат описания списка аргументов:
ParamArray – неизвестное число параметров. Может

быть использовано только с последним элементом списка формальных параметров и позволяет передавать динамически объявляемый массив

03.02.2017 20:56

09.03.03 Прикладная информатика

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию]

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию]

Слайд 104

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию] Процедуры в

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию]

Процедуры в VBA

Формат

описания списка аргументов:
ИмяПеременной[()] - аргумент процедуры (обычная переменная или массив). Идентификатор, имеющий смысл формального параметра процедуры. Может быть несколько аргументов.

03.02.2017 20:56

09.03.03 Прикладная информатика

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию]

Слайд 105

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию] Процедуры в

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию]

Процедуры в VBA

Формат

описания списка аргументов:
[As Тип] - тип данных аргумента

03.02.2017 20:56

09.03.03 Прикладная информатика

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию]

Слайд 106

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию] Процедуры в

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию]

Процедуры в VBA

Формат

описания списка аргументов:
[=поУмолчанию] - значение аргумента по умолчанию

03.02.2017 20:56

09.03.03 Прикладная информатика

[Optional] [ByVal или ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию]

Слайд 107

Процедуры в VBA После заголовка процедуры следует конечное число обычных операторов

Процедуры в VBA

После заголовка процедуры следует конечное число обычных операторов языка

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 108

Процедуры в VBA Пример процедуры: Sub ПримерПроцедуры(ByVal День As Integer, _

Процедуры в VBA

Пример процедуры:
Sub ПримерПроцедуры(ByVal День As Integer, _
ByRef РежимРаботы As

String)
Select Case День
Case 1
РежимРаботы = "Прием документов"
Case 2, 3, 4, 5
РежимРаботы = "Выдача документов"
Case Else
РежимРаботы = "Выходные дни"
End Select
End Sub

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 109

Процедуры в VBA Пример вызывающей процедуры: Sub ДемонстрацияПримераВызоваПроцедуры() Dim a As

Процедуры в VBA

Пример вызывающей процедуры:
Sub ДемонстрацияПримераВызоваПроцедуры()
Dim a As Integer, b As

Integer , _
s As String, ss As String
a = 1
Call ПримерПроцедуры(a, s)
b = 6
ПримерПроцедуры b, ss
End Sub

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 110

Процедуры в VBA Аргументами процедуры в момент ее описания являются так

Процедуры в VBA

Аргументами процедуры в момент ее описания являются так называемые

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 111

3.2. Функции в VBA Функцией называется вызываемая через оператор присваивания самостоятельная

3.2. Функции в VBA

Функцией называется вызываемая через оператор присваивания самостоятельная программа,

предназначенная для решения определенной задачи.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 112

Функции в VBA [Public или Private] [Static] Function Имя [(СписокАргументов)] [As

Функции в VBA

[Public или Private] [Static] Function Имя [(СписокАргументов)] [As Тип]
[Операторы]
[Имя=Выражение]
[Exit

Function]
[Операторы]
[Имя=Выражение]
End Function

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 113

Функции в VBA Формат описания списка аргументов: 03.02.2017 20:56 09.03.03 Прикладная

Функции в VBA

Формат описания списка аргументов:

03.02.2017 20:56

09.03.03 Прикладная информатика

[Optional] [ByVal или

ByRef] [ParamArray] ИмяПеременной[()] [As Тип] [=поУмолчанию]
Слайд 114

Функции в VBA 03.02.2017 20:56 09.03.03 Прикладная информатика Function ПримерФункции(ByVal День

Функции в VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Function ПримерФункции(ByVal День As Integer) As

String
Dim РежимРаботы As String
Select Case День
Case 1
РежимРаботы = "Прием документов"
Case 2, 3, 4, 5
РежимРаботы = "Выдача документов"
Case Else
РежимРаботы = "Выходные дни"
End Select
ПримерФункции=РежимРаботы
End Function

Sub ДемонстрацияПримераВызоваФункции()
Dim a As Integer, s As String
a = 1
S = ПримерФункции (a)
b = 6
End Sub

Слайд 115

3.3. Возврат значений из процедур и функций в вызывающую программу через

3.3. Возврат значений из процедур и функций в вызывающую программу через

список формальных параметров

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 116

Возврат значений из процедур и функций в вызывающую программу через список

Возврат значений из процедур и функций в вызывающую программу через список

формальных параметров

Option Explicit
Type Запись_Ведомости ‘Определение типа данных, заданного пользователем
Фамилия_И_О As String
Начислено_Ведомость As Currency
Налог_Ведомость As Currency
К_выдаче_Ведомость As Currency
End Type
'…………………………………………………………………………………………….
' Фрагмент программы вызова рассматриваемой функции Расчет_Зарплаты
Dim Ведомость(4) As Запись_Ведомости , j As Integer ‘Объявление массива структур
j = 3
Ведомость(j).Начислено_Ведомость = 1000
'Вызов функции Расчет_Зарплаты
Ведомость(j).К_выдаче_Ведомость = _
Расчет_Зарплаты(Ведомость(j).Начислено_Ведомость, 0.12, _
Ведомость(j).Налог_Ведомость)
'После завершения работы функции ячейка Ведомость(j).К_выдаче_Ведомость
'содержит результаты расчета суммы к выдаче, а в ячейке
'Ведомость(j).Налог_Ведомость находятся результаты расчета величины
'подоходного налога
'…………………………………………………………………………………………….
Private Function Расчет_Зарплаты(ByVal Начислено As _
Currency, ByVal Ставка_налога As Double, _
ByRef Подоходный_налог As Currency) As Currency
'Формальный параметр Подоходный_налог также используется для возврата результатов вычислений в вызывающую программу.
Подоходный_налог = Начислено * Ставка_налога
Расчет_Зарплаты = Начислено - Подоходный_налог
End Function

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 117

3.4. Встроенные функции VBA Перечень встроенных функций VBA приведен в Help-системе

3.4. Встроенные функции VBA

Перечень встроенных функций VBA приведен в Help-системе
Вызов Help-системы

производится клавишей F1

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 118

Встроенные функции VBA 03.02.2017 20:56 09.03.03 Прикладная информатика

Встроенные функции VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 119

3.5. Функции Excel, определенные пользователем Функция, определенная пользователем Public Function Расчет_налога(Начислено

3.5. Функции Excel, определенные пользователем

Функция, определенная пользователем
Public Function Расчет_налога(Начислено As Integer)

Расчет_налога = Начислено * 0.12
End Function

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 120

4. Классы и объекты в языке VBA В подразделе рассматривается: Объекты

4. Классы и объекты в языке VBA

В подразделе рассматривается:
Объекты и классы

как конструкции языка VBA
Создание пользовательского класса
Создание объекта на основе класса

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 121

4.1. Объекты и классы как конструкции языка VBA Объектно-ориентированное программирование -

4.1. Объекты и классы как конструкции языка VBA

Объектно-ориентированное программирование - технология

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 122

Объекты и классы как конструкции языка VBA Класс – это определенный

Объекты и классы как конструкции языка VBA

Класс – это определенный пользователем

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 123

Объекты и классы как конструкции языка VBA Использование технологии классов и

Объекты и классы как конструкции языка VBA

Использование технологии классов и объектов

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 124

Объекты и классы как конструкции языка VBA Кроме указанного, у программиста

Объекты и классы как конструкции языка VBA

Кроме указанного, у программиста появляется

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 125

Объекты и классы как конструкции языка VBA Пользовательские классы могут быть

Объекты и классы как конструкции языка VBA

Пользовательские классы могут быть созданы

непосредственно программистом
Библиотечные классы описаны в Help – системе или в литературе. Каждая программная система пакета Microsoft Office имеет собственный набор библиотечных классов

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 126

4.2. Создание пользовательского класса Структура подраздела: Общая структура модуля класса Описание

4.2. Создание пользовательского класса

Структура подраздела:
Общая структура модуля класса
Описание переменных класса
Описание свойств

класса
Описание методов класса
Описание процедур создания и удаления объектов класса
Библиотечные классы VBA и связанные с ними события

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 127

4.2.1. Общая структура модуля класса Для создания класса используется специальный модуль

4.2.1. Общая структура модуля класса

Для создания класса используется специальный модуль проекта

VBA, который называется модуль класса (Class Modules). Он создается командой Вставка (Insert) главного меню VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 128

Общая структура модуля класса Имя модуля класса совпадает с именем создаваемого

Общая структура модуля класса

Имя модуля класса совпадает с именем создаваемого класса
В

программе может использоваться несколько классов

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 129

Общая структура модуля класса Типовая структура содержания модуля класса имеет следующий

Общая структура модуля класса

Типовая структура содержания модуля класса имеет следующий вид:
блок

описания переменных класса;
блок описания процедур создания и удаления объектов класса;
блок описания свойств класса;
блок описания методов класса.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 130

Общая структура модуля класса 03.02.2017 20:56 09.03.03 Прикладная информатика Типовая структура содержания модуля класса

Общая структура модуля класса

03.02.2017 20:56

09.03.03 Прикладная информатика

Типовая структура содержания модуля класса

Слайд 131

Общая структура модуля класса 03.02.2017 20:56 09.03.03 Прикладная информатика

Общая структура модуля класса

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 132

Общая структура модуля класса Модуль класса содержит описание структуры данных объекта

Общая структура модуля класса

Модуль класса содержит описание структуры данных объекта и

коды общих для всех объектов функций и процедур

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 133

4.2.2. Описание переменных класса Для описания переменных используется обычный оператор Dim

4.2.2. Описание переменных класса

Для описания переменных используется обычный оператор Dim
Используется синтаксис

и правила объявления переменных языка VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 134

Описание переменных класса Основное отличие объявления переменных класса от переменных обычной

Описание переменных класса

Основное отличие объявления переменных класса от переменных обычной программы

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 135

Описание переменных класса Если на основе модуля класса создается несколько объектов,

Описание переменных класса

Если на основе модуля класса создается несколько объектов, то

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 136

Описание переменных класса Многократное создание объектов приводит к многократному резервированию памяти.

Описание переменных класса

Многократное создание объектов приводит к многократному резервированию памяти. Поэтому

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 137

4.2.3 Определение процедур создания и удаления объектов класса При создании нового

4.2.3 Определение процедур создания и удаления объектов класса

При создании нового объекта

класса каждый раз автоматически выполнится процедура
Sub Class_Initialize()
Программируя эту процедуру можно задать последовательность действий, которая будет выполняться с новым объектом. К числу таких действий могут относиться, например, задание размеров динамических массивов, установка начальных значений переменных и т.п.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 138

Определение процедур создания и удаления объектов класса При удалении объекта класса

Определение процедур создания и удаления объектов класса

При удалении объекта класса каждый

раз автоматически выполнится процедура
Sub Class_Terminate ()
Программируя эту процедуру можно задать последовательность действий, которая будет выполняться перед удалением объекта. К числу таких действий может быть отнесен, например, запрос о необходимости сохранения результатов работы на диске и собственно выполнение такого сохранения при положительном ответе оператора

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 139

4.2.4 Определение свойств класса Свойства классов задаются в виде набора функций

4.2.4 Определение свойств класса

Свойства классов задаются в виде набора функций

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 140

Определение свойств класса Формат функции, позволяющей задавать значение переменным класса (задать

Определение свойств класса

Формат функции, позволяющей задавать значение переменным класса
(задать значение

свойства)
[Public | Private] [Static] Property Let Имя [(Список_аргументов)]
[инструкции]
[Exit Property]
[инструкции]
End Property

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 141

Определение свойств класса Формат функции, позволяющей считывать значение переменных класса (вернуть

Определение свойств класса

Формат функции, позволяющей считывать значение переменных класса
(вернуть значение

свойства)
[Public | Private] [Static] Property Get Имя [(Список_аргументов)] As Тип
[инструкции]
[Exit Property]
[инструкции]
[Имя = выражение]
End Property

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 142

Определение свойств класса Формат функции, позволяющей задать ссылку на объект [Public

Определение свойств класса

Формат функции, позволяющей задать ссылку на объект
[Public

| Private] [Static] Property Set имя [(Список_аргументов)]
[инструкции]
[Exit Property]
[инструкции]
End Property

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 143

Определение свойств класса 03.02.2017 20:56 09.03.03 Прикладная информатика

Определение свойств класса

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 144

Определение свойств класса Функции свойств могут иметь несколько параметров. Когда используется

Определение свойств класса

Функции свойств могут иметь несколько параметров. Когда используется

несколько параметров, то аргументы парных свойств должны быть согласованы
Property Let Имя (Аргумент1 As Тип1, Аргумент2 As Тип2, … , АргументN As ТипN, АргументNN As ТипNN)
Property Get Имя (Аргумент1 As Тип1, Аргумент2 As Тип2, … , АргументN As ТипN) As ТипNN

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 145

4.2.5 Определение методов класса Метод - действие, выполняемое над объектом. Метод

4.2.5 Определение методов класса

Метод - действие, выполняемое над объектом.
Метод класса задается

за счет включения в текст модуля класса процедуры
Имя метода совпадает с именем процедуры

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 146

Определение методов класса 03.02.2017 20:56 09.03.03 Прикладная информатика

Определение методов класса

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 147

4.2.6. Библиотечные классы VBA и связанные с ними события При работе

4.2.6. Библиотечные классы VBA и связанные с ними события

При работе с

VBA программисту оказывается доступно большое количество различных библиотечных классов
Фактически подавляющее большинство возможностей, например, Excel, реализовано через классы

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 148

Библиотечные классы VBA и связанные с ними события Если используется библиотечный

Библиотечные классы VBA и связанные с ними события

Если используется библиотечный класс,

то при указании на соответствующий объект оказывается активным окно его свойств

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 149

Библиотечные классы VBA и связанные с ними события Разработчики библиотечных классов

Библиотечные классы VBA и связанные с ними события

Разработчики библиотечных классов предусмотрели

возможность возникновения с объектами различного рода событий
Событие представляет собой действие, распознаваемое объектом
Перечень возможных событий определяется на этапе разработки

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 150

Библиотечные классы VBA и связанные с ними события Обработка события представляет

Библиотечные классы VBA и связанные с ними события

Обработка события представляет собой

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 151

Библиотечные классы VBA и связанные с ними события В пользовательских классах

Библиотечные классы VBA и связанные с ними события

В пользовательских классах в

качестве событий могут рассматриваться события входящих в пользовательский класс объектов библиотечных классов
Специальные средства разработки программ обработки событий пользовательских классов неизвестны

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 152

4.3. Создание объектов и работа с ними в пользовательской программе В

4.3. Создание объектов и работа с ними в пользовательской программе

В подразделе

рассматривается:
Объявление переменной класса в пользовательской программе
Оператор присваивания Set
Использование свойств класса в пользовательской программе
Использование методов класса в пользовательской программе
Обработка событий объекта
Объектно-ориентированное программирование и VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 153

4.3.1 Объявление переменной класса в пользовательской программе Если создается пользовательская программа,

4.3.1 Объявление переменной класса в пользовательской программе

Если создается пользовательская программа, в

составе которой планируется использовать объекты созданные пользователем или библиотечных классов, то для обращения к этим объектам в программе должны быть объявлены переменные типа используемого класса
Допустим, что в проекте существует модуль пользовательского класса C1. Тогда объявление новой переменной имеет вид:
Dim ZZ As C1
Тип переменной соответствует созданному пользовательскому или используемому библиотечному классу

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 154

4.3.2. Оператор присваивания Set Оператор Set предназначен для записи в предварительно

4.3.2. Оператор присваивания Set

Оператор Set предназначен для записи в предварительно объявленную

переменную, указанную слева от символа равенства значения адреса размещения в памяти переменной, указанной справа от символа равенства
Set ZZ = Имя объекта
Переменная, записанная слева от символа равенства, рассматривается как указатель. В результате выполнения оператора Set реализуется операция взятия адреса переменной, указанной справа от символа равенства, которая в свою очередь является объектом
Поскольку объекты в VBA рассматриваются как некая совокупность данных, то для их размещения в памяти ЭВМ начиная с определенного адреса резервируется последовательный набор ячеек. Адрес первой ячейки является адресом объекта. Именно он и заносится в указатель

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 155

Оператор присваивания Set Ключевое слово New применяется в составе оператора Set

Оператор присваивания Set

Ключевое слово New применяется в составе оператора Set для

создания нового объекта а соответствии с его определением в своем классе Set Объект = New Имя_класса
Set ZZ = New С1
В момент создания нового объекта резервируется память для его хранения. Таким способом создается новый экземпляр объекта класса C1

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 156

Оператор присваивания Set Удаление объекта Set Объект = Nothing В результате

Оператор присваивания Set

Удаление объекта
Set Объект = Nothing
В результате выполнения оператора освобождаются

все системные ресурсы и ресурсы памяти, выделенные для объекта

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 157

4.3.3. Использование свойств класса в пользовательской программе Допустим, что существует некий

4.3.3. Использование свойств класса в пользовательской программе
Допустим, что существует некий пользовательский

класс Панель_управления. Создадим на его основе объект Новая_панель. Для этого объявим переменную Новая панель
Dim Новая панель As Панель_управления
Создадим объект
Новая панель = New Панель_управления
Ознакомившись со списком свойств и методов класса, выполняем действия с объектом. Синтаксис установки значения свойства:
Объект.Свойство = ЗначениеСвойства
Синтаксис чтения значения свойства:
ЗначениеСвойства = Объект.Свойство

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 158

Использование свойств класса в пользовательской программе Допустим, что в классе Панель_управления

Использование свойств класса в пользовательской программе

Допустим, что в классе Панель_управления определено

свойство Цвет
Для этого в модуле класса была создана функция
Property Let Цвет (Номер As Integer)
Предположим, что функция Цвет изменяет значение переменной класса в соответствии со значением Номер, а в свою очередь ее значение используется для задания цвета панели управления при ее выводе на экран
Тогда для задания цвета панели управления достаточно в пользовательской программе написать
Новая_Панель.Цвет = 3

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 159

Использование свойств класса в пользовательской программе Если ведется работа с несколькими

Использование свойств класса в пользовательской программе

Если ведется работа с несколькими различными

свойствами одного и того же объекта, то можно воспользоваться оператором With
With Новая_Панель
.Цвет = 3
.Шрифт = 12
.Кнопок = 4
End With

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 160

Использование свойств класса в пользовательской программе Пусть существует функция, возвращающая значение

Использование свойств класса в пользовательской программе

Пусть существует функция, возвращающая значение переменной

класса
Property Get Цвет ()
Тогда для обращения к ней достаточно:
Текущий_цвет = Новая_Панель. Цвет
Здесь Текущий_цвет переменная пользовательской программы

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 161

4.3.4 Использование методов класса в пользовательской программе Использование методов классов аналогично

4.3.4 Использование методов класса в пользовательской программе

Использование методов классов аналогично использованию

процедур при программировании. Основное отличие заключается в том, что должен быть указан объект, к которому применяется метод.
Предполагается, что этот объект был заранее объявлен и создан
Синтаксис применения метода в VBA:
Объект.Метод
Пример:
Новая_Панель. Show

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 162

4.3.5. Обработка событий объекта Если в состав класса входят объекты, для

4.3.5. Обработка событий объекта

Если в состав класса входят объекты, для которых

предусмотрены некоторые события, то эти события могут быть обработаны
Наиболее распространена обработка событий вызываемых элементами управления и представляющих собой библиотечные объекты внедренные в пользовательскую программу
Механизма создания собственных событий применительно к произвольному объекту нет (или он не был мною найден)

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 163

4.3.6 Объектно-ориентированное программирование и VBA 03.02.2017 20:56 09.03.03 Прикладная информатика Объектная модель по Гради Бучу.

4.3.6 Объектно-ориентированное программирование и VBA

03.02.2017 20:56

09.03.03 Прикладная информатика

Объектная модель по Гради

Бучу.
Слайд 164

Объектно-ориентированное программирование и VBA Абстракция выделяет существенные характеристики некоторого объекта, отличающие

Объектно-ориентированное программирование и VBA

Абстракция выделяет существенные характеристики некоторого объекта, отличающие его

от всех других видов объектов и, таким образом, четко определяет его концептуальные границы с точки зрения наблюдателя.
Инкапсуляция - это процесс отделения друг от друга элементов объекта, определяющих его устройство и поведение; инкапсуляция служит для того, чтобы изолировать контрактные обязательства абстракции от их реализации.
Модульность - это свойство системы, которая была разложена на внутренне связные, но слабо связанные между собой модули.
Иерархия - это упорядочение абстракций, расположение их по уровням. Наследование – возможность использования уже определенных объектов для построения новых объектов, т.е. возможность создания иерархии объектов. Каждый из “наследников” наследует описание данных «прародителя» и получает доступ к его свойствам и методам.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 165

Объектно-ориентированное программирование и VBA Типизация - это способ защититься от использования

Объектно-ориентированное программирование и VBA

Типизация - это способ защититься от использования объектов

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 166

Объектно-ориентированное программирование и VBA Наследование – возможность использования уже определенных объектов

Объектно-ориентированное программирование и VBA

Наследование – возможность использования уже определенных объектов для

построения новых объектов, т.е. возможность создания иерархии объектов. Каждый из “наследников” наследует описание данных «прародителя» и получает доступ к его свойствам и методам.
Полиморфизм – возможность определения единого имени метода, применимого одновременно ко всем объектам иерархии, причем каждый из объектов иерархии может иметь свою особенность реализации этого метода. Однако Visual Basic for Applications не поддерживает механизма полиморфизма.
Модульность - свойство программ, при котором объекты заключают в себе полное определение их характеристик, никакие определения методов и свойств не должны располагаться вне его, это делает возможным свободное копирование и внедрение одного объекта в другие.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 167

Объектно-ориентированное программирование и VBA В VBA реализуются так называемые методы раннего

Объектно-ориентированное программирование и VBA

В VBA реализуются так называемые методы раннего и

позднего связывания, причем полиморфизм обеспечивают как раз методы позднего связывания
Раннее связывание – на этапе компиляции
Позднее связывание – на этапе выполнения

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 168

Объектно-ориентированное программирование и VBA Для реализации позднего связывания тип объекта, к

Объектно-ориентированное программирование и VBA

Для реализации позднего связывания тип объекта, к которому

применяется свойство или метод, объявляется как As Object
Если на этапе выполнения оказывается, что конкретный объект не поддерживает вызываемого свойства, то возникает ошибка этапа выполнения

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 169

Объектно-ориентированное программирование и VBA Большинство объектно-ориентированных программных систем реализуют полиморфизм через

Объектно-ориентированное программирование и VBA

Большинство объектно-ориентированных программных систем реализуют полиморфизм через наследование
Наследование

– это механизм получения нового класса из существующего

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 170

Объектно-ориентированное программирование и VBA В чистом виде механизма наследования в VBA

Объектно-ориентированное программирование и VBA

В чистом виде механизма наследования в VBA нет

(или мною он не найден)
Реализация полиморфизма в VBA отлична от полиморфизма, например, C++.
Это обстоятельство позволяет некоторым авторам утверждать, что язык VBA не является объектно-ориентированным

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 171

03.02.2017 20:56 09.03.03 Прикладная информатика

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 172

6. Подготовка программы к выполнению, тестирование и отладка В разделе рассматривается

6. Подготовка программы к выполнению, тестирование и отладка

В разделе рассматривается
Разработка общего

алгоритма
Стиль программирования
Общая схема прохождения задачи
Ошибки этапов подготовки программы к выполнению
Ошибки этапа выполнения, автоматически определяемые процессором
Задача тестирования
Отладка программы

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 173

6.1. Разработка общего алгоритма ГОСТ 19.701-90 Единая система программной документации. Схемы

6.1. Разработка общего алгоритма

ГОСТ 19.701-90 Единая система программной документации. Схемы алгоритмов,

программ, данных и систем. Обозначения условные и правила выполнения
В настоящем стандарте определены символы, предназначенные для использования в документации по обработке данных, и приведено руководство по условным обозначениям для применения их в:
1) схемах данных;
2) схемах программ;
3) схемах работы системы;
4) схемах взаимодействия программ;
5) схемах ресурсов системы.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 174

Разработка общего алгоритма Основные символы данных 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Основные символы данных

03.02.2017 20:56

09.03.03 Прикладная информатика

Данные

данные, носитель данных не

определен
Слайд 175

Разработка общего алгоритма Основные символы данных 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Основные символы данных

03.02.2017 20:56

09.03.03 Прикладная информатика

Запоминаемые данные

Символ отображает хранимые

данные в виде, пригодном для обработки,
носитель данных не определен.
Слайд 176

Разработка общего алгоритма Специфические символы данных 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы данных

03.02.2017 20:56

09.03.03 Прикладная информатика

Оперативное запоминающее устройство

Символ отображает

данные, хранящиеся в оперативном запоминающем устройстве
Слайд 177

Разработка общего алгоритма Специфические символы данных 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы данных

03.02.2017 20:56

09.03.03 Прикладная информатика

Запоминающее устройство с последовательным

доступом

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

Слайд 178

Разработка общего алгоритма Специфические символы данных 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы данных

03.02.2017 20:56

09.03.03 Прикладная информатика

Запоминающее устройство с прямым

доступом

Символ отображает данные, хранящиеся в запоминающем
устройстве с прямым доступом
(магнитный диск, магнитный барабан, гибкий магнитный диск).

Слайд 179

Разработка общего алгоритма Специфические символы данных 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы данных

03.02.2017 20:56

09.03.03 Прикладная информатика

Документ

Символ отображает данные, представленные

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

Разработка общего алгоритма Специфические символы данных 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы данных

03.02.2017 20:56

09.03.03 Прикладная информатика

Ручной ввод

Символ отображает данные,

вводимые вручную во время обработки
с устройств любого типа
(клавиатура, переключатели, кнопки, световое перо, полоски со штриховым кодом).
Слайд 181

Разработка общего алгоритма Специфические символы данных 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы данных

03.02.2017 20:56

09.03.03 Прикладная информатика

Карта

Символ отображает данные, представленные

на носителе в виде карты
(перфокарты, магнитные карты, карты со считываемыми метками,
карты с отрывным ярлыком, карты со сканируемыми метками).
Слайд 182

Разработка общего алгоритма Специфические символы данных 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы данных

03.02.2017 20:56

09.03.03 Прикладная информатика

Бумажная лента

Символ отображает данные,

представленные на носителе в виде бумажной ленты
Слайд 183

Разработка общего алгоритма Специфические символы данных 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы данных

03.02.2017 20:56

09.03.03 Прикладная информатика

Дисплей

Символ отображает данные, представленные

в человекочитаемой
форме на носителе в виде отображающего устройства
(экран для визуального наблюдения, индикаторы ввода информации).
Слайд 184

Разработка общего алгоритма Основные символы процесса 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Основные символы процесса

03.02.2017 20:56

09.03.03 Прикладная информатика

Процесс

Символ отображает функцию обработки

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

Разработка общего алгоритма Специфические символы процесса 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы процесса

03.02.2017 20:56

09.03.03 Прикладная информатика

Предопределенный процесс

Символ отображает предопределенный

процесс, состоящий из одной
или нескольких операций или шагов программы,
которые определены в другом месте (в подпрограмме, модуле).
Слайд 186

Разработка общего алгоритма Специфические символы процесса 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы процесса

03.02.2017 20:56

09.03.03 Прикладная информатика

Ручная операция

Символ отображает любой

процесс, выполняемый человеком.
Слайд 187

Разработка общего алгоритма Специфические символы процесса 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы процесса

03.02.2017 20:56

09.03.03 Прикладная информатика

Подготовка

Символ отображает модификацию команды

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

Разработка общего алгоритма Специфические символы процесса 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы процесса

03.02.2017 20:56

09.03.03 Прикладная информатика

Решение

Символ отображает решение или

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

Разработка общего алгоритма Специфические символы процесса 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы процесса

03.02.2017 20:56

09.03.03 Прикладная информатика

Параллельные действия

Символ отображает синхронизацию

двух или более параллельных операций.
Слайд 190

Разработка общего алгоритма Специфические символы процесса 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специфические символы процесса

03.02.2017 20:56

09.03.03 Прикладная информатика

Граница цикла

Символ, состоящий из

двух частей,
отображает начало и конец, цикла. Обе части символа имеют
один и тот же идентификатор. Условия для инициализации,
приращения, завершения и т. д. помещаются внутри символа в начале или
в конце в зависимости от расположения операции, проверяющей условие
Слайд 191

Разработка общего алгоритма Основной символ линий 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Основной символ линий

03.02.2017 20:56

09.03.03 Прикладная информатика

Линия

Символ отображает поток данных

или управления
Слайд 192

Разработка общего алгоритма Специальные символы 03.02.2017 20:56 09.03.03 Прикладная информатика Соединитель

Разработка общего алгоритма

Специальные символы

03.02.2017 20:56

09.03.03 Прикладная информатика

Соединитель

Символ отображает выход в часть

схемы и вход из другой части
этой схемы и используется для обрыва линии и продолжения
ее в другом месте. Соответствующие символы – соединители
должны содержать одно и то же уникальное обозначение.
Слайд 193

Разработка общего алгоритма Специальные символы 03.02.2017 20:56 09.03.03 Прикладная информатика Терминатор

Разработка общего алгоритма

Специальные символы

03.02.2017 20:56

09.03.03 Прикладная информатика

Терминатор

Символ отображает выход во внешнюю

среду и вход из внешней среды
(начало или конец схемы программы, внешнее использование
и источник или пункт назначения данных).
Слайд 194

Разработка общего алгоритма Специальные символы 03.02.2017 20:56 09.03.03 Прикладная информатика Комментарий

Разработка общего алгоритма

Специальные символы

03.02.2017 20:56

09.03.03 Прикладная информатика

Комментарий

Символ используют для добавления описательных

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

Разработка общего алгоритма Пропуск 03.02.2017 20:56 09.03.03 Прикладная информатика Комментарий Символ

Разработка общего алгоритма

Пропуск

03.02.2017 20:56

09.03.03 Прикладная информатика

Комментарий

Символ (три точки) используют в схемах


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

Разработка общего алгоритма Специальные условные обозначения 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка общего алгоритма

Специальные условные обозначения

03.02.2017 20:56

09.03.03 Прикладная информатика

Несколько выходов

Несколько выходов из

символа следует показывать:
1) несколькими линиями от данного символа к другим символам;
2) одной линией от данного символа, которая затем
разветвляется в соответствующее число линий
Слайд 197

Разработка общего алгоритма Повторяющееся представление Вместо одного символа с соответствующим текстом

Разработка общего алгоритма

Повторяющееся представление
Вместо одного символа с соответствующим текстом могут быть

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 198

Разработка общего алгоритма Начните с того, что попытайтесь полностью понять условие

Разработка общего алгоритма

Начните с того, что попытайтесь полностью понять условие задачи.

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 199

Разработка общего алгоритма Еще раз обратите внимание на то, что процессор

Разработка общего алгоритма

Еще раз обратите внимание на то, что процессор может,

в сущности, выполнить только следующие действия:
Запись числа в определенную ячейку памяти;
Считывание числа из определенной ячейки памяти;
Выполнения некого действия со считанным на предыдущем шаге (шагах) числом (числами)

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 200

Разработка общего алгоритма Поэтому создаваемый вами алгоритм в пределе должен быть

Разработка общего алгоритма

Поэтому создаваемый вами алгоритм в пределе должен быть детализирован

до уровня элементарных действий процессора

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 201

Разработка общего алгоритма Операции и операторы языка программирования (например, VBA) позволяют

Разработка общего алгоритма

Операции и операторы языка программирования (например, VBA) позволяют сразу

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 202

Разработка общего алгоритма Определите, что является исходными данными задачи, а что

Разработка общего алгоритма

Определите, что является исходными данными задачи, а что есть

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 203

Разработка общего алгоритма Выберите подходящий способ ввода исходных данных Определите способ

Разработка общего алгоритма

Выберите подходящий способ ввода исходных данных
Определите способ вывода

результатов работы программы

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 204

Разработка общего алгоритма Определите необходимую для конкретной задачи последовательность действий с

Разработка общего алгоритма

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

данными
Попытайтесь решить задачу вручную, например, с помощью карандаша и бумаги

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 205

Разработка общего алгоритма Если вам непонятно, как решить задачу вручную, то

Разработка общего алгоритма

Если вам непонятно, как решить задачу вручную, то необходимо

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 206

Разработка общего алгоритма Если последовательность действий для ручного счета определена, необходимо

Разработка общего алгоритма

Если последовательность действий для ручного счета определена, необходимо задуматься

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 207

Разработка общего алгоритма Если ни один из известных операторов в вам

Разработка общего алгоритма

Если ни один из известных операторов в вам не

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 208

Разработка общего алгоритма После того, как операторы и данные решаемой задачи

Разработка общего алгоритма

После того, как операторы и данные решаемой задачи определены,

начинается этап кодирования создаваемой программы
Только после этого вы начинаете непосредственно работать с интегрированной средой разработки (в нашем случае VBA)

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 209

6.2. Стиль программирования Цель программирования - не создание программы, а получение

6.2. Стиль программирования

Цель программирования - не создание программы, а получение результатов

вычислений
Программы читаются людьми
Стандартизация стиля. Если существует более одного способа сделать что-либо и выбор произвольный - остановитесь на одном способе и всегда его придерживайтесь

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 210

Стиль программирования Комментарии. Делайте комментариев больше, чем вам кажется необходимым. Комментарии

Стиль программирования

Комментарии. Делайте комментариев больше, чем вам кажется необходимым.
Комментарии должны содержать

некоторую дополнительную информацию, а не перефразировать программу

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 211

Стиль программирования Располагайте комментарии таким образом, чтобы это не делало программу

Стиль программирования

Располагайте комментарии таким образом, чтобы это не делало программу менее

наглядной
Неправильные комментарии хуже, чем их отсутствие

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 212

Стиль программирования Оформление текста программы Вводные комментарии. Назначение, способ вызова, список

Стиль программирования

Оформление текста программы
Вводные комментарии. Назначение, способ вызова, список и назначение

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 213

Стиль программирования Выбор имен переменных. Используйте имена с подходящей мнемоникой. Не

Стиль программирования

Выбор имен переменных. Используйте имена с подходящей мнемоникой.
Не используйте имеющуюся

возможность записи нескольких операторов в одной строке
Для выявления структуры программы или данных используйте отступы

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 214

Стиль программирования Разбиение большой программы на разделы, подразделы и (или) подпрограммы

Стиль программирования

Разбиение большой программы на разделы, подразделы и (или) подпрограммы путем

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 215

6.3. Общая схема прохождения задачи Общая процедура создания программного обеспечения представляет

6.3. Общая схема прохождения задачи

Общая процедура создания программного обеспечения представляет собой

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 216

Общая схема прохождения задачи 03.02.2017 20:56 09.03.03 Прикладная информатика

Общая схема прохождения задачи

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 217

6.4. Ошибки этапов подготовки программы к выполнению В процессе преобразования текстового

6.4. Ошибки этапов подготовки программы к выполнению

В процессе преобразования текстового файла

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 218

Ошибки этапов подготовки программы к выполнению Если такие ошибки есть, то

Ошибки этапов подготовки программы к выполнению

Если такие ошибки есть, то необходимо

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 219

Ошибки этапов подготовки программы к выполнению В некоторых случаях могут выдаваться

Ошибки этапов подготовки программы к выполнению

В некоторых случаях могут выдаваться диагностические

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 220

6.5 Ошибки этапа выполнения, автоматически определяемые процессором Программа, запущенная на выполнение,

6.5 Ошибки этапа выполнения, автоматически определяемые процессором

Программа, запущенная на выполнение, может

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 221

Ошибки этапа выполнения, автоматически определяемые процессором Стандартно это прерывание обрабатывается в

Ошибки этапа выполнения, автоматически определяемые процессором

Стандартно это прерывание обрабатывается в виде

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 222

Ошибки этапа выполнения, автоматически определяемые процессором Язык VBA содержит специальный оператор

Ошибки этапа выполнения, автоматически определяемые процессором

Язык VBA содержит специальный оператор обработки

ошибок, позволяющий перехватывать прерывания, возникающие в процессе выполнения программы из-за ошибок этапа выполнения. Синтаксис оператора:
On Error GoTo Строка

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 223

Ошибки этапа выполнения, автоматически определяемые процессором Начиная с этого момента, при

Ошибки этапа выполнения, автоматически определяемые процессором

Начиная с этого момента, при возникновении

ошибки управление передается оператору, помеченному как Строка
Модуль, содержащий включенный оператор обработки ошибок, должен содержать оператор Exit (например, Exit Sub, Exit Function, Exit Property), не позволяющий выполниться фрагменту программы обработки ошибок естественным путем

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 224

Ошибки этапа выполнения, автоматически определяемые процессором Программа обработки прерывания включается в

Ошибки этапа выполнения, автоматически определяемые процессором

Программа обработки прерывания включается в текст

модуля, начинается с первого оператора, помеченного как Строка: и заканчивается оператором Resume Next
Завершение всего модуля оформляется обычным способом (например, End Sub)

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 225

Ошибки этапа выполнения, автоматически определяемые процессором Оператор On Error Resume Next

Ошибки этапа выполнения, автоматически определяемые процессором

Оператор On Error Resume Next указывает,

что при возникновении ошибки управление передается на следующий оператор
Оператор On Error GoTo 0 отключает активизированный обработчик прерываний от ошибок в текущем модуле

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 226

Ошибки этапа выполнения, автоматически определяемые процессором Корректно написанная программа не должна

Ошибки этапа выполнения, автоматически определяемые процессором

Корректно написанная программа не должна допускать

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 227

6.6 Задача тестирования Многочисленные попытки доказать факт правильности созданной программы, к

6.6 Задача тестирования

Многочисленные попытки доказать факт правильности созданной программы, к сожалению,

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 228

Задача тестирования Тестирование - процесс испытания программы на предмет ее работы

Задача тестирования

Тестирование - процесс испытания программы на предмет ее работы с

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 229

Задача тестирования Целью тестирования является установить факт наличия ошибки в программе

Задача тестирования

Целью тестирования является установить факт наличия ошибки в программе
Перед разработчиком

теста стоит задача разрушить готовую программу, что само по себе является не таким уж простым делом
Очень часто квалификация разработчика теста должна быть выше квалификации составителя программы
Для реализации тестирования может потребоваться разработка специального программного средства (генератора тестов), которое по сложности может оказаться соизмеримым с испытуемой программой

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 230

6.7. Отладка программы Тест успешен, если он указал на факт наличия

6.7. Отладка программы

Тест успешен, если он указал на факт наличия

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 231

6. Разработка общего алгоритма и стиль программирования В разделе рассматривается Разработка

6. Разработка общего алгоритма и стиль программирования

В разделе рассматривается
Разработка общего

алгоритма
Стиль программирования

03.02.2017 21:11

Слайд 232

6.1. Разработка общего алгоритма ГОСТ 19.701-90 Единая система программной документации. Схемы

6.1. Разработка общего алгоритма

ГОСТ 19.701-90 Единая система программной документации. Схемы алгоритмов,

программ, данных и систем. Обозначения условные и правила выполнения
В настоящем стандарте определены символы, предназначенные для использования в документации по обработке данных, и приведено руководство по условным обозначениям для применения их в:
1) схемах данных;
2) схемах программ;
3) схемах работы системы;
4) схемах взаимодействия программ;
5) схемах ресурсов системы.

03.02.2017 21:11

Слайд 233

Разработка общего алгоритма Начните с того, что попытайтесь полностью понять условие

Разработка общего алгоритма

Начните с того, что попытайтесь полностью понять условие задачи.

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

03.02.2017 21:11

Слайд 234

Разработка общего алгоритма Еще раз обратите внимание на то, что процессор

Разработка общего алгоритма

Еще раз обратите внимание на то, что процессор может,

в сущности, выполнить только следующие действия:
Запись числа в определенную ячейку памяти;
Считывание числа из определенной ячейки памяти;
Выполнения некого действия со считанным на предыдущем шаге (шагах) числом (числами)

03.02.2017 21:11

Слайд 235

Разработка общего алгоритма Поэтому создаваемый вами алгоритм в пределе должен быть

Разработка общего алгоритма

Поэтому создаваемый вами алгоритм в пределе должен быть детализирован

до уровня элементарных действий процессора

03.02.2017 21:11

Слайд 236

Разработка общего алгоритма Операции и операторы языка программирования (например, VBA) позволяют

Разработка общего алгоритма

Операции и операторы языка программирования (например, VBA) позволяют сразу

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

03.02.2017 21:11

Слайд 237

Разработка общего алгоритма Определите, что является исходными данными задачи, а что

Разработка общего алгоритма

Определите, что является исходными данными задачи, а что есть

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

03.02.2017 21:11

Слайд 238

Разработка общего алгоритма Выберите подходящий способ ввода исходных данных Определите способ

Разработка общего алгоритма

Выберите подходящий способ ввода исходных данных
Определите способ вывода

результатов работы программы

03.02.2017 21:11

Слайд 239

Разработка общего алгоритма Определите необходимую для конкретной задачи последовательность действий с

Разработка общего алгоритма

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

данными
Попытайтесь решить задачу вручную, например, с помощью карандаша и бумаги

03.02.2017 21:11

Слайд 240

Разработка общего алгоритма Если вам непонятно, как решить задачу вручную, то

Разработка общего алгоритма

Если вам непонятно, как решить задачу вручную, то необходимо

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

03.02.2017 21:11

Слайд 241

Разработка общего алгоритма Если последовательность действий для ручного счета определена, необходимо

Разработка общего алгоритма

Если последовательность действий для ручного счета определена, необходимо задуматься

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

03.02.2017 21:11

Слайд 242

Разработка общего алгоритма Если ни один из известных операторов в вам

Разработка общего алгоритма

Если ни один из известных операторов в вам не

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

03.02.2017 21:11

Слайд 243

Разработка общего алгоритма После того, как операторы и данные решаемой задачи

Разработка общего алгоритма

После того, как операторы и данные решаемой задачи определены,

начинается этап кодирования создаваемой программы
Только после этого вы начинаете непосредственно работать с интегрированной средой разработки (в нашем случае VBA)

03.02.2017 21:11

Слайд 244

7. Проектирование программ В разделе рассматривается: Общий подход к проектированию программ

7. Проектирование программ

В разделе рассматривается:
Общий подход к проектированию программ
Структурная декомпозиция и

структурное программирование
Объектно-ориентированная декомпозиция

03.02.2017 21:17

Слайд 245

7.1. Общий подход к проектированию программ Программное средство – это дорогостоящая

7.1. Общий подход к проектированию программ

Программное средство – это дорогостоящая продукция

и, очень часто, крупное капиталовложение

03.02.2017 21:17

Слайд 246

Общий подход к проектированию программ Стремитесь к простоте Проектирование программы должно

Общий подход к проектированию программ

Стремитесь к простоте
Проектирование программы должно начаться и

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

03.02.2017 21:17

Слайд 247

Общий подход к проектированию программ Добивайтесь точности при определении задачи После

Общий подход к проектированию программ

Добивайтесь точности при определении задачи
После того, как

задача определена, отказывайтесь от внесения в нее изменений и дополнений. Если они все-таки необходимы, добивайтесь увеличения сметной стоимости работы и сроков на ее выполнение

03.02.2017 21:17

Слайд 248

Общий подход к проектированию программ Выбирайте алгоритм решения задачи самым тщательным

Общий подход к проектированию программ

Выбирайте алгоритм решения задачи самым тщательным образом.

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

03.02.2017 21:17

Слайд 249

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

Общий подход к проектированию программ

Добивайтесь универсальности программы, т.е. независимости ее от

конкретного набора данных
Используйте в качестве параметров переменные, а не константы

03.02.2017 21:17

Слайд 250

Общий подход к проектированию программ Используйте существующие библиотеки программ Тщательно разрабатывайте

Общий подход к проектированию программ

Используйте существующие библиотеки программ
Тщательно разрабатывайте форматы и

вид представления входных и выходных данных. Вид выводимой информации часто является единственным критерием, по которому оценивается мастерство программиста

03.02.2017 21:17

Слайд 251

Общий подход к проектированию программ Типовой набор целей, которые устанавливаются при

Общий подход к проектированию программ

Типовой набор целей, которые устанавливаются при проектировании

программы
высокий уровень надежности;
выполнение объема работ к определенной дате;
минимальное время разработки или минимальная стоимость;
удобство и простота эксплуатации;
эффективность;
возможность введения модификаций;
универсальность.

03.02.2017 21:17

Слайд 252

Общий подход к проектированию программ Параметры оценки программ: память; время; сложность.

Общий подход к проектированию программ

Параметры оценки программ:
память;
время;
сложность.
Метод управления сложностью заключается в

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

03.02.2017 21:17

Слайд 253

7.2. Структурная декомпозиция и структурное программирование В подразделе рассматривается: Основная задача

7.2. Структурная декомпозиция и структурное программирование

В подразделе рассматривается:
Основная задача структурного программирования
Структурная

декомпозиция и проектирование сверху вниз
Модульное программирование
Бригада главного программиста
Тестирование программ

03.02.2017 21:17

Слайд 254

7.2.1. Основная задача структурного программирования Структурное программирование - метод управления сложностью

7.2.1. Основная задача структурного программирования

Структурное программирование - метод управления сложностью в

пределах каждого модуля
Структурное программирование представляет собой метод улучшения качества программ.

03.02.2017 21:17

Слайд 255

Основная задача структурного программирования Структурное программирование сосредотачивается на одном из наиболее

Основная задача структурного программирования

Структурное программирование сосредотачивается на одном из наиболее подверженным

ошибкам факторам программ - логике программы.

03.02.2017 21:17

Слайд 256

Основная задача структурного программирования Три главных составляющих структурного программирования: проектирование сверху

Основная задача структурного программирования

Три главных составляющих структурного программирования:
проектирование сверху вниз;
модульное программирование;
структурное

кодирование.

03.02.2017 21:17

Слайд 257

7.2.2. Структурная декомпозиция и проектирование сверху вниз Метод проектирования сверху вниз

7.2.2. Структурная декомпозиция и проектирование сверху вниз

Метод проектирования сверху вниз представляет

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

03.02.2017 21:17

Слайд 258

Структурная декомпозиция и проектирование сверху вниз Сначала напишите то, что вы

Структурная декомпозиция и проектирование сверху вниз

Сначала напишите то, что вы хотите

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

03.02.2017 21:17

Слайд 259

Структурная декомпозиция и проектирование сверху вниз 03.02.2017 21:17 В процессе проектирования

Структурная декомпозиция и проектирование сверху вниз

03.02.2017 21:17

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

разработан интерфейс между модулями
Слайд 260

Структурная декомпозиция и проектирование сверху вниз Разработка тестов должна производиться заранее

Структурная декомпозиция и проектирование сверху вниз

Разработка тестов должна производиться заранее
Тестирование должно

вестись параллельно с разработкой программ сверху вниз.
Отсутствующие (не разработанные) программные модули должны заменяться заглушками

03.02.2017 21:17

Слайд 261

7.2.3. Модульное программирование Модульное программирование - процесс разделения программы на логические

7.2.3. Модульное программирование

Модульное программирование - процесс разделения программы на логические части,

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

03.02.2017 21:17

Слайд 262

Модульное программирование Считается, что размер модуля не должен превышать 60 строк

Модульное программирование

Считается, что размер модуля не должен превышать 60 строк
Модуль должен

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

03.02.2017 21:17

Слайд 263

Модульное программирование Модуль должен иметь один вход и один выход Связи

Модульное программирование

Модуль должен иметь один вход и один выход
Связи между отдельными

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

03.02.2017 21:17

Слайд 264

Модульное программирование Таким образом, для модуля должны быть определены: алгоритм решения

Модульное программирование

Таким образом, для модуля должны быть определены:
алгоритм решения задачи;
область допустимых

входных значений;
область возможных выходных значений;
возможные побочные эффекты.
Возникновение побочного эффекта не должно прекращать выполнение программы

03.02.2017 21:17

Слайд 265

7.2.4. Структурное кодирование Теорема о структурировании: любая правильная программа с одним

7.2.4. Структурное кодирование

Теорема о структурировании:
любая правильная программа с одним

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

03.02.2017 21:17

Слайд 266

Структурное кодирование 03.02.2017 21:17 Любая правильная программа с одним входом и

Структурное кодирование

03.02.2017 21:17

Любая правильная программа с одним входом и одним выходом

(без зацикливаний и недостижимых команд) может быть написана с использованием последовательности двух и более операторов, выбора одного из двух операторов, повторения выполнения оператора, пока выполняется некоторое условие
Слайд 267

7.2.5. Бригада главного программиста Ядро бригады программистов составляют главный программист, его

7.2.5. Бригада главного программиста

Ядро бригады программистов составляют главный программист, его помощник

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

03.02.2017 21:17

Слайд 268

Бригада главного программиста Основной обязанностью главного программиста является собственно разработка и

Бригада главного программиста

Основной обязанностью главного программиста является собственно разработка и составление

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

03.02.2017 21:17

Слайд 269

Бригада главного программиста Помощник главного программиста должен быть в состоянии осуществить

Бригада главного программиста

Помощник главного программиста должен быть в состоянии осуществить руководство

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

03.02.2017 21:17

Слайд 270

Бригада главного программиста Библиотекарь хранит все записи проекта в специальной библиотеке.

Бригада главного программиста

Библиотекарь хранит все записи проекта в специальной библиотеке. В

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

03.02.2017 21:17

Слайд 271

7.2.6. Тестирование программ Тестирование призвано указывать на наличие, а не на

7.2.6. Тестирование программ

Тестирование призвано указывать на наличие, а не на отсутствие

ошибок
Задачей программирования является не просто получение результатов, а получение правильных результатов
Думать о тестировании следует на стадии написания программы задаваясь вопросом: как будет тестироваться этот сегмент?

03.02.2017 21:17

Слайд 272

Тестирование программ Необходимая полнота тестирования: должна быть испытана каждая ветвь алгоритма.

Тестирование программ

Необходимая полнота тестирования: должна быть испытана каждая ветвь алгоритма.
Исчерпывающее тестирование

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

03.02.2017 21:17

Слайд 273

Тестирование программ Тестирование надо начинать как можно раньше. Стоимость устранения ошибки

Тестирование программ

Тестирование надо начинать как можно раньше. Стоимость устранения ошибки на

раннем этапе разработки существенно ниже
Тестирование целесообразно применять по методу сверху вниз.
Типы тестовых данных:
создаваемые программистом (контролируемые и случайные);
реальные модифицированные;
реальные в полном объеме.

03.02.2017 21:17

Слайд 274

Тестирование программ Каждый раз полученные в процессе тестирования данные должны быть

Тестирование программ

Каждый раз полученные в процессе тестирования данные должны быть проанализированы
Этапы

тестирования:
проверка в нормальных условиях;
проверка в экстремальных условиях;
проверка в исключительных условиях.

03.02.2017 21:17

Слайд 275

7.3. Объектно-ориентированная декомпозиция В подразделе рассматривается: Причины сложности программного обеспечения Проектирование

7.3. Объектно-ориентированная декомпозиция

В подразделе рассматривается:
Причины сложности программного обеспечения
Проектирование сложных систем
Основные принципы

построения объектно-ориентированной модели
Объекты и классы
Объектная декомпозиция

03.02.2017 21:17

Слайд 276

7.3.1. Причины сложности программного обеспечения Существенная черта современной программы - ее

7.3.1. Причины сложности программного обеспечения

Существенная черта современной программы - ее уровень

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

03.02.2017 21:17

Слайд 277

Причины сложности программного обеспечения Сложность реальной предметной области Проблемы, которые люди

Причины сложности программного обеспечения

Сложность реальной предметной области
Проблемы, которые люди пытаются решить

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

03.02.2017 21:17

Слайд 278

Причины сложности программного обеспечения Сложность реальной предметной области Большая программная система

Причины сложности программного обеспечения

Сложность реальной предметной области
Большая программная система - это

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

03.02.2017 21:17

Слайд 279

Причины сложности программного обеспечения Трудности управления процессом разработки Основная задача разработчика

Причины сложности программного обеспечения

Трудности управления процессом разработки
Основная задача разработчика - создание

иллюзии простоты, в защите пользователя от сложности описываемого предмета или процесса.

03.02.2017 21:17

Слайд 280

Причины сложности программного обеспечения Трудности управления процессом разработки Объем работ при

Причины сложности программного обеспечения

Трудности управления процессом разработки
Объем работ при разработке таков,

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

03.02.2017 21:17

Слайд 281

Причины сложности программного обеспечения Гибкость программного обеспечения. Разработчик может обеспечить себя

Причины сложности программного обеспечения

Гибкость программного обеспечения.
Разработчик может обеспечить себя всеми необходимыми

для создания системы элементами независимо от уровня абстракции. Как следствие, отсутствуют стандарты на единые конструктивные элементы и системы контроля их качества

03.02.2017 21:17

Слайд 282

Причины сложности программного обеспечения Проблема описания поведения больших дискретных систем Дискретные

Причины сложности программного обеспечения

Проблема описания поведения больших дискретных систем
Дискретные системы, в

отличие от непрерывных, имеют конечное, но чрезвычайно большое число возможных состояний

03.02.2017 21:17

Слайд 283

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

Причины сложности программного обеспечения

Проблема описания поведения больших дискретных систем
Переход из одного

состояния системы в другое не всегда детерминирован

03.02.2017 21:17

Слайд 284

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

Причины сложности программного обеспечения

Проблема описания поведения больших дискретных систем
При неблагоприятных условиях

внешнее событие может нарушить текущее состояние системы из-за того, что не были предусмотрены все возможные варианты

03.02.2017 21:17

Слайд 285

7.3.2. Проектирование сложных систем Целью проектирования системы является создание системы удовлетворяющей

7.3.2. Проектирование сложных систем

Целью проектирования системы является создание системы
удовлетворяющей заданным (в

том числе и неформальным) требованиям (спецификациям);

03.02.2017 21:17

Слайд 286

Проектирование сложных систем Целью проектирования системы является создание системы согласованной с

Проектирование сложных систем

Целью проектирования системы является создание системы
согласованной с ограничениями, накладываемыми

оборудованием;
удовлетворяющей явным и неявным требованиям по эксплутационным качествам и ресурсопотреблению;

03.02.2017 21:17

Слайд 287

Проектирование сложных систем Целью проектирования системы является создание системы удовлетворяющей явным

Проектирование сложных систем

Целью проектирования системы является создание системы
удовлетворяющей явным и неявным

критериям дизайна продукта;
удовлетворяющей требованиям к самому процессу разработки (продолжительность, стоимость и т.п.)

03.02.2017 21:17

Слайд 288

Проектирование сложных систем В основе проектирования стоит построение модели. Моделью называется

Проектирование сложных систем

В основе проектирования стоит построение модели. Моделью называется некоторая

абстракция, которая в той или иной степени соответствует поведению реального объекта

03.02.2017 21:17

Слайд 289

Проектирование сложных систем В основе объектно-ориентированной технологии создания программного обеспечения лежит

Проектирование сложных систем

В основе объектно-ориентированной технологии создания программного обеспечения лежит так

называемая объектная модель

03.02.2017 21:17

Слайд 290

7.3.3. Основные принципы построения объектно-ориентированной модели В пункте рассматривается: Абстрагирование Инкапсуляция

7.3.3. Основные принципы построения объектно-ориентированной модели

В пункте рассматривается:
Абстрагирование
Инкапсуляция
Модульность
Иерархия
Типизация
Параллелизм
Сохраняемость
Полиморфизм

03.02.2017 21:17

Слайд 291

7.3.3.1. Абстрагирование Абстракция выделяет существенные характеристики некоторого объекта, отличающие его от

7.3.3.1. Абстрагирование

Абстракция выделяет существенные характеристики некоторого объекта, отличающие его от всех

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

03.02.2017 21:17

Слайд 292

Абстрагирование Абстракция сущности - объект представляет собой полезную модель некой сущности

Абстрагирование

Абстракция сущности - объект представляет собой полезную модель некой сущности в

предметной области
Клиентом называется любой объект, использующий ресурсы другого объекта, называемого сервером

03.02.2017 21:17

Слайд 293

Абстрагирование Поведение объекта характеризуется услугами, которые он оказывает другим объектам, и

Абстрагирование

Поведение объекта характеризуется услугами, которые он оказывает другим объектам, и операциями,

которые он выполняет над другими объектами

03.02.2017 21:17

Слайд 294

Абстрагирование Внешнее поведение объекта рассматривается с точки зрения его контракта с

Абстрагирование

Внешнее поведение объекта рассматривается с точки зрения его контракта с другими

объектами. Каждая операция, предусмотренная контрактом, однозначно определена.

03.02.2017 21:17

Слайд 295

Абстрагирование Полный набор операций, которые объект может осуществлять над другим объектом,

Абстрагирование

Полный набор операций, которые объект может осуществлять над другим объектом, и

правильный порядок их вызова называется протоколом.

03.02.2017 21:17

Слайд 296

Абстрагирование Инвариантом называется некоторое логическое условие (истина или ложь), значение которого

Абстрагирование

Инвариантом называется некоторое логическое условие (истина или ложь), значение которого должно

сохраняться
Для каждой операции можно задать предусловия (инварианты, предполагаемые операцией), и постусловия (инварианты, которым удовлетворяет операция

03.02.2017 21:17

Слайд 297

Абстрагирование Если нарушено предусловие - виноват клиент, постусловие - виноват сервер 03.02.2017 21:17

Абстрагирование

Если нарушено предусловие - виноват клиент, постусловие - виноват сервер

03.02.2017 21:17

Слайд 298

Абстрагирование Абстракции могут обладать статическими и динамическими свойствами. Абстракции могут не

Абстрагирование

Абстракции могут обладать статическими и динамическими свойствами.
Абстракции могут не зависеть от

своего предыдущего состояния (автомат без памяти) и зависеть (автомат с памятью)

03.02.2017 21:17

Слайд 299

7.3.3.2. Инкапсуляция Инкапсуляция - процесс отделения друг от друга элементов объекта,

7.3.3.2. Инкапсуляция

Инкапсуляция - процесс отделения друг от друга элементов объекта, определяющих

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

03.02.2017 21:17

Слайд 300

Инкапсуляция Абстрагирование направлено на наблюдаемое поведение объекта, а инкапсуляция занимается его внутренним устройством 03.02.2017 21:17

Инкапсуляция

Абстрагирование направлено на наблюдаемое поведение объекта, а инкапсуляция занимается его внутренним

устройством

03.02.2017 21:17

Слайд 301

7.3.3.3. Модульность Модульность - свойство системы, которая разложена на сильно связанные

7.3.3.3. Модульность

Модульность - свойство системы, которая разложена на сильно связанные внутри,

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

03.02.2017 21:17

Слайд 302

7.3.3.4. Иерархия Иерархия - упорядочение абстракций, расположение их по уровням. Основными

7.3.3.4. Иерархия

Иерархия - упорядочение абстракций, расположение их по уровням.
Основными видами иерархических

структур применительно к сложным объектам является структура классов и структура объектов.

03.02.2017 21:17

Слайд 303

Иерархия Под наследованием обычно понимается создание производного класса на базе другого.

Иерархия

Под наследованием обычно понимается создание производного класса на базе другого. Базовый

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

03.02.2017 21:17

Слайд 304

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

Иерархия

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

в заголовок определения производного класса включается строка вида:
class A: public Base {}; // Производный класс A наследующий Base

03.02.2017 21:17

Слайд 305

Иерархия Наследующий класс может использовать данные и функции базового класса и

Иерархия

Наследующий класс может использовать данные и функции базового класса и дополнять

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

03.02.2017 21:17

Слайд 306

Иерархия Наследование порождает иерархию «обобщение - специализация», в которой подкласс представляет

Иерархия

Наследование порождает иерархию «обобщение - специализация», в которой подкласс представляет собой

частный случай своего суперкласса

03.02.2017 21:17

Слайд 307

7.3.3.4. Типизация Тип - точная характеристика свойств, включая структуру и поведение,

7.3.3.4. Типизация

Тип - точная характеристика свойств, включая структуру и поведение, относящуюся

к некоторой совокупности объектов.
Можно считать, что понятия типа и класса эквивалентны.

03.02.2017 21:17

Слайд 308

Типизация Типизация - способ защититься от использования объектов одного класса вместо

Типизация

Типизация - способ защититься от использования объектов одного класса вместо другого,

или по крайней мере управлять таким использованием.

03.02.2017 21:17

Слайд 309

7.3.3.5. Параллелизм Параллелизм - свойство, позволяющее отличать активные объекты от пассивных

7.3.3.5. Параллелизм

Параллелизм - свойство, позволяющее отличать активные объекты от пассивных
Процесс -

фундаментальная единица действия в системе.
Каждый объект может представлять собой самостоятельный процесс и может быть активным(выполнять действия) и пассивным (состояние ожидания).

03.02.2017 21:17

Слайд 310

Параллелизм Главным вопросом параллелизма является вопрос синхронизации процессов. Реальная параллельность может

Параллелизм

Главным вопросом параллелизма является вопрос синхронизации процессов.
Реальная параллельность может быть достигнута

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

03.02.2017 21:17

Слайд 311

7.3.3.6. Сохраняемость Сохраняемость - способность объекта существовать во времени, переживая породивший

7.3.3.6. Сохраняемость

Сохраняемость - способность объекта существовать во времени, переживая породивший его

процесс, и (или) в пространстве, перемещаясь из своего первоначального адресного пространства.

03.02.2017 21:17

Слайд 312

Сохраняемость Возможные варианты сохраняемости объектов: промежуточные результаты вычислений; локальные переменные при

Сохраняемость

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

глобальные переменные, динамически создаваемые данные;

03.02.2017 21:17

Слайд 313

Сохраняемость Возможные варианты сохраняемости объектов: данные, сохраняемые между сеансами выполнения программы;

Сохраняемость

Возможные варианты сохраняемости объектов:
данные, сохраняемые между сеансами выполнения программы;
данные, сохраняемые при

переходе на новую версию программы;
данные, которые вообще переживут программу

03.02.2017 21:17

Слайд 314

7.3.3.7. Полиморфизм Слово полиморфизм имеет греческое происхождение и может быть переведено

7.3.3.7. Полиморфизм

Слово полиморфизм имеет греческое происхождение и может быть переведено на

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

03.02.2017 21:17

Слайд 315

Полиморфизм Полиморфизм в С++ реализуется за счет существующей возможности создавать так

Полиморфизм

Полиморфизм в С++ реализуется за счет существующей возможности создавать так называемые

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

03.02.2017 21:17

Слайд 316

Полиморфизм Достоинством полиморфизма является то обстоятельство, что при использовании объекта можно

Полиморфизм

Достоинством полиморфизма является то обстоятельство, что при использовании объекта можно вызывать

определенное свойство не заботясь о том, как объект выполняет задачу

03.02.2017 21:17

Слайд 317

7.3.4. Объекты и классы С точки зрения восприятия человеком объектом может

7.3.4. Объекты и классы

С точки зрения восприятия человеком объектом может быть:
осязаемый

и (или) видимый предмет;
нечто, воспринимаемое мышлением;
нечто, на что направлена мысль или действие.
Объект обладает состоянием, поведением и идентичностью.
Структура и поведение схожих объектов определяет общий для них класс.

03.02.2017 21:17

Слайд 318

Объекты и классы Класс - это некоторое множество объектов, имеющих общую

Объекты и классы

Класс - это некоторое множество объектов, имеющих общую структуру

и поведение
Любой конкретный объект является просто экземпляром класса
Термины «экземпляр класса» и «объект взаимозаменяемы

03.02.2017 21:17

Слайд 319

Объекты и классы Состояние объекта характеризуется перечнем (обычно статическим) всех свойств

Объекты и классы

Состояние объекта характеризуется перечнем (обычно статическим) всех свойств данного

объекта и текущими (обычно динамическими) значениями каждого из этих свойств.
Поведение - это то, как объект действует и реагирует.
Поведение выражается в терминах состояния объекта и передачи сообщений.

03.02.2017 21:17

Слайд 320

Объекты и классы Идентичность - это такое свойство объекта, которое отличает

Объекты и классы

Идентичность - это такое свойство объекта, которое отличает его

от всех других объектов.

03.02.2017 21:17

Слайд 321

Объекты и классы Операции - это услуги, которые объект может предоставить

Объекты и классы

Операции - это услуги, которые объект может предоставить клиентам.

К их числу относятся:
модификатор (изменение состояния объекта);
селектор (считывание состояния объекта);
итератор (последовательный доступ к частям объекта);
конструктор (создание объекта и (или) его инициализация;
деструктор (освобождение состояния объекта и (или) его разрушение.

03.02.2017 21:17

Слайд 322

Объекты и классы Типы отношений между объектами: связи; агрегация. Связь -

Объекты и классы

Типы отношений между объектами:
связи;
агрегация.
Связь - это физическое или концептуальное

соединение между объектами, через которое клиент запрашивает услугу у объекта - сервера.

03.02.2017 21:17

Слайд 323

Объекты и классы Участвуя в связи, объект может выполнять одну из

Объекты и классы

Участвуя в связи, объект может выполнять одну из трех

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

03.02.2017 21:17

Слайд 324

Объекты и классы Агрегация объектов описывает отношения целого и части, приводящего

Объекты и классы

Агрегация объектов описывает отношения целого и части, приводящего к

соответствующей иерархии. Идя от целого (агрегата) мы можем придти к его частям (атрибутам).

03.02.2017 21:17

Слайд 325

7.3.5. Объектная декомпозиция Объектно-ориентированный подход к разработке программного обеспечения предлагает способ

7.3.5. Объектная декомпозиция

Объектно-ориентированный подход к разработке программного обеспечения предлагает способ декомпозиции

сложной системы, отличный от рассмотренного нами ранее способа алгоритмической декомпозиции

03.02.2017 21:17

Слайд 326

Объектная декомпозиция Проектирование программной системы методом объектной декомпозиции заключается в построении

Объектная декомпозиция

Проектирование программной системы методом объектной декомпозиции заключается в построении иерархии

объектов, обменивающихся между собой сообщениями.

03.02.2017 21:17

Слайд 327

Объектная декомпозиция В отличие модулей, объект обладает рядом дополнительных качеств, существенно

Объектная декомпозиция

В отличие модулей, объект обладает рядом дополнительных качеств, существенно отличающих

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

03.02.2017 21:17

Слайд 328

Объектная декомпозиция В отличие от модуля, эта реакция существенно зависит от

Объектная декомпозиция

В отличие от модуля, эта реакция существенно зависит от ранее

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

03.02.2017 21:17

Слайд 329

Объектная декомпозиция Можно сказать, что, в отличие от модуля, являющегося по

Объектная декомпозиция

Можно сказать, что, в отличие от модуля, являющегося по

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

03.02.2017 21:17

Слайд 330

Объектная декомпозиция Наличие у объекта набора свойств и состояний позволяет с

Объектная декомпозиция

Наличие у объекта набора свойств и состояний позволяет с его

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

03.02.2017 21:17

Слайд 331

Объектная декомпозиция Результат объектной декомпозиции может получиться более простым, чем результат

Объектная декомпозиция

Результат объектной декомпозиции может получиться более простым, чем результат алгоритмической

декомпозиции, хотя надо иметь в виду, что и в том, и в ином случае они описывают одно и то же.

03.02.2017 21:17

Слайд 332

Объектная декомпозиция 03.02.2017 21:17

Объектная декомпозиция

03.02.2017 21:17

Слайд 333

6. Создание документов средствами текстового процессора В разделе рассматривается: Нормативная документация

6. Создание документов средствами текстового процессора

В разделе рассматривается:
Нормативная документация
Создание структуры документа
Установка

параметров страницы
Разработка и создание колонтитулов документа
Вставка сносок
Создание формульных выражений
Разработка и создание таблиц
Разработка и создание рисунков
Вставка ссылок на литературу
Использование закладок
Составление оглавления, списка таблиц и иллюстраций

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 334

Нормативная документация Основной задачей изучения Word является освоение методов работы с

Нормативная документация

Основной задачей изучения Word является освоение методов работы с текстовыми

документами большого объема

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 335

Нормативная документация 03.02.2017 20:56 09.03.03 Прикладная информатика http://guap.ru/guap/standart/ob1_main.shtml

Нормативная документация

03.02.2017 20:56

09.03.03 Прикладная информатика

http://guap.ru/guap/standart/ob1_main.shtml

Слайд 336

Нормативная документация 03.02.2017 20:56 09.03.03 Прикладная информатика

Нормативная документация

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 337

Нормативная документация 03.02.2017 20:56 09.03.03 Прикладная информатика

Нормативная документация

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 338

Нормативная документация 03.02.2017 20:56 09.03.03 Прикладная информатика

Нормативная документация

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 339

Нормативная документация 03.02.2017 20:56 09.03.03 Прикладная информатика Этот стандарт тоже никто не отменял.

Нормативная документация

03.02.2017 20:56

09.03.03 Прикладная информатика

Этот стандарт тоже никто не отменял.

Слайд 340

Нормативная документация 03.02.2017 20:56 09.03.03 Прикладная информатика Этот стандарт тоже никто не отменял.

Нормативная документация

03.02.2017 20:56

09.03.03 Прикладная информатика

Этот стандарт тоже никто не отменял.

Слайд 341

http://guap.ru/guap/standart/prav_main.shtml 03.02.2017 20:56 09.03.03 Прикладная информатика

http://guap.ru/guap/standart/prav_main.shtml

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 342

ГОСТ 7.32 - 2001 6.1. Создание структуры документа 03.02.2017 20:56 09.03.03 Прикладная информатика

ГОСТ 7.32 - 2001

6.1. Создание структуры документа

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 343

ГОСТ 7.32 - 2001 Создание структуры документа 03.02.2017 20:56 09.03.03 Прикладная информатика

ГОСТ 7.32 - 2001

Создание структуры документа

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 344

ГОСТ 7.32 - 2001 Создание структуры документа 03.02.2017 20:56 09.03.03 Прикладная информатика

ГОСТ 7.32 - 2001

Создание структуры документа

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 345

ГОСТ 7.32 - 2001 Создание структуры документа 03.02.2017 20:56 09.03.03 Прикладная информатика

ГОСТ 7.32 - 2001

Создание структуры документа

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 346

Создание структуры документа Вы можете сначала набрать ваш текстовый документ, а,

Создание структуры документа

Вы можете сначала набрать ваш текстовый документ, а, потом

организовать его структуру, но лучше сначала продумать структуру документа и следовать ей в работе

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 347

Создание структуры документа Введение, Заключение, Приложение, Список рисунков, Список таблиц, Список

Создание структуры документа

Введение, Заключение, Приложение, Список рисунков, Список таблиц, Список использованных

источников оформляются без применения списка
Разделы документа имеют 1-ый уровень заголовка
Подразделы имеют 2-ой уровень заголовка и аналогичный вид многоуровневого списка
Пункты имеют 3–й уровень заголовка и аналогичный вид многоуровневого списка

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 348

Создание структуры документа 03.02.2017 20:56 09.03.03 Прикладная информатика

Создание структуры документа

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 349

Создание структуры документа 03.02.2017 20:56 09.03.03 Прикладная информатика ГОСТ 7.32 - 2001

Создание структуры документа

03.02.2017 20:56

09.03.03 Прикладная информатика

ГОСТ 7.32 - 2001

Слайд 350

ГОСТ 7.32 - 2001 6.2. Установка параметров страницы 03.02.2017 20:56 09.03.03 Прикладная информатика

ГОСТ 7.32 - 2001

6.2. Установка параметров страницы

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 351

Установка параметров страницы Перед тем как набирать текст нового документа необходимо

Установка параметров страницы

Перед тем как набирать текст нового документа необходимо проверить

устраивают ли вас отступы слева, справа, сверху и снизу от краев листа до набираемого вами текста
Существуют определенные стандарты отступов при оформлении различных документов

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 352

Установка параметров страницы Для установления отступов используется меню Файл команда Параметры

Установка параметров страницы

Для установления отступов используется меню Файл команда Параметры страницы

вкладка Поля
Вкладка Размер бумаги позволяет выбрать формат листа и определить его ориентацию – книжную или альбомную

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 353

6.3. Разработка и создание колонтитулов документа 03.02.2017 20:56 09.03.03 Прикладная информатика ГОСТ 7.32 - 2001

6.3.  Разработка и создание колонтитулов документа

03.02.2017 20:56

09.03.03 Прикладная информатика

ГОСТ 7.32 -

2001
Слайд 354

Разработка и создание колонтитулов документа Колонтитул — это текст и/или рисунок,

Разработка и создание колонтитулов документа

Колонтитул — это текст и/или рисунок, который

печатается внизу или вверху каждой страницы документа
В зависимости от места расположения (на верхнем или на нижнем поле страницы) колонтитулы бывают верхними и нижними
Колонтитулы могут быть различными для четных и нечетных страниц, а также колонтитул первого листа может отличатся от колонтитулов остальных страниц

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 355

Разработка и создание колонтитулов документа 03.02.2017 20:56 09.03.03 Прикладная информатика Для

Разработка и создание колонтитулов документа

03.02.2017 20:56

09.03.03 Прикладная информатика

Для установки колонтитулов используется

меню Вид команда Колонтитулы. При выборе этой команды на экране появляется панель инструментов для создания колонтитулов
Слайд 356

6.4. Вставка сносок 03.02.2017 20:56 09.03.03 Прикладная информатика ГОСТ 7.32 - 2001

6.4.  Вставка сносок

03.02.2017 20:56

09.03.03 Прикладная информатика

ГОСТ 7.32 - 2001

Слайд 357

Вставка сносок Установите курсор туда, куда следует вставить знак сноски Выберите

Вставка сносок

Установите курсор туда, куда следует вставить знак сноски
Выберите команду Сноска

в меню Вставка
Выберите Обычную или Концевую

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 358

Вставка сносок Введите текст сноски в область сносок. Для возврата к

Вставка сносок

Введите текст сноски в область сносок. Для возврата к основному

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 359

03.02.2017 20:56 09.03.03 Прикладная информатика 6.5 Создание формульных выражений ГОСТ 7.32 - 2001

03.02.2017 20:56

09.03.03 Прикладная информатика

6.5 Создание формульных выражений

ГОСТ 7.32 - 2001

Слайд 360

03.02.2017 20:56 09.03.03 Прикладная информатика Создание формульных выражений Удобно для создания

03.02.2017 20:56

09.03.03 Прикладная информатика

Создание формульных выражений

Удобно для создания формул применять

специальную программу Microsoft Equation.
Слайд 361

Создание формульных выражений 03.02.2017 20:56 09.03.03 Прикладная информатика

Создание формульных выражений

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 362

03.02.2017 20:56 09.03.03 Прикладная информатика 6.6. Разработка и создание таблиц ГОСТ 7.32 - 2001

03.02.2017 20:56

09.03.03 Прикладная информатика

6.6. Разработка и создание таблиц

ГОСТ 7.32 -

2001
Слайд 363

03.02.2017 20:56 09.03.03 Прикладная информатика Разработка и создание таблиц ГОСТ 7.32 - 2001

03.02.2017 20:56

09.03.03 Прикладная информатика

Разработка и создание таблиц

ГОСТ 7.32 - 2001

Слайд 364

Разработка и создание таблиц Вы можете создавать таблицу любым способом, но

Разработка и создание таблиц

Вы можете создавать таблицу любым способом, но

при этом она должна быть отформатирована, иметь заголовок (и нумерацию, если таких таблиц несколько)

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 365

Разработка и создание таблиц Каждая таблица должна иметь название. Пример названия:

Разработка и создание таблиц

Каждая таблица должна иметь название. Пример названия:
Таблица 8

– Пример расчета заработной платы
В тексте документа должна быть ссылка на таблицу, например:
Результаты расчета заработной платы сотрудников представлены в таблице 8.
Первая ссылка на таблицу (ссылок может быть несколько) обязательно должна быть до первого появления таблицы в тексте.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 366

6.7. Разработка и создание иллюстраций 03.02.2017 20:56 09.03.03 Прикладная информатика ГОСТ 7.32 - 2001

6.7. Разработка и создание иллюстраций

03.02.2017 20:56

09.03.03 Прикладная информатика

ГОСТ 7.32 -

2001
Слайд 367

Разработка и создание иллюстраций Под рисунком понимается все, что не является

Разработка и создание иллюстраций

Под рисунком понимается все, что не является формулой

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 368

Разработка и создание иллюстраций Вы можете создавать рисунок любым способом, в

Разработка и создание иллюстраций

Вы можете создавать рисунок любым способом, в том

числе и средствами Word, однако использование Word для создания рисунков нежелательно, поскольку оно ведет к некоторым проблемам в тексте при автоматическом форматировании документа
Рисунок может быть создан любыми другими программными средствами, а позднее скопирован в нужное место документа

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 369

Разработка и создание иллюстраций Каждый рисунок должен иметь подрисуночную подпись. Пример

Разработка и создание иллюстраций

Каждый рисунок должен иметь подрисуночную подпись. Пример подрисуночной

подписи:
Рисунок 4 – Структура современной информатики как науки
В тексте документа должна быть ссылка на рисунок, например:
Как показано на рисунке 4, современная информатика как наука состоит из двух составляющих: теоретической и прикладной
Первая ссылка на рисунок (ссылок может быть несколько) обязательно должна быть до первого появления рисунка в тексте.

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 370

Разработка и создание иллюстраций 03.02.2017 20:56 09.03.03 Прикладная информатика

Разработка и создание иллюстраций

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 371

Оформление документов рисунками Вставка готовых рисунков Из файла Из коллекции картинок

Оформление документов рисунками

Вставка готовых рисунков
Из файла
Из коллекции картинок
Создать рисунок средствами

текстового процессора
Отредактировать готовый рисунок средствами текстового процессора

03.02.2017 20:56

09.03.03 Прикладная информатика

Для создания рисунков удобнее использовать специализированные средства

Слайд 372

Вставка готовых рисунков (1) 03.02.2017 20:56 09.03.03 Прикладная информатика с помощью

Вставка готовых рисунков (1)

03.02.2017 20:56

09.03.03 Прикладная информатика

с помощью меню Вставка –

Рисунок Картинки Из файла …
Слайд 373

Вставка готовых рисунков (2) с помощью меню Вставка – Рисунок Картинки

Вставка готовых рисунков (2)

с помощью меню Вставка – Рисунок Картинки
Из коллекции

MS Office

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 374

Редактирование готовых рисунков 03.02.2017 20:56 09.03.03 Прикладная информатика С помощью панели

Редактирование готовых рисунков

03.02.2017 20:56

09.03.03 Прикладная информатика

С помощью панели

Добавить рисунок

Формат объекта

Обтекание текстом

Обрезка

Сжатие

рисунков

Прозрачный цвет

Сброс параметров

Слайд 375

Сжатие рисунков 03.02.2017 20:56 09.03.03 Прикладная информатика

Сжатие рисунков

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 376

Создание рисунков средствами текстового процессора С помощью Панели инструментов Рисование Вид

Создание рисунков средствами текстового процессора

С помощью Панели инструментов Рисование
Вид –Панели

инструментов  Рисование
Рекомендации: Активно используйте
Группировку
Копирование
Поворот
Отражение
Для вставки сложных условных обозначений
– редактор формул в элементе «Надпись»

03.02.2017 20:56

09.03.03 Прикладная информатика

Для создания рисунков удобнее использовать специализированные средства

Слайд 377

03.02.2017 20:56 09.03.03 Прикладная информатика

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 378

03.02.2017 20:56 09.03.03 Прикладная информатика

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 379

Оформление рисунков в документе Завершающий этап создания рисунка: Группировка Настройка взаимодействия

Оформление рисунков в документе

Завершающий этап создания рисунка:
Группировка
Настройка взаимодействия с текстом (Формат

– Рисунок (Объект) – вкладка Положение)
Все иллюстрации называются рисунками и могут нумероваться в пределах каждого раздела:
Рисунок 2.1
Рисунки располагаются по тексту после первой ссылки на него. Если есть дальнейшая ссылка, то
«см. рисунок 2.1».
При необходимости рисунок может иметь наименование и поясняющие сведения, которые помещаются под рисунком после указания его номера:
Рисунок 2.1 - Функциональная схема блока селектора

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 380

Вставка объекта WordArt 03.02.2017 20:56 09.03.03 Прикладная информатика Информационные технологии Информационные технологии Информационные технологии Информационные технологии

Вставка объекта WordArt

03.02.2017 20:56

09.03.03 Прикладная информатика

Информационные технологии

Информационные технологии

Информационные технологии

Информационные технологии

Слайд 381

Вставка диаграмм 03.02.2017 20:56 09.03.03 Прикладная информатика Виды диаграмм Гистограмма Круговая

Вставка диаграмм

03.02.2017 20:56

09.03.03 Прикладная информатика

Виды диаграмм
Гистограмма
Круговая
Линейчатая
Точечная
Гладкий график
Организационная
И др.

Слайд 382

Гистограмма 03.02.2017 20:56 09.03.03 Прикладная информатика

Гистограмма

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 383

03.02.2017 20:56 09.03.03 Прикладная информатика Круговая диаграмма

03.02.2017 20:56

09.03.03 Прикладная информатика

Круговая диаграмма

Слайд 384

Разработка и создание рисунков Вы можете создавать рисунок любым способом, в

Разработка и создание рисунков

Вы можете создавать рисунок любым способом, в

том числе и средствами Word, однако использование Word для создания рисунков нежелательно, поскольку оно ведет к некоторым проблемам в тексте при автоматическом форматировании документа
Рисунок может быть создан любыми другими программными средствами, а позднее скопирован в нужное место документа

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 385

6.8. Вставка ссылок на литературу 03.02.2017 20:56 09.03.03 Прикладная информатика ГОСТ 7.32 - 2001

6.8. Вставка ссылок на литературу

03.02.2017 20:56

09.03.03 Прикладная информатика

ГОСТ 7.32 -

2001
Слайд 386

Вставка ссылок на литературу Ссылки на литературу являются принципиально необходимой составляющей

Вставка ссылок на литературу

Ссылки на литературу являются принципиально необходимой составляющей

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 387

Вставка ссылок на литературу В технической литературе принято вставлять ссылки в

Вставка ссылок на литературу

В технической литературе принято вставлять ссылки

в текст документа в виде числа в квадратных скобках, например [35]
Число в квадратных скобках есть номер цитируемого источника в списке использованных источников, который помещается в конце документа
В зависимости от вида документа этот список может иметь название Указатель литературы, Литература, Список литературы, Список использованных источников и т.п. В каждом конкретном случае это название необходимо уточнить

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 388

Вставка ссылок на литературу Список использованных источников должен составляться в порядке

Вставка ссылок на литературу

Список использованных источников должен составляться в

порядке цитирования,
Если список составляется в порядке цитирования, то первая ссылка в тексте делается на первый литературный источник [1], вторая на второй [2] и т.п. Допускаются многократные ссылки на один и тот же источник, однако вторая ссылка первый раз все равно должна появиться после первой

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 389

Вставка ссылок на литературу В соответствии с требованиями ВАК при оформлении

Вставка ссылок на литературу

В соответствии с требованиями ВАК при

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 390

Вставка ссылок на литературу Word позволяет автоматически нумеровать и сортировать список

Вставка ссылок на литературу

Word позволяет автоматически нумеровать и сортировать

список литературы
Изменения в списке литературы приводят и к изменениям ссылок
Если список литературы выполнен в виде нумерованного списка, а ссылки реализованы через режим перекрестных ссылок Word, то можно автоматически изменить номера ссылок

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 391

Вставка ссылок на литературу 03.02.2017 20:56 09.03.03 Прикладная информатика

Вставка ссылок на литературу

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 392

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

6.9. Использование закладок

Закладкой называется специальная пометка фрагмента документа, позволяющая обратиться

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 393

Использование закладок Чтобы создать закладку, надо выделить фрагмент текста и выбрать

Использование закладок

Чтобы создать закладку, надо выделить фрагмент текста и выбрать

пункт меню Вставка строка Закладки. Открывшееся окно диалога попросит вас ввести имя закладки
Целесообразно выбирать осмысленное имя, чтобы потом легко узнавать, к чему собственно относится закладка, однако при этом надо иметь в виду, что пробелы в имени закладки не допускаются
Перекрестная ссылка имеет несколько вариантов, выбираемых из меню

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 394

6.10. Составление оглавления, списка таблиц и иллюстраций 03.02.2017 20:56 09.03.03 Прикладная информатика ГОСТ 7.32 - 2001

6.10. Составление оглавления, списка таблиц и иллюстраций

03.02.2017 20:56

09.03.03 Прикладная информатика

ГОСТ

7.32 - 2001
Слайд 395

Составление оглавления, списка таблиц и иллюстраций После этого в пункте Вставка

Составление оглавления, списка таблиц и иллюстраций

После этого в пункте Вставка

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

03.02.2017 20:56

09.03.03 Прикладная информатика

Слайд 396

6.11. Титульные листы и бланки задания 03.02.2017 20:56 09.03.03 Прикладная информатика ГОСТ 7.32 - 2001

6.11. Титульные листы и бланки задания

03.02.2017 20:56

09.03.03 Прикладная информатика

ГОСТ 7.32

- 2001
Слайд 397

Титульные листы и бланки задания 03.02.2017 20:56 09.03.03 Прикладная информатика Образцы титульных листов учебных работ http://guap.ru/guap/standart/titl_main.shtml

Титульные листы и бланки задания

03.02.2017 20:56

09.03.03 Прикладная информатика

Образцы титульных листов учебных

работ http://guap.ru/guap/standart/titl_main.shtml