
- •Введение
- •Глава 1. Информатика и информация
- •Глава 2. Устройство персонального компьютера
- •Глава 3. Операционная система
- •Глава 4. Файлы и файловые системы
- •Глава 5. Текстовый процессор microsoft word 2010
- •Клавиатура
- •Глава 6. Microsoft excel 2010
- •Глава 7. Субд microsoft access 2010
- •Глава 8. Microsoft powerpoint 2010
- •Р ис. 6. Варианты макетов слайдов
- •Результат показан на рисунке.
- •Глава 9. Microsoft outlook – система планирования дел и ведения переписки
- •Глава 10. Основы алгоритмизации и программирования
- •1. Вычти 1
- •2. Умножь на 3
- •Глава 11. Локальные и глобальные сети
- •Глава 12. Компьютерная и информационная безопасность
- •Литература
- •Информатика
- •620002, Екатеринбург, ул. Мира, 19
Пусть вся информация о студентах находится на первом листе. Требуется на втором листе создать таблицу для необходимых расчетов по первой таблице.
Решение
Создавать результирующую формулу с помощью мыши. То есть когда понадобится сослаться на ячейку другого листа рабочей книги, то «кликнуть» мышкой на нужном ярлычке листа, а потом на ячейке открытого листа. Закончить ввод формулы клавишей Enter или Tab, что позволит автоматически вернуться на лист с формулой. Во время ввода формулы удобно следить за ее наполнением по строке формул.
Рис. 34 Создание формулы в строке формул
Функции рабочего листа MS Excel 2010
Встроенные функции MS Excel позволяют облегчить программирование формул.
Все функции разбиты
по категориям и находятся на вкладке
Формулы
в группе Библиотека
функций.
На ней же и в строке формул находится
кнопка
для доступа к набору функций.
Рис. 35 Вкладка Формулы
Синтаксис функции выглядит следующим образом: Название_функции(аргумент1; аргумент 2;…)
В качестве аргументов функции могут быть не только числовые константы, ссылки на ячейки, но и другие функции. В этом случае функция называется вложенной.
Решим следующую задачу. Пусть имеется таблица, демонстрирующая среднюю температуру за каждый месяц.
Рис. 36 Таблица с исходными значениями
Необходимо следующую строку заполнить формулой, которая для каждого числа возвращает текст «положительно» или «отрицательно».
Воспользуемся функцией ЕСЛИ(). Функция находится в категории Логические.
Синтаксис: ЕСЛИ(логическое_выражение; значение1; значение2)
Функция проверяет, выполняется ли заданное логическое_выражение. Если оно выполняется, то результатом функции является значение1, иначе ‑ значение2.
Формулу будем создавать в ячейке В3 относительно ячейки В2. Тогда форма диалогового окна мастера будет выглядеть следующим образом:
Рис. 37 Заполнение аргументов функции ЕСЛИ()
Скопируем формулу на оставшиеся ячейки.
Рис. 38 Тестирование формулы с функцией ЕСЛИ()
Теперь усложним задачу: если температура ниже минус пятнадцати градусов, то формула должна вернуть слово «морозно», если температура выше пятнадцати градусов - «жарко», иначе - «тепло».
Заметим, что форма мастера позволяет запрограммировать только две ситуации. В нашем случае требуется рассмотреть три варианта, поэтому создадим формулу непосредственно в ячейке без помощи мастера.
Рис. 39 Тестирование формулы с вложенной функцией ЕСЛИ()
Встроенные средства визуализации данных в MS Excel 2010
Диаграммы
Для упрощения понимания большого объема информации и связей между различными рядами данных используются диаграммы. С помощью различных элементов (столбцов на гистограмме или линий на графике) диаграмма отображает ряды числовых данных в графическом виде. При создании таблицы заголовки следует располагать либо слева от данных, либо над ними. В этом случае MS Excel автоматически расположит оптимальным способом все данные на диаграмме. Стоит отметить, что для быстрого построения диаграммы необходимо выделить исходные значения вместе с заголовками строк и столбцов.
Возьмем для демонстрации построения диаграммы все ту же таблицу с температурой. Выделим ее и выберем диаграмму.
На вкладке Вставка в группе Диаграммы находятся основные типы диаграмм.
Рис. 40 Создание диаграммы
С помощью кнопки Создать диаграмму вызывается диалоговое окно со всеми типами диаграмм и их вариациями. Выберем объемную гистограмму.
Рис. 41 Выбор типа диаграммы
В результате получим гистограмму с одним рядом значений.
Рис. 42 Гистограмма
При активном окне с диаграммой отображается вкладка Работа с диаграммами.
Рис. 43 Вкладка Работа с диаграммами
С помощью нее можно изменить любой элемент диаграммы, ее форматирование, диапазон исходных значений или расположение в книге.
Есть ситуации, когда требуется на одной диаграмме отобразить несколько рядов данных и при этом подписи горизонтальной оси могут отличаться от стандартного набора.
Построим, например,
графики следующих функций:
и
.
Создадим для этого таблицу исходных
данных на отрезке [-2,
8].
Рис. 44 Таблица исходных данных
Отметим, что перед
построением диаграммы выделяем только
те столбцы (вместе с заголовками), которые
содержат значения для рядов данных. В
нашем случае это у1
и у2.
Подписи горизонтальной оси можно
изменить с помощью кнопки
.
В результате появится диалоговое окно
Выбор
источника данных.
Рис. 45 Изменение подписей горизонтальной оси
В нем с помощью кнопки Изменить можно выделить диапазон для категории. В итоге получим два графика на одной диаграмме.
Рис. 46 Два графика на одной диаграмме
На одной диаграмме
легко можно сочетать разные типы
представления данных. Например, график
и гистограмма. Кликнем на графике с
параболой. С помощью кнопки
выберем гистограмму.
Рис. 47 Гистограмма и график на одной диаграмме
Спарклайны
Еще один инструмент визуализации данных в Excel 2010 – спарклайны. Это небольшие диаграммы, которые размещаются в ячейках рабочего листа. Спарклайны рекомендуется создавать рядом с исходными данными. Это позволит продемонстрировать закономерность данных, расположенных в смежных ячейках.
Спарклан и исходные данные связаны между собой. Поэтому изменения в таблице автоматически отразятся в спарклайне. И наоборот.
Для создания спарклайна необходимо выделить ячейки, в которых он будет размещаться. На вкладке Вставка в группе Спарклайны выбрать один из его типов. В появившемся диалоговом окне указать диапазон данных.
Рис. 48 Диалоговое окно Создание спарклайнов
В результате ячейки заполняются встроенными диаграммами.
Рис. 49 Анализ данных с помощью спарклайнов
Работа со списками в MS Excel 2010
Иногда таблицы могут содержать довольно большой объем данных. Удобно представлять такие таблицы в виде списка. В этом случае будет возможно воспользоваться встроенными MS Excel инструментами сортировки и фильтрации данных в списке. Считается, что список состоит из полей (столбцов) и записей (строк). Для того чтобы таблица воспринималась как список, следует соблюдать несколько правил. Поля списка должны содержать однотипные данные. При этом список не должен состоять из пустых полей и записей. Форматирование заголовков списка должно отличаться от форматирования других элементов списка.
При работе со списками часто приходится их сортировать или упорядочивать. Это значительно облегчает поиск информации.
Для сортировки
списка по одному полю удобно пользоваться
кнопками
,
на
вкладке Данные.
Перед сортировкой требуется оставлять
табличный курсор в том поле, по которому
сортируем. Если необходимо отсортировать
по нескольким полям, то используют уже
расширенную сортировку. На вкладке
Данные
с помощью кнопки
вызывается диалоговое окно с формой
для выбора нескольких ключей для
сортировки.
Рис. 50 Сортировка списка по двум ключам
Не всегда упорядочивание элементов приводит список к нужному виду. Например, при сортировке нельзя скрыть ненужные данные. В этом случае можно воспользоваться инструментами фильтрации списков. C помощью фильтрации в списке с исходными данными можно быстро находить нужные записи. Выполнять выборку можно по одному или нескольким полям данных. С помощью фильтров контролируются не только отображаемые, но и исключаемые данные. Один из них ‑ Автофильтр. Для включения функции Автофильтр необходимо активировать кнопку Фильтр на вкладке Данные. В результате рядом с названиями полей появятся серые кнопки с выпадающими списками в них. Списки содержат значения выбранного поля без повторений.
Рис. 51 Список с кнопками Автофильтра
Представим, что мы хотим оставить в списке с исходными данными записи только для тех женщин, у которых фамилия начинается с буквы К.
Для решения нам понабится в выпадающем списке поля Пол убрать галочку с флажка рядом с буквой М.
Рис. 52 Создание фильтра по полю Пол
В выпадающем списке поля Фамилия выбрать текстовый фильтр и пункт Начинается с…
Рис. 53 Создание текстового фильтра по полю Фамилия
В появившемся диалоговом окне указать условия, накладываемые на текст в выбранном поле исходного списка.
Рис. 54 Диалоговое окно Пользовательский автофильтр
В результате применения Автофильтра остались только те записи, которые удовлетворяют всем указанным условиям фильтра.
Рис. 55 Отфильтрованный список
Поля списка, к которым был применен фильтр, содержат кнопки не только с рисунком стрелки, но и с изображением воронки.
Стоит отметить, что записи, которые сейчас отсутствуют в списке, не удалились, а просто скрылись. Полученные результаты можно, например, копировать или выводить на печать.
Для того чтобы отобразить исходные значения, нужно отключить кнопку Фильтр повторным нажатием на нее.
Заметим, что исходный список может содержать огромное количество записей. Естественно при этом выпадающие списки Автофильтра пополнятся большим набором данных. То есть выбор значений из выпадающих списков нисколько не ускорит работу с фильтрацией данных. Кроме того, при использовании Автофильтра существуют системные ограничения на количество формируемых условий (не более трёх для каждого столбца) и отсутствует необходимая гибкость задания условий отбора.
В ситуациях сложной фильтрации можно воспользоваться Расширенным фильтром.
Данная функция требует подготовки.
Необходимо скопировать строку с заголовком таблицы и вставить его под таблицей с исходными данными.
Строки под новым заголовком будут служить для ввода условий выборки. При этом нужно соблюдать некоторые правила. Если условия находятся в одной строке, значит, требуется их одновременное выполнение. Если условия находятся в разных строках, то требуется выполнение хотя бы одного из них.
Для задания условий можно пользоваться символами подстановки. Символ ? - заменяет один символ, * - заменяет несколько символов.
Перед вызовом функции рекомендуется оставлять табличный курсор в таблице исходных данных.
Для применения Расширенного фильтра на вкладке Данные необходимо активировать кнопку Дополнительно.
Представим, что необходимо из исходной таблицы выбрать только капитанов с фамилией, начинающейся с Сер.
Тогда условия, накладываемые на поля исходной таблицы нужно оформлять в одной строке.
Рис. 56 Таблица исходных данных и таблица с условиями для фильтрации
Благодаря тому, что изначально табличный курсор находился в таблице с данными, система автоматически распознала границы исходных данных и заполнила строку Исходный диапазон. Оценить ситуацию можно, работая с таблицами больших размеров. Диапазон условий выделяется вручную вместе с заголовком. После нажатия на кнопку Ок мы получим результат.
Рис. 57 Заполнение формы диалогового окна Расширенных фильтр
Нажав на кнопку Очистить на вкладке Данные, можно вернуть прежний вид исходной таблице.
Вопросы обмена данных
Есть несколько способов обмена данными между приложениями MS Office 2010 и MS Excel 2010: копирование, импортирование, экспортирование, подключение данных к листу Excel. Для использования функций обмена данными рекомендуется, чтобы исходные данные были представлены в табличном виде.
Копирование данных между приложениями MS Office 2010
Копирование данных осуществляется обычным образом, например, после выделения нужной таблицы нажать сочетание клавиш Ctrl+C, а потом вставить данные на новый лист MS Excel с помощью сочетания клавиш Ctrl+V.
Подключение данных к листу MS Excel 2010
Для того чтобы в Excel возможно было работать с обновляемыми данными из других приложений MS Office, можно создать подключение к данным источника. В этом случае обновления данных источника отразятся на подключенных данных Excel автоматически. Такой способ обмена данными не требует постоянного копирования или экспорта данных. Результат подключения обычно хранится в виде файла подключения к данным Office (ODC).
Создание подключения осуществляется через функции группы Получение внешних данных на вкладке Данные.
Рис.58 Получение внешних данных
Экспорт данных из MS Excel 2010
Для экспортирования данных необходимо на вкладке Файл выбрать команду Сохранить и отправить.
Рис. 59 Экспортирование данных из Excel в текстовый файл
С помощью команды Изменить тип файла выбирается тип итогового файла и вызывается обычное окно сохранения нового документа.
Глава 7. Субд microsoft access 2010
Рис. 1. Логотип программы Access
В последние годы возрастает интерес к базам данных, области применения их расширяются. Базы данных в своей профессиональной деятельности применяют экономисты, историки и многие другие специалисты-непрограммисты. В связи с этим давно стоит вопрос о создании программы, позволяющей создавать свои приложения непрофессионалам. Такой программой является Microsoft Access – одна из составных частей пакета Microsoft Office. Вначале это был пакет Microsoft Access 2,0; затем версии изменялись и Microsoft Access, пожалуй, является самой изменяющейся составной частью пакета Microsoft Office, в каждой новой версии Access становится все интереснее.
Microsoft Access является настольной СУБД (системой управления базами данных) реляционного типа. Достоинством Microsoft Access является очень простой графический интерфейс, знакомый пользователю по работе в других офисных пакетах (Word, Excel и т.д.).
Все таблицы, а также другие объекты базы данных Microsoft Access – запросы, формы, отчеты, макросы и модули, построенные для этой базы, могут размещаться на диске в одном файле формата .accdb. Этим обеспечивается высокая компактность размещения всех объектов базы данных на диске, эффективность обработки данных и удобство для пользователя-непрофессионала.
Когда база данных открыта, для корректного внесения изменений требуется блокировка данных разных уровней, контроль осуществляется с помощью файла блокировки. Для файлов в формате .accdb блокирование управляется файлом с тем же именем и расширением .laccdb. Если в Microsoft Access открыт .mdb – файл (предыдущие версии) для контроля блокировки создается файл с тем же именем и расширением .ldb. Как .ldb- так и .laccdb- файлы уничтожаются автоматически, когда база данных будет закрыта всеми пользователями.
Таблицы
Как и всякая реляционная база данных, Microsoft Access представляет собой множество взаимосвязанных реляционных таблиц (отношений). Обычно столбцы таблицы называются поле, а строки – записи. Структура реляционной таблицы определяется составом полей. Каждое поле отражает определенную характеристику сущности. У каждого поля есть имя, тип и размер.
Имя поля. Каждое поле в таблице должно иметь уникальное имя, содержащее не более 64 символов. Оно не может начинаться с пробела, а также не должно содержать символов (точка «.», восклицательный знак «!», квадратные скобки «[]»).
Тип данных. Столбцы таблицы (в отличие, например, от электронных таблиц Excel), содержит данные только одного типа. В Microsoft Access используется двенадцать типов данных.
Текстовый |
Используется для хранения текста. Максимальная длина поля 255 символов. |
Поле МЕМО |
Используется для хранения текста, длиной более 255 символов. Максимальный размер поля 65536 знаков. |
Числовой |
Служит для хранения числовых значений. |
Денежный |
Используется для хранения денежных значений с точностью до 4-х знаков после запятой. |
Дата/время |
Используется для хранения значений даты и времени. С данными, хранящимися в этой форме можно выполнять различные вычисления |
Счетчик |
Используется в первичных ключах |
Логический |
Применяется для хранения логических значений (да/нет, истина/ложь, вкл/выкл) |
Поле объекта OLE |
Используется для хранения изображений, других объектов из приложений Microsoft Office. |
Гиперссылка |
Применяется для хранения ссылок на WEB-узлы, на узлы или файлы интрасети. |
Мастер подстановок |
С помощью мастера подстановок можно создать поле, позволяющее выбирать значения из списка, построенного на основе значений поля другой таблицы. |
Вложение |
Используется для вложения в поле записи файлов изображений, электронных таблиц и т.д. |
Вычисляемый |
Предназначен для создания вычисляемых полей. Значение определяется выражением, записанным в поле и использующих другие поля текущей записи, некоторые встроенные функции. |
Для работы с таблицами существует два основных режима: режим конструктора и режим таблицы. В режиме конструктора мы задаем и изменяем структуру таблицы (тип полей, размер поля, имя поля). В режиме таблицы – заполняем ее.
Каждая запись таблицы должна быть однозначно идентифицируема. Для идентификации используется первичный ключ. Он может быть простым или составным. Если при создании таблицы вы сохраняете ее и не задаете ключ, Microsoft Access предложит создать ключевое поле типа счетчик. Значения этого поля нельзя изменять, поэтому счетчик не всегда удобен. Для того чтобы сделать поле простым ключом, надо в режиме конструктора выделить заголовок поля, щелкнуть правой кнопкой и выбрать ключевое поле. Для того чтобы сделать поле составным ключом, надо в режиме конструктора выделить заголовки нужных полей с нажатой клавишей CTRL, щелкнуть правой кнопкой и выбрать ключевое поле.
Связи
Связи устанавливаются между таблицами. Связи могут быть разного типа:
Один к одному (1:1);
Один к многим (1:М);
Многие к многим (М:N).
Связь «Один к одному» имеет место, когда одному экземпляру первого объекта соответствует только один экземпляр второго объекта. Связь такого типа встречается не часто, т.к. чаще всего такие две таблицы можно объединить в одну, а с точки зрения реляционной модели это хорошо (недостаток реляционной модели – низкая скорость операции соединения). Но иногда такая связь удобна, например, если в таблице есть информация, занимающая много места (например, фотография, звук), но использующаяся не часто и не всеми категориями пользователей. Пример связи «Один к одному» – фирма – расчетный счет в банке, студент – адрес, студент – фотография. Microsoft Access сам создает тип связи. При этом для создания связи «Один к одному» необходимо, чтобы оба связываемых поля были простыми ключами.
Связь «Один к многим» – это такая связь, когда каждому экземпляру одного объекта соответствует много экземпляров другого объекта. Например, группа – студенты, кафедра – сотрудники и т.д. Этот тип связи наиболее часто встречающийся. Для создания такой связи нужно, чтобы в таблице «Один» связываемое поле было простым ключом, а в таблице «Много» - частью составного ключа или не ключевым. Связь создать не получится, если оба связываемых поля не ключи!
Связь «Многие к многим» ‑ это связь, когда каждому экземпляру одного объекта соответствует много экземпляра второго и наоборот, каждому экземпляру второго объекта соответствует много экземпляров первого. Например, связь студенты – преподаватели (у каждого студента много преподавателей, у каждого преподавателя много студентов). Или поставщики – магазины (у каждого магазина много поставщиков, у каждого поставщика много магазинов). Связи «Многие к многим» не могут быть реализованы непосредственно, обычно они реализуются как две связи «Один к многим».
При создании связи в Microsoft Access надо продумать, какая таблица будет главной, а какая – подчиненной. Дело в том, что есть возможность автоматического удаления связанных с главным экземпляром одного объекта записей. Например, если в одной таблице (она главная) хранится основная информация о студенте (фамилия, имя и т.д.), а в других – сведения о его успеваемости (они – подчиненные), то при удалении информации из главной таблицы автоматически будет удаляться вся информация об этом студенте из подчиненных таблиц. Это называется каскадное удаление.
В связи «Один к одному» любая из двух таблиц может быть главной. Главенство определяется тем, от какой таблицы вы ведете связь. В связи «Один к многим» главная таблица «Один».
Запросы
Запрос – это главное, для чего создается любая база данных. В реляционных базах данных для создания запросов используется язык структурированных запросов SQL (Structured Query Language). Поскольку Microsoft Access задуман как средство создания баз данных для непрофессионалов, для вполне успешной работы в нем не обязательно знать язык SQL. Запрос можно создать с помощью мастеров, а также в режиме QBE (Query By Example). Любой запрос, сделанный с помощью мастера запросов или с помощью QBE, Microsoft Access сам переведет в SQL. Правда, он может сделать это (в случае, конечно, сложного запроса) хуже, чем квалифицированный программист. Немного можно подправить ситуацию с помощью оптимизатора запросов, но лучше, конечно, постараться изучить язык SQL, если вам приходится много работать с базами данных.
Результатом выполнения запроса является таблица, которая существует только до закрытия запроса. Запрос хранится в виде программы на SQL, это экономит память.
В Microsoft Access может быть создано несколько видов запроса.
Запрос на выборку – выбирает данные из одной таблицы или запроса (однотабличный запрос) или данные из нескольких связанных таблиц и других запросов (многотабличный запрос). В случае многотабличного запроса таблицы обязательно должны быть связаны. Выбор может происходить при некоторых условиях отбора, например, из группы студентов отобрать только девочек.
Запрос на создание таблицы – в результате в новую таблицу будут отобраны данные, удовлетворяющие каким-то условиям, из нескольких таблиц. Эта созданная таблица будет сохранена, как и созданная пользователем.
Запрос на удаление – из таблицы будут удалены данные, удовлетворяющие условию.
Запрос на добавление – в таблицу будут добавлены данные
Запрос на обновление – данные в таблице будут пересчитаны.
При работе с запросами существует три основных режима: режим конструктора, режим таблицы и режим SQL.
Формы
Формы нужны для представления удобного и интуитивно понятного интерфейса пользователя для работы с данными. Формами называются настраиваемые диалоговые окна, сохраняемые в базе данных в виде объектов специального типа. Формы являются объектами базы данных, так же как таблицы и запросы. Формы используются для вывода результатов запросов на экране, а также для удобной работы с таблицами. Работая с формой, пользователь может вводить, изменять, удалять записи таблиц. Формами можно управлять программно с помощью процедур VBA.
Форма содержит элементы управления, с помощью которых осуществляется доступ к данным в таблицах. Элементами управления являются текстовые поля для ввода и правки данных, кнопки, флажки, переключатели, списки, надписи, а также рамки объектов для отображения графики и объектов OLE. Создание форм, содержащих необходимые элементы управления, существенно упрощает процесс ввода данных и позволяет предотвратить ошибки. Также с помощью встроенных функций в вычисляемых элементах управления могут быть вычислены какие-то итоговые значения. С помощью кнопок на формах можно легко настроить различные возможности работы: поиск нужной записи, открытие нужной формы, печать отчета и т.д.
Также, используя свойства формы, можно настроить ограниченный доступ пользователя к каким-то данным.
При работе с формами используется три основных режима: режим формы, режим макета и режим конструктора. Режим формы предназначен для ввода, просмотра и корректировки данных таблиц, на основе которых построена форма. Режим макета обеспечивает просмотр данных почти в таком же виде, в каком они отображаются в режиме формы, и в то же время позволяет изменять форму. В этом режиме элементы формы можно перетаскивать в другие места, редактировать содержимое надписей, изменять формат и т.д. Режим макета позволяет настраивать внешний вид формы, может быть использован для внесения большинства изменений. Иногда выдается сообщение о том, что невозможно выполнить действие в режиме макета и надо переключиться в режим конструктора. Режим конструктора предназначен для разработки формы с помощью полного набора инструментов, для использования всех элементов управления. В этом режиме можно разработать форму с нуля, но обычно в режиме конструктора ее дорабатывают после создания мастером. Просмотр данных в этом режиме не предусмотрен.
Можно создавать форму по одной таблице или запросу (однотабличные формы) или по нескольким (многотабличные). В случае многотабличной формы таблицы должны быть связаны.
Отчеты
Отчеты нужны для вывода на печать результатов работы с базой данных. Отчет может создаваться с помощью мастера или в режиме конструктора отчетов. Во многих случаях удобнее создавать отчет с помощью мастера, а в режиме конструктора исправлять то, что не понравилось. Новое, что появилось еще в Microsoft Access 2007, это режим макета. В режиме макета легко привести созданный отчет в соответствие с заданными требованиями. Ориентируясь на данные отчета, можно отрегулировать ширину столбцов, высоту строк, изменить их порядок, добавить уровни группировки. Можно добавить в отчет новые поля.
Отчет можно сделать по одной таблице или по одному запросу (однотабличный отчет) или по нескольким таблицам и запросам (многотабличный). В случае многотабличного отчета таблицы должны быть связаны. В отчете могут быть проделаны необходимые вычисления, для этого существуют вычисляемые поля.
Сводные таблицы и диаграммы
В Microsoft Access любая таблица, запрос или форма могут быть представлены в режиме сводной таблицы и диаграммы. Сводные таблицы и диаграммы позволяют анализировать данные большого объема и различной сложности. При этом сводная таблица только использует данные источника, изменять данные источника через сводную таблицу невозможно.
Макросы
Для автоматизации выполнения задач, связи различных объектов необходимо использовать средства программирования. Язык программирования VBA (Visual Basic for Applications) является общим средством программирования для всего Microsoft Office.
Простейшим языком программирования, позволяющим добавлять возможности по управлению и автоматизации, является язык макросов. Для большинства пользователей-непрофессионалов создание макроса гораздо проще, чем написание кода VBA. В Web-приложениях Microsoft Access, базирующихся на базах данных, опубликованных в SharePoint, для программирования необходимо использовать только макросы, так как код VBA несовместим со средствами Web-публикации.
Макрос – это программа, состоящая из последовательности макрокоманд (макрос от слова «макрокоманда»). Макрокоманда – это инструкция, ориентированная на выполнения определенного действия над объектами Microsoft Access и их элементами. Имеющийся в пакете набор макрокоманд (около 50) реализует большинство нужных разработчику действий, необходимых для решения задач.
Microsoft Access предоставляет возможность создавать в макросе вложенные макросы. Вложенный макрос имеет имя и может содержать любые макрокоманды. Имеет смысл объединять несколько макросов в одном, если они связаны с решением одной задачи или используются при работе с одним объектом.
Глава 8. Microsoft powerpoint 2010
Введение
Важной компонентой MS Office 2010 является среда Microsoft PowerPoint 2010, которая служит для создания презентаций
Рис. 5 Логотип программы
Основной тип документа ‑ презентация. Под презентацией в данном контексте будем понимать файл, содержимое которого представляет совокупность сменяющих друг друга слайдов (электронных страниц), представленных на экране монитора или экране проектора. Во время демонстрации присутствующие видят чередование кадров, где могут присутствовать тексты, различные виды графических изображений, видео-фрагменты, звуки и способы подачи этих материалов.
Основным продуктами, получаемыми средствами этого пакета являются файлы (более чем двадцать типов).
Рис. 6 Типы документов в MS Power Point 2010.
Среда MS PowerPoint 2010 это мощный инструмент подготовки и демонстрации самой различной информации. Это и встроенные инструменты работы с графикой и видео, создание новых образов для текстов. Новые приемы показа и многое другое. Рассмотрим эти возможности.
Основные приемы работы с Microsoft Office PowerPoint 2010
Версию Microsoft Office PowerPoint 2010 (в сравнении с PowerPoint 2003) отличает новый дизайн и новые принципы организации интефейса. В нем координально изменился способ доступа ко всем командам. Компания Microsoft предлагает сборки всех необходимых опций на отдельных этапах работы над документом. В качестве основного инструмента представлена лента, которая тянется через все окно.
Рис. 7 Стартовое окно программы Office PowerPoint 2010
На этой иллюстрации имеются следующие объекты
1 - Вкладка Слайды. Она содержит эскизы, то есть миниатюрное представление всех слайдов, показываемых в области Слайд. На вкладках расположены команды, сортированные по группам.
2 - Область Слайд. Здесь можно работать непосредственно с отдельными слайдами презентации.
3 - Область Заголовок слайда. Поля с пунктирными границами, являются частью макетов большинства слайдов. Эти поля содержат текст либо такие объекты, как диаграммы, таблицы и рисунки и называются прототипами.
4 - Заметки к слайду. Эта область в обычном режиме предназначена для ввода заметок к слайду. Можно распечатать и раздать заметки аудитории или использовать их для справки во время показа презентации в режиме докладчика.
5 - Информационная панель, на которой показано число слайдов и язык презентации, справа внизу расположена панель для выбора режима просмотра слайдов и установки масштаба.
Как и в других версиях, есть справка, которую также можно открыть, нажав на клавишу <F1>.
Лента.
Вся работа организуется лентой. На ленте постоянно отображены следующие вкладки: Файл, Главная, Вставка, Дизайн, Переходы, Анимация, Показ слайдов, Рецензирование, Вид. Во время работы над презентацией на ленте отображаются вкладки, помеченные особым цветом. Это контекстные вкладки, появляющиеся по мере необходимости и содержат специальные инструменты форматирования для работы с рисунками и графическими элементами.
Рассмотрим основные группы действий:
Файл - представляет обычные (стандартные) команды работы с файлами, такие же, как и в других приложениях MS Office.
Главная - включает буфер обмена, группу работы со слайдами, группу работы с текстом и шрифтом, группу работы с абзацами, группу рисования и группу редактирования.
Вставка - обеспечивает вставки таблиц, изображений, иллюстраций, ссылок, текстов, символы, мультимедиа.
Дизайн – содержит подборку настроек параметров страницы, тем, фона. Здесь выполняется формирование дизайна презентации на основе наборов стилей оформления слайдов.
Переходы- содержит режимы просмотра, перехода к этому слайду, время показа.
Анимация – просмотр, анимация, расширенная анимация, время показа. Эта вкладка содержит возможности настройки действий на слайде с анимационными объектами и звуками.
Показ слайдов – содержит группы: настройка, начать показ слайдов, мониторы. Здесь организуется демонстрация слайдов.
Рецензирование – правописание, язык, примечания, сравнить. Вкладка предлагает различные инструменты, в том числе и для перевода.
Вид- содержит группы: режимы просмотра презентации, режимы образцов, показать, масштаб, цвет, окно, макросы. Здесь можно настроить различные опции представления презентации.
Панель быстрого доступа
П
ри
работе над презентацией приходится
выполнять общие или повторяющиеся
операции, которые не связаны с конкретным
этапом работы, Сохранять файлы, отменять
выполненные действия. Для таких действий
используется панель быстрого доступа,
расположенная слева над лентой. На эту
панель вынесены самые популярные
команды, которые могут пригодиться во
время работы в любом режиме. Этот набор
можно настроить под себя, добавив
какие-то свои кнопки
Рис. 8 Панель быстрого доступа
Используем Настройки панели быстрого доступа и выбираем нужные опции.
Новый проект.
Начало нового проекта обычно начинается с выбора макета при добавлении нового слайда. В стартовом окне программы Office PowerPoint 2010 слайд, который автоматически появляется в презентации, содержит две пунктирных рамки, одна из которых отформатирована для заголовка, а вторая - для подзаголовка. Порядок этих рамок на слайде называется макет. Макет определяет оформление элементов слайда, то есть присутствие и расположение заголовков, подзаголовков, списков, рисунков, таблиц, диаграмм, автофигур и видео фрагменов на слайде.
Рис. 9 Несколько различных макетов слайдов
При вставке в презентацию нового слайда, к нему автоматически применяется макет. Макет можно выбрать перед вставкой слайда. Для этого необходимо выбрать макет нового слайда в стартовом окне программы Office PowerPoint 2010 на вкладке Главная группа слайды. Из раскрывающегося списка выбираем шаблон.
Эти шаблоны помогают собрать нужную коллекцию и настроить внутренности. Достаточно щелчком активировать нужный элемент (таблицу, диаграмму, рисунок SmartArt, рисунок из файла, картинку или файл видео).
Р ис. 6. Варианты макетов слайдов
После добавления макета слайда создайте необходимый набор, достаточно их скопировать.
У
Рис. 10 Действия со слайдами, параметры вставки
добно использовать несколько презентаций и, перетаскивая слайды, собрать. Лишние слайды убираются после предварительного выделения клавишей DELETE или командой Удалить слайд контекстного меню.Использование шаблонов презентации.
В PowerPoint 2010 для создания новых презентаций можно использовать хорошо продуманные готовые шаблоны. Они позволят ускорить создание новых презентаций. Шаблоны имеют расширение *. potx. Для выбора используем вкладку Файл, выберем кнопку Создать, группу Доступные шаблоны и темы. В открывшемся окне выбираем необходимую группу действий. Здесь представлены обширные коллекции среды и существуют возможности добавления из коллекций ИНТЕРНЕТа или своих собственных.
Д
Рис. 11 Варианты выбора коллекции шаблонов.
ля загрузки новых шаблонов из Интернета выберите Шаблоны оформления и слайды, подгруппу Шаблоны Office.com. Нужная категория шаблонов и загружается с сайта Office.com на компьютер.
П
Рис. 12 Варианты подгруппы Шаблоны Office.com
резентация может быть многопрофильной (ориентированной на различную аудиторию), поэтому, часть слайдов можно делать доступными только своей группе. Чтобы спрятать слайд от показа, выберем его правой кнопкой мыши и применим команду Скрыть слайд.
В организации стандартной презентации обычно применяются следующие слайды:
Титульный слайд.
Вводный слайд, содержащий основные разделы.
Один слайд для каждого раздела или области, перечисленной на вводном слайде.
Итоговый слайд, с заключением по презентации.
П
ри
определении нужного количества слайдов
рассчитывается общее время презентации
исходя из стандарта: слайд на экране в
процессе показа 3-4минуты.
Рис. 13 Иллюстрация по команде Скрыть слайд
Содержание слайдов.
Текстовые фрагменты.
Атрибуты стиля текста включают следующие понятия: гарнитура шрифта; начертание; кегль; интерлиньяж; межбуквенный просвет; междусловный пробел; выключка; отступ первой строки; втяжка (отступы справа и слева); межабзацные отбивки; другие приемы оформления. Мы их рассматривали при знакомстве c MS WORD. Практически в каждом слайде мы используем текстовые фрагменты, для их оформления используем шрифты. Они входят в комплект системы Windows, разрабатываются производителями приложений и поставляются вместе с ними. В PowerPoint используются Microsoft ТruеТуре шрифты. Многие издательские или офисные программы содержат свои шрифты, как правило, эти шрифты не являются кириллическими, и поэтому их использование в России ограничено. Выделяют условные группы шрифтов:
Виды
шрифтов изображены на рисунке. Рис. 14 Оформление шрифтов При необходимости можно воспользоваться панелью управления Windows и просмотреть ранее установленные шрифты.
Рис. 15 Установленные шрифты. Для установки нового шрифта используются Файл - Установить шрифт и выбирается место хранения новых шрифтов. В Windows шрифты располагаются в Windows\Fonts, шрифт заносится в системный реестр, после чего становится доступным для всех приложений Windows (и для PowerPoint в частности). На слайде можно разместить различные варианты текста:
Чтобы добавить на слайд основной текст или заголовок в рамке, необходимы следующие действия. Щелкните внутри текстовой рамки и введите текст или вставьте его из буфера обмена.
Рис. 16 Ввод текста
Рамка с текстом растягивается и сжимается за любой из узлов, поэтому ее можно легко изменить под текст. Аналогично текст добавляется в выделенную фигуру или надпись. В зависимости от положения текста (перед или за фигурой), он может быть видимым или нет. Готовые текстовые фрагменты необходимо объединить с фигурами операцией Группировка.
И Hello, World! спользование оформления текстов SmartArt.В Рис. 14. Преобразование текста в рисунок Стили для текстовых полей Для фотографий и рисунков необходимо составлять подписи .
Рис. 1517 Пример создания текстового поля инструментом Надпись
Теперь активируйте вкладку Формат. Вкладка Формат поля Средства рисования содержит стили текстовых полей и других фигур.
Рис. 16 Вкладка Формат поля Средства рисования Активируйте надпись к изображению и наведите указатель мыши на любой стиль - будет выполнен предварительный просмотр стиля, примененного к текстовому полю на слайде. Выберите желаемый стиль для текстового поля, или несколько стилей сразу.
Рис. 17 Пример текстового стиля Рисунки. В презентациях активно используют всевозможные рисунки. Это вкладкаВставка группы Изображения и Иллюстрации: рисунки, картинки, снимки, фото, готовые автофигуры, SmartArtы и диаграммы. Работа с графикой Работа рисунками в PowerPoint 2010 выведена на новый уровень. Теперь вам не нужен Photoshop - в PowerPoint есть свой, неплохой графический редактор. На вкладке Формат в группе Изменения можно:
Рис. 18 Применение к фото художественных эффектов На вкладке Формат в группе Стили рисунков возможно применить к рисунку разнообразные макеты и эффекты (тень, отражение, свечение, сглаживание, рельеф, разнообразные повороты) и тому подобное, а на вкладке той же вкладке в группе Размер рисунок можно обрезать по фигуре , залить, вписать или изменить его размер .
Рис. 19 Пример действий с фото на вкладке Формат в группе Эффекты для рисунка Добавление таблицы в слайд В пакете программ Microsoft Office 2010 после создания таблицы в Office Word 2010 или Office Excel 2010 ее можно вставить в презентацию Office PowerPoint 2010, добавить какой-либо визуальный эффект. Можно создавать таблицы прямо в PowerPoint. Выберем слайд, затем на вкладке Вставка в группе Таблицы , кнопка Таблица.
Рис. 20 Создание таблицы мышью Или указать размер в явной форме: Число столбцов и Число строк.
Рис. 21 Размер таблицы Можно использовать копии таблиц из других пакетов, затем в приложении MS Power Point2010 вставить из буфера обмена. Для изменения стиля таблицы щелкните на таблицу, затем в группе Работа с таблицами на вкладке Конструктор в поле Стили таблиц выберите желаемый стиль. Эскизы стилей таблицы отображаются в коллекции экспресс-стилей в группе Стили таблиц в Power Point существует предварительный просмотр (предпросмотр) стиля таблицы.
Рис. 18 Примеры стилей оформления
Аналогичным же образом используются диаграммы Microsoft Office Excel 2010, мы можем передавать их в PowerPointо также через буфер бмена. |
|
Заметки пользователя.
Необходимая докладчику информация может быть оформлена в специальных полях, она помогает отслеживать все данные, нужные во время презентации. Хорошие заметки помогают лектору управлять аудиторией и избежать перегрузку слайда текстом.
Рис. 19 Пример презентации, содержащей заметки докладчика
Одновременно с работой над содержанием слайдов введите свои заметки под слайдом в области заметок. Чтобы упростить работу с областью заметок, ее можно увеличить, перетаскивая маркер разделения.
Колонтитулы.
Чтобы добавить номера слайдов, время и дату, эмблему компании, заголовок презентации или имя файла, имя докладчика и т. п., вверху или внизу каждой страницы выдачи или заметок или внизу каждого слайда, используйте колонтитулы на вкладке Вставка в группе Текст нажмите на кнопку Колонтитулы и выберите необходимое и примените.
Рис. 20 Окно Колонтитулы
Рецензирование.
Проверка орфографии в программе Office PowerPoint 2010 включена автоматически, по окончании работы с презентацией рекомендуется еще раз проверить орфографию. Для удобства проверки орфографии в презентации переместитесь к началу своей презентации. В группе Правописание вкладки Рецензирование выберите команду Орфография. После исправления ошибки осуществляется дальнейшая проверка.
Рис. 21 Найдена ошибка в слове "Изучяем"
Возможности перевода. В PowerPoint 2010 имеется встроенный переводчик, который может перевести текст, написанный на другом языке, например фразы или абзацы, отдельные слова или весь файл. Кроме того, можно создать документ на одном языке, а затем перевести его на другой язык с помощью службы машинного перевода Microsoft Translator. Выберите Рецензирование-Перевод.
Рис. 22 Окно рецензирование, перевод.
В группе Перевод на вкладке Рецензирование выберите язык для перевода (мы будем переводить с русского на английский):
Рис. 23 Выбор языка для перевода
Выполните команду Перевести выделенный текст. Результат перевода появится в области Перевод в разделе Справочные материалы.
Рис. 24 Работа с переводчиком
Использование формул, символов.
В вкладке Вставка группа Символы выбираем кнопку список Формула, команду Вставить формулу. Существуют готовые шаблоны или можно набрать новую формулу.
Рис. 25 Вкладка Конструктор раскрыта для работы с формулами
Рис. 26 Вставка формулы
Д
ля
вставки в презентацию символов, например,
знака бесконечность нажмите на значок
Символ и выберите желаемый символ
из набора.
Рис. 27 Набор математических символов
Работа со звуком в презентациях на компьютере
Цифровой звук- это способ представления аналогового электрического сигнала посредством дискретных численных значений его амплитуды. Рассмотрим, какие характеристики имеет звук. Громкость звука характеризуется единицей измерения - децибел, представляющая собой относительную величину, показывающую насколько сильнее или слабее звук относительно своего нуля. Если принять за ноль тишину, то:
шепот - 20 дБ;
разговор - 50 дБ;
шум самолёта - 120 дБ.
Вторая характеристика звука высота. Чем больше число ее колебаний, тем выше звук. Количество этих колебаний в секунду, называют частотой и измеряют в Герцах [Гц].
Ввести аналоговый звук в компьютер, можно оцифровав его. То есть, в каждой временной точке можно измерить значение амплитуды звукового сигнала и записать ее в виде чисел. Оцифровка звукового сигнала включает в себя два процесса - процесс дискретизации(осуществление выборки) и процесс квантования(замены реальных значений аналогового звукового сигнала его приближенными величинами). При работе на ПК широкое распространение получили форматы *.mp3, *.wav и *.mid. Обычно формат аудиофайла и его расширение определяет кодек. Звук можно вставить разными способами(Вставка.Мультимедиа.Звук):
Звук из файла
Звук из организатора клипов
Записать звук
Рис. 28 Выбор способа воспроизведения звука.
Выбор
Автоматически или По щелчку
приведет к появлению на слайде значка
,
который показывает, что пользователем
выбран звук. Чтобы вставить звуковой
файл из организатора клипов, в контекстном
меню из строки Звук из организатора
клипов выбирается элемент списка до
и вставляется на слайд. Воспроизведение
звука настраивается автоматически или
по щелчку на значке звука. Звук
воспроизводится до конца, а затем
отключается. Если вы желаете проигрывать
звук во время показа нескольких слайдов,
то выберите в группе Параметры звука
в списке Воспроизведение звука
выберите строку Для всех слайдов.
Звуковой файл или слайд-шоу в зависимости
от того, что короче.
Рис. 29 Выбора варианта звучания при показе всех слайда
Сегодня во всех сферах деятельности человека на смену аналоговым сигналам приходят цифровые. Так, цифровое видео- термин, обозначающий группу устройств, в которых видео сигнал записывается и обрабатывается в цифровой форме. Компьютерное цифровое видео представляет собой последовательность цифровых изображений и связанный с ними звук, т.е. мультимедиа. Наиболее важная характеристика цифрового видеосигнала - это качество видеоизображения. Требования к качеству зависят от конкретной задачи. Иногда достаточно, чтобы картинка была размером в четверть экрана с палитрой из 256-ти цветов (8 бит), при скорости воспроизведения 15 кадров/сек. В других случаях требуется полноэкранное видео (768 на 576) с палитрой в 16,7 млн. цветов (24 бит) и полной кадровой разверткой (25 или 30 кадров/сек.). Очевидно, что чем выше частота кадров, глубина цвета и разрешение, тем качество цифрового изображения лучше.
Добавление видеофрагмента и анимации в презентацию.
Видеофрагментом называется видео файл с расширением ASF, AVI, MPG (MPEG) или WMV. Обычно видеофрагмент включает речевое сопровождение, например ‑ речь руководителя, который не может лично присутствовать на презентации. Видеофрагмент можно использовать для демонстрации или обучения. Также в презентациях можно использовать файл формата GIF. Средство "Клип" пакета Microsoft Office распознает файлы формата GIF как видео клипы. Существует несколько способов запуска воспроизведения видеофрагмента или GIF-файла:
автоматическое воспроизведение при показе слайда,
воспроизведение по щелчку мыши,
воспроизведение с задержкой в соответствии с установленными значениями интервала времени.
Работа с видеофрагментами.
Видеофрагмент также можно воспроизводить при показе нескольких слайдов или непрерывно в ходе всей презентации. Можно также установить некоторые параметры видеофрагмента.
В отличие от изображений или рисунков, файлы видеофрагментов всегда связаны с презентацией, а не внедрены в нее.
Добавление видеофрагмента в презентацию выделите слайд, в который нужно добавить видеофрагмент или анимированный GIF-файл. На вкладке Вставка в группе Мультимедиа щелкните на стрелку в разделе Видео.
Рис. 30 Вставка фильма в слайд
Далее щелкните на команде Видео из файла, выберите папку, в которой находится файл, затем дважды щелкните файл, который нужно добавить .
Рис. 31 Выбор видеофайла для вставки в слайд
Вы можете также выбрать видео из коллекции, поставляемой совместно с программой. Для этого в группе Мультимедиа щелкните на команде Видео из организатора клипов, выберите нужный клип в области задач, затем щелкните на нем для добавления видео в слайд.
Рис. 32 Вставка GIF-файла из организатора клипов
Рис. 33 Код видео вставляется в специальное окно в PowerPoint
Результат показан на рисунке.
Рис. 34 Видео из сайта вставлено в PowerPoint 2010
Предварительный просмотр презентации.
Когда презентация готова, дальнейшие действия зависят от того, кто будет показывать презентацию, а также от того, где она будет показываться, и какое оборудование будет использоваться. Далее вам могут потребоваться следующие операции.
Просмотр презентации на вашем компьютере в режиме показа слайдов. Проверка орфографии.
Печать презентации или ее части. В режиме предварительного просмотра проверьте, как будут выглядеть отпечатанные раздаточные материалы и заметки, и задайте для них нужные параметры печати.
Размещение презентации на компакт-диске или на компьютере, к которому будет доступ во время показа презентации.
П
осле
создания презентации просмотрите ее в
режиме показа слайдов. Режим показа
слайдов предполагает полноэкранное
отображение слайдов. В этом режиме можно
оценить вид и поведение слайдов при их
показе. Чтобы переключиться в режим
показа слайдов, щелкните на вкладку
Показ слайдов, затем выберите команду
в группе. Начать показ слайдов
Рис. 35 Выбор способа (режима) показа презентации
Для запуска презентации с первого слайда выберите С начала.
Чтобы начать показ со слайда, в настоящий момент находящегося в области Слайд, выберите С текущего слайда.
Чтобы начать показ слайдов в случайном порядке нажмите на кнопку Произвольный показ. В этом окне можно задать последовательность показа слайдов в любом, нужном вам порядке.
Рис. Задание произвольного показа слайдов презентации
Один из способов переключения между слайдами при их просмотре - просто щелкать кнопкой мыши. Чтобы закрыть режим показа слайдов, нажмите на клавишу ESC. Вновь установится предыдущий режим просмотра, как правило, обычный режим. Там можно внести необходимые изменения в слайды, а затем снова перейти к предварительному просмотру слайдов.
Широковещательный показ слайдов
Новинка PowerPoint 2010 - появление инструмента Широковещательный показ слайдов. Благодаря возможности широковещательного показа слайдов PowerPoint 2010 докладчик может демонстрировать презентацию через Интернет любому пользователю в любой точке мира. Достаточно отправить ссылку (URL-адрес) аудитории, и любой приглашенный зритель сможет видеть презентацию в своем браузере синхронно с докладчиком. URL-адрес показа слайдов можно отправить зрителям по электронной почте. Для создания широковещательного показа презентации выполните указанные ниже действия:
На вкладке Показ слайдов в группе Начать показ слайдов нажмите на кнопку Широковещательный показ слайдов- откроется диалоговое окно Широковещательный показ слайдов
Рис. 36 Окно Широковещательный показ слайдов
Далее:
Если необходимо разместить презентацию на сервере службы, указанной в списке Служба вещания, то нажмите на кнопку Начать широковещательный показ.
Если необходимо использовать другую службу для размещения показа слайдов, выберите команду Изменить службу вещания Broadcast Service.
Для демонстрации вашей презентации через Интернет вы должны быть зарегистрированы на сайте Windows Live . Дополнительные сведения о широковещательном показе слайдов см. в Справке по программе PowerPoint, набрав в поиске текст "Показ презентации удаленной аудитории".
Рис. 37 Регистрация на WindowsLive.
Новинки MS PowerPoint .
Не все новинки PowerPoint 2010 можно увидеть на Ленте - некоторые скрыты, чтобы не загромождать интерфейс. Тем не менее, если вы знаете возможности программы, то вы всегда ими сможете воспользоваться. Давайте проиллюстрируем сказанное на примере булевых операций с фигурами, которых изначально в интерфейсе нет. Булевы операции с фигурами расширяют возможности для творчества при работе с фигурами. Они позволяют совершать такие действия с произвольными фигурами, как объединение двух или нескольких выделенных фигур с совмещением, пересечением или вычитанием.
Для использования действий с произвольными фигурами добавьте их на ленту или на панель быстрого доступа. Для этого перейдите на вкладку Файл, откройте раздел Параметры,Настройка панели быстрого доступа выберите из списка Выбрать команды пункт Все команды.
Рис. 38. Выбираем строчку Все команды
Затем
добавьте нужные команды Пересечение
фигур, Вычитание фигуры и Объединение
фигур.
Рис. 39 Переносим булевы команд на панель.
Рис. 40 Булевы операции с графикой
Продолжается развитие технологии представления информации – «лента», появившейся еще в версии 2007. Рассмотрим опцию Снимок вкладки Вставка.
Рис. 41 Окно Вставка.Кнопка - Снимок.
На вкладке Вставка разработчики предусмотрели новую функцию - снимок экрана, она находится в группе Иллюстрации. Кнопка "Снимок"позволяет вставить в документ рисунок любой открытой, не свернутой в панель задач программы, с помощью вырезки фрагмента любой части экрана . Эта функция может быть полезна докладчикам, иллюстрирующим свой доклад снимками экрана.
Рис. 42 Вкладка Вставка, опция Снимок
Работа с инструментом "Снимок"
Новый инструмент снимок открывает новые возможности работы в PowerPoint. Во-первых, он служит для вставки рисунка любой программы, не свернутой в кнопку панели. Во-вторых, он позволяет сделать вырезку экрана, чтобы вставить рисунок любой части экрана.
Для знакомства с инструментом Снимок откройте несколько приложений, например Дубль ГИС и Калькулятор. В PowerPoint выполните команду Вставка-Снимок.
Рис. 43 Мы видим три открытых приложения – Дубль ГИС, Калькулятор, папку Конкурс2011. Эти операции напоминают действие клавиш Alt+PrtScr. Интерфейс калькулятора сфотографирован и вставлен в слайд
Теперь
выполните команду Вставка-Снимок-Формат
Обрезка по фигуре.
Рис. 44 Вид приложения в режиме Обрезка-ромб.
Новые темы презентаций
Н
а
вкладке Дизайн
в группе Темы
расположены около 40 старых и новых тем
для вашей презентации. В каждой из тем
можно регулировать цвет, изменить шрифт
и применять различные эффекты .
Рис. 45 Пример оформления одного слайда разными темами
Новые анимации
На вкладке Анимация, в группе Расширенная анимация в PowerPoint 2010 теперь появилась возможность применять к объекту более одной анимации. При этом все команды группы "Расширенная анимация"предназначены для настройки параметров второй примененной в слайде анимации.
Рис. 46 К тексту применено два эффекта анимации: сначала он падает вниз, затем возвращается и меняет цвет с черного на красный
Широковещательный показ слайдов.
На вкладке Показ слайдов появилась новая кнопка Широковещательный показ слайдов. Благодаря ей пользователи смогут увидеть вашу презентацию с помощью своего веб-браузера, даже не имея установленного приложения PowerPoint 2010.
Рис. 47 На рисунке показано местоположение кнопки Широковещательный показ слайдов
Однако, надо иметь ввиду, что для обеспечения широковещательного показа докладчик должен выполнить команду Файл-Сохранить и отправить-Сохранить на веб-сайте-Регистрация Windows Live .
Рис. 48 Путь для регистрации пользователя PowerPoint на Windows Live
Изменение вкладки Рецензирование
На вкладке Рецензирование изменениям подверглись группы Правописание, Язык и была добавлена новая группа Сравнить. Теперь на вкладке Рецензирование в группе Перевод появилась возможность перевести весь текст или его часть на один из 20 языков.
Видео инструменты.
На вкладке Формат в группе Работа с видео в PowerPoint 2010 можно редактировать вставленные в презентацию видеофайлы и при этом не использовать никаких сторонних программ . Корректируется яркость и контрастность, настройка цвета, заставки перед воспроизведением, сброс всех настроек. Встроенный в PowerPoint видеоредактор позволяет обрезать видео и изменить высоту и/или ширину видеокадра. Команда Формат - Редактирование дает возможность указать на время появления и исчезновения видео, а также задать время начала и окончания видеоклипа.
Рис. 49 Изменение формы видеокадра
На вкладке Воспроизведение можно произвести несложный нелинейный монтаж видео, задав время появления и исчезновения, а также время начала и окончания клипа .
Рис. 50 Монтаж видео на вкладке Воспроизведение
Попутно заметим, что для вывода презентации на экран PowerPoint 2010 использует стандартные функции DirectX и как следствие на слайдах без проблем отображается любое видео, которое проигрывается в операционной системе.
Защита презентации.
В PowerPoint 2010 командой Файл-Сведения-Разрешения вы можете произвести администрирование презентации, т.е. сделать ее не редактируемой, установить пароль для открытия данной презентации, установить другие ограничения на копирование и печать презентации .
Рис. 51 Установка разрешений
Таким образом, этот пакет является одним из самых развитых с точки зрения возможностей использования самых различных объектов в электронном документе. Он дает возможности повышения эффективности решаемых задач и достижению максимального эффекта.
Глава 9. Microsoft outlook – система планирования дел и ведения переписки
Программа Microsoft Outlook появилась в Microsoft Office 97, она пришла на смену двум программам предыдущих версий Microsoft Office – планировщику дел Schedule+ и клиенту электронной почты Microsoft Mail или Microsoft Exchange. Эта программа приобретает особое значение в связи с новыми возможностями, открывшимися в наш век электронный коммуникаций, локальных и глобальных электронных сетей.
Современный офис немыслим не только без персональных компьютеров, но и без объединяющих этот компьютер локальной сети и выхода в глобальную сеть. Редкое дело может быть выполнено одним конкретным исполнителем и не требует никакого взаимодействия с коллегами. Для успешной работы необходимо как наличие сетевого оборудования и сетевого программного обеспечения, непосредственно поддерживающего работу сети, так и удобное программное средство связи занятых совместной деятельностью сотрудников, позволяющее наладить их эффективное взаимодействие и обмен данными.
Система планирования дел и ведения переписки Microsoft Outlook позволяет организовать:
Обмен электронными сообщениями, хранение и поиск нужных сообщений в специальных папках, которые могут располагаться на почтовом сервере или на жестком диске вашего компьютера, вывод сообщений на печать;
передачу файлов, созданных в других приложениях, например, документов Word или рабочих книг Excel, и сопровождающих их пояснительных записок и сообщений;
ведение электронного календаря, позволяющего планировать ваши дела и представлять нужные данные в наиболее удобной форме – ежедневника, понедельного или помесячного планировщика;
ведение личной адресной книги контактов, позволяющей хранить телефоны и иную информацию о лицах, с которыми нам приходиться иметь дело;
ведение журнала, в котором в хронологическом порядке автоматически фиксируются документы Microsoft Office, с которыми вы работали, что позволяет отыскивать документы не по их местоположению, а просто по времени работы с документами;
наконец, создание заметок, которыми можно пользоваться примерно так же, как и обычной бумагой для заметок или популярными ныне наклейками с липкой полоской на обратной стороне.
Как и другие приложения Microsoft Office, Outlook может быть использован как на отдельно взятом компьютере, так и на компьютере, включенном в локальную или глобальную сеть. Следует, однако, отметить, что основным назначением Outlook является организация электронных коммуникаций, потому эта программа является по существу сетевым приложением. Для того чтобы по-настоящему использовать все возможности Outlook, он должен быть установлен на компьютере, являющемся одним из узлов сети. Только в этом случае можно использовать почту, передачу файлов, согласованное планирование встреч или совещаний с другими пользователями Outlook и другими подобными возможностями.
Основные элементы интерфейса
По умолчанию после загрузки программа открывается на странице Outlook сегодня, представляя обзор актуальной сегодня информации: запланированные на сегодня встречи, задачи, непрочитанная почта и т.д.
Outlook содержит компоненты: почта, календарь, контакты, задачи, заметки, дневник. Данные всех компонент хранятся в личных папках Outlook. Для элементов любого типа существуют стандартные папки. Например, для почты – папки Входящие и Исходящие, папка Контакты, Задачи и др. Можно создать дополнительные папки для любого типа элементов.
Для быстрого доступа к отдельным папкам служат ярлыки, которые может создать и настроить пользователь.
Для переключения между различными компонентами и папками служит область перехода (в левой части окна). Другой способ переключения – команда меню Перейти. Область перехода представляет собой средство быстрого доступа ко всем компонентам Outlook. Вид области перехода изменяется в соответствии с выбранным в данный момент компонентом. Например, в областях Контакты, Задачи, Заметки и Дневник имеется список стандартных представлений, которыми можно воспользоваться для быстрой смены представлений. Этот список можно скрыть или показать, воспользовавшись командой Вид, Упорядочить по, Показывать представления в области перехода.
Для просмотра данных, с которыми работают компоненты Outlook, служит область просмотра задач (в середине окна).
В верхней части находится строка меню и панель инструментов, в нижней части – строка состояния. Можно отключить область перехода, область чтения, строку состояния и панель инструментов, воспользовавшись командой Вид.
При переключении между компонентами меняется вид области перехода, области просмотра, функции меню и кнопок панели инструментов. Так, при работе с почтой часть области просмотра данных занимает область чтения сообщений.
С любой компонентой Outlook связано ее стандартное представление: способ отображения данных этого компонента, список доступных представлений зависит от выбранного в данный момент компонента.
Сменить стандартное представление на более удобное можно либо с помощью списка в области перехода, либо командой Сервис, Организовать.
В любой компоненте Outlook можно создать собственное представление, взяв за основу одно из стандартных и модифицировав его.
В области Почта есть в верхней части Избранные папки, в них входят Входящие, Непрочтенные письма и т.д. Можно добавить туда папки поиска, например, это делается перетаскиванием. Можно удалить из избранных.
В нижней части окна перехода отображаются кнопки для переключения областей, которые не помещаются в окне. Они представлены в виде маленьких кнопочек. Попробуйте уменьшить размер окна. Кнопка Настройка кнопок (>>) позволяет различными способами настраивать вид кнопок переключения и порядок их отображения.
Заметки
Заметки – это электронный эквивалент бумажного блокнота с отрывными листами. Заметки используются для записи вопросов, ценных мыслей, напоминаний и многого другого, что обычно записывается в бумажный блокнот. При работе заметки остаются открытыми и отображаются на экране. Это особенно удобно, если в заметках хранятся сведения, которые могут понадобиться позднее, например, указания или текст, который надо вставить в другие документы. Чтобы создать заметку, находясь в разделе Заметки, нажмите кнопку Создать. Введите текст заметки. Заметка может оставаться открытой при работе. При внесении изменений в заметку они сохраняются автоматически. Нажав на значок в левом верхнем углу заметки, можно получить доступ к дополнительным настройкам и действиям. Закрыть – как обычно.
Задача
Задачей называется поручение личного или служебного характера, выполнение которого можно проследить. Задача может быть разовой или повторяющейся. Повторение задачи происходит с одинаковым интервалом или в зависимости от даты ее выполнения. Например, задачей является отправление руководителю отчета каждую пятницу или поход в парикмахерскую через месяц после стрижки.
Календарь
Календарь Microsoft Outlook используется для планирования различных мероприятий, таких как встречи, собрания, события.
Встреча – данное мероприятие происходит в определенное время определенного дня.
Собрание – как и встреча, собрание происходит в определенное время определенного дня. На собрании обычно встречается группа людей.
Событие – важное событие, например, праздник, конференция, день рождения. Событие происходит в определенный день, но не в определенное время.
Любое из этих мероприятий может быть единовременным или повторяющимся – ежедневно, еженедельно, ежемесячно или ежегодно. Эти мероприятия создаются как элементы календаря, сохраняются и отображаются в календаре. Календарь можно настроить так, чтобы он показывал день, несколько дней, неделю и т.д.
Контакты
Обычно Microsoft Outlook сохраняет следующую информацию о контакте: имя контакта, адрес, телефонный номер, номер факса, адрес электронной почты, фотографию контактного лица.
Microsoft Outlook использует контакты для различных целей:
адресация сообщений электронной почты
адресация обычной почты
выполнение телефонных звонков
отправка факса
планирование встреч
назначение заданий.
Microsoft Outlook сохраняет контакты в Адресной книге. Если Microsoft Outlook используется в качестве клиента Exchange Server, папка Контакты будет находиться в хранилище Exchange.
Microsoft Outlook как почтовая программа
В Microsoft Outlook 2010 намного удобнее настраивается электронная почта. Непрофессионалу было тяжело понять имя входящего почтового сервера, исходящего, да и просто тяжело написать их имена без ошибок. Новая версия настраивает учетную запись почты (если ввести адрес распространенных почтовых серверов) практически без участия пользователя.
Глава 10. Основы алгоритмизации и программирования
Понятие алгоритма
В повседневной жизни нам встречаются различные правила, инструкции и рецепты. Это могут быть, например, правила правописания или правила дорожного движения, инструкции по использованию бытовой техники, последовательности приема лекарств и кулинарные рецепты. Все это различные примеры алгоритмов.
Алгоритм – это описание последовательности действий, в результате выполнения которых решается поставленная задача.
Происхождение термина связано с именем учёного Абу Абдуллах Мухаммеда ибн Муса аль-Хорезми (алгоритм — аль-Хорезми). Около 825 года он написал сочинение, в котором впервые дал описание придуманной в Индии позиционной десятичной системы счисления. Аль-Хорезми сформулировал правила вычислений в новой системе. Приблизительно в это же время индийские цифры начали применять и другие арабские учёные. В первой половине XII века книга аль-Хорезми в латинском переводе проникла в Европу. Переводчик, имя которого до нас не дошло, дал ей название Algoritmi de numero Indorum («Алгоритми о счёте индийском»).
Не каждое описание последовательности действий можно назвать алгоритмом. Для этого должны быть выполнены определенные условия. Их называют свойствами алгоритмов.
Свойства алгоритмов.
Дискретность
Детерминированность
Понятность и выполнимость
Конечность
Массовость
Результативность
Отсутствие любого из этих свойств не позволяет нам говорить об алгоритме.
Дискретность. Алгоритм должен состоять из отдельных действий, следующих в определенном порядке. Важно, что алгоритм выполняется шаг за шагом.
Детерминированность. По-другому это называют определенность. Любое действие должно быть строго и недвусмысленно определено в каждом случае. Алгоритм не должен допускать двойного толкования. Например, формальному исполнителю трудно определить, что значит «посолить по вкусу» или «варить до готовности».
Понятность и выполнимость. Два этих термина неразрывно связаны как между собой, так и с понятием исполнителя алгоритмов. Алгоритмы существуют не сам по себе. Они создаются для определенного исполнителя, которому предстоит совершить все запланированные действия. Если Вы купили новую бытовую технику, которой не умеете пользоваться, а инструкция написана, например, по-китайски, то, не зная китайского языка, Вы не сможете ее выполнить, значит для Вас эта инструкция – не алгоритм. Возможна и другая ситуация. Вам сообщили самый быстрый способ переправиться через реку: отойти от берега на 10 метров, разбежаться, прыгнуть, приземлиться на противоположном берегу. Эти инструкции невыполнимы для обычного человека и большинства рек.
Конечность. Каждое действие в алгоритме должно иметь возможность завершения. В целом алгоритм завершается за конечное число шагов. Приведем примеры нарушения этого свойства. Рецепт «принимать по 1 таблетке 3 раза в день» не регламентирует когда надо остановиться. Алгоритм «делить число пополам пока оно не станет отрицательным» никогда не остановится для исходного положительного числа.
Массовость. Это способность применять алгоритм к разным исходным данным или его применимость для решения некоторого множества задач. Например, алгоритмы сложения, вычитания, умножения и деления могут быть применены для любых чисел, причем не только в десятичной, но и в других позиционных системах счисления.
Результативность. По итогам работы алгоритма должен формироваться результат. В некоторых случаях он может сообщить, что цель не может быть достигнута, но и это будет хоть и отрицательный, но тоже результат.
Различают следующие способы записи алгоритмов:
Словесное описание (вербально)
В виде диаграмм, блок-схем
На алгоритмическом языке
На языке программирования
Вообще говоря, алгоритм вовсе не обязательно записывать. В древности люди не имели письменности, но алгоритмы приготовления разных снадобий передавались из уст в уста. Описанием алгоритма следует признать и видео с демонстрацией, например, последовательности упражнений.
Исполнители алгоритмов
Главная особенность любого алгоритма – формальное исполнение, позволяющее выполнять заданные действия (команды) не только человеку, но и техническим устройствам (исполнителям). Таким образом, исполнителями алгоритмов могут быть, например, человек, компьютер, принтер, робот-манипулятор, дрессированное животное, компьютерная программа, "черепашка" в Логомирах (геометрический исполнитель) и т.д.
Исполнитель алгоритма – это человек или автомат (в частности, им может быть процессор ЭВМ), умеющий выполнять некоторый, вполне определенный набор действий. В общем случае это устройство управления, соединенное с набором инструментов. Устройство управления понимает алгоритмы и организует их выполнение, командуя соответствующими инструментами. А инструменты производят действия, выполняя команды управляющего устройства. Прежде чем составлять алгоритм решения задачи, надо узнать, какие действия предполагаемый исполнитель может выполнить.
Эти действия называются системой команд исполнителя (СКИ). Только их и можно использовать.
Исполнитель вычислительных алгоритмов обычно называется вычислителем. Вычислитель может иметь дело с числами и переменными, обозначающими числа.
Исполнитель характеризуется:
Средой исполнения
Системой команд исполнителя
Отказами
Например, простейший исполнитель Робот из школьного учебника имеет систему команд: Направо, Налево, Вверх, Вниз. Его средой выполнения является клетчатое поле. Отказы исполнителя возникают, если команда вызывается при недопустимом для нее состоянии среды. Для такого робота отказ возникает, например, при попытке выполнить команду «Вверх» при наличии сверху препятствия.
Говорят, что исполнитель действует формально, если он не вникает в смысл того, что он делает, чаще всего даже не знает цели алгоритма. В процессе выполнения алгоритма не оптимизирует процесс.
Рассмотрим другие примеры исполнителей алгоритмов.
Музыкант, играющий на любом музыкальном инструменте по нотам. Алгоритмом для него является нотная запись музыкального произведения.
Калькулятор, совершающий с числами различные арифметические операции.
Стиральная машина, выполняющая ряд действий в соответствии с заданной программой стирки.
Токарный станок с ЧПУ (числовым программным управлением), вытачивающий на деталь по чертежу.
Компьютер, выполняющий заложенные в него программы.
Как мы уже знаем, алгоритм представляет собой последовательность команд из системы команд исполнителя (СКИ). Важно как эти команды взаимодействуют между собой, в каком порядке должны быть выполнены. Различный порядок выполнения команд дает разные виды алгоритмов.
По виду алгоритмы можно разделить на следующие категории:
Линейные алгоритмы
Разветвляющиеся алгоритмы
Циклические алгоритмы
Линейные алгоритмы
Линейным алгоритмом или линейным участком алгоритма называют описание последовательности действий, которые выполняются однократно в заданном порядке. Это самый простой вид алгоритмов. Выполняя такой алгоритм, исполнителю не надо ни о чем задумываться, не придется задавать никаких вопросов. Например, линейным алгоритмом является процесс сборки машины на конвейере или последовательность команд: «надеть носки», «обуть ботинки», «выйти из дома». Команды выполняются именно в том порядке, в котором они записаны.
Задача 1.
Определите значение целочисленных переменных a и b после выполнения фрагмента программы:
Бейсик |
Паскаль |
Алгоритмический |
a = 1234 b = (a MOD 100) * 10 a = a + (b \ 100) '\ и MOD – операции, вычисляющие результат деления нацело первого аргумента на второй и остаток от деления соответственно |
a:=1234; b:= (a mod 100)*10; a:= a + (b div 100); {div и mod – операции, вычисляющие результат деления нацело первого аргумента на второй и остаток от деления соответственно} |
a:= 1234 b:= mod(a,100)*10 a:= a + div(b,100) |div и mod – функции, вычисляющие результат деления нацело первого аргумента на второй и остаток от деления соответственно| |
Решение.
Вычисляется остаток от деления a на 100. Получаем 34. Поэтому переменная b становится равной 340. Поскольку частное от деления b на 100 равно 3, то добавляем тройку к переменной a. Получаем a = 1237.
Задача 2.
У исполнителя «Утроитель» две команды, которым присвоены номера:
1. Вычти 1
2. Умножь на 3
Первая из них уменьшает число на экране на 1, вторая – увеличивает его в три раза.
Запишите порядок команд в программе получения из числа 3 числа 16, содержащей не более 5 команд, указывая лишь номера команд.
(Например, программа 21211 – это программа, которая преобразует число 1 в 4.)
умножь на 3
вычти 1
умножь на 3
вычти 1
вычти 1
Решение.
Будем рассуждать от конечного числа 16. Так как 16 не делится на 3, то последняя выполненная команда не могла быть «умножь на 3», значит, это была команда «вычти 1». Значит, до этого имели число 17. Повторяя предыдущие рассуждения, делаем вывод, что и перед этим была команда «вычти 1» из числа 18. Это число делится на 3, значит, могло быть получено из 6 с помощью команды «умножь на 3». Следуя этой логике, имеем:
3-1=2, 2*3=6, 6*3=18, 18-1=17, 17-1=16
Таким образом, получаем из числа 3 число 16 за 5 шагов.
Ответ: 12211.
Понятие ветвления
Далеко не всегда нам достаточно производить выполнение команд именно в том порядке, как они записаны. Так происходило в линейных алгоритмах. В большинстве случаев в процессе совершения действий от исполнителя требуется оценить состояние среды исполнения и в зависимости от определенных условий выбрать дальнейший вариант действий.
Разветвляющимися называют алгоритмы, в которых выполняются разные действия в зависимости от некоторых условий. В отличие от линейных алгоритмов, в которых команды выполняются последовательно одна за другой, в разветвляющиеся алгоритмы входит условие, в зависимости от выполнения или невыполнения которого выполняется та или иная последовательность команд.
В качестве условия в разветвляющемся алгоритме может быть использовано любое понятное исполнителю утверждение, которое может соблюдаться (быть истинно) или не соблюдаться (быть ложно). Такое утверждение может быть выражено как словами, так и формулой. Таким образом, команда ветвления состоит из условия и двух последовательностей команд.
Команда ветвления, как и любая другая, может быть:
записана на естественном языке;
изображена в виде блок-схемы;
записана на алгоритмическом языке;
закодирована на языке программирования.
Блок-схема |
Паскаль |
Алгоритмический |
|
IF Условие THEN Действие_1 ELSE Действие_2; |
если Условие то Действие_1 иначе Действие_2 все |
Команда ветвления может находиться в полной и неполной форме. Неполная форма отличается от указанной выше тем, что в ней отсутствует ветвь «иначе». В случае выполнения условия происходит выполнение «Действия_1», а если условие не выполняется, никакого действия в рамках ветвления не происходит и исполнитель переходит к следующим командам алгоритма. Например, алгоритм вычисления модуля числа имеет вид:
ввести число
если число отрицательное то изменить у него знак все
вывести число
Отметим, что при записи ветвлений необходимо иметь специальный указатель конца ветвления, отделяющий ветвление от остальной части алгоритма. При отсутствии такого указателя алгоритм становится двусмысленным. Например, в приведенном выше алгоритме вычисления модуля числа отсутствие ключевого слова все привело бы к тому, что невозможно было бы понять, находится ли команда вывести число в ветви развилки или вне ее.
Для того, чтобы Исполнитель алгоритмов имел возможность формировать условие, он должен анализировать обстановку, в которой он оказался. Для этого у каждого исполнителя имеется система вопросов (СВИ – Система Вопросов Исполнителя), которые он понимает и на которые умеет отвечать. С помощью этих вопросов (команд) ЭВМ может получить информацию об обстановке вокруг исполнителя.
На каждый из этих вопросов исполнитель отвечает либо "ДА", либо "НЕТ".
Практически в любом языке программирования есть оператор, соответствующий паскалевскому IF. В качестве операторов, содержащихся в ветвях IF, могут быть любые операторы, включая, и оператор выбора. Кроме того, во многих языках программирования есть и другие языковые средства, обеспечивающие разветвляющиеся алгоритмы. К ним относится, например оператор выбора. Он используется, когда происходит деление не на два, а большее число вариантов. В Паскале он выглядит следующим образом:
CASE <выражение> OF
значение_1 : оператор_1;
значение_2 : оператор_2;
. . .
значение_N : оператор_N;
ELSE : оператор_1;
END;
Принцип его работы состоит в том, что вычисляется значение выражения, а затем происходит последовательное сравнение этой величины с определенными вариантами до первого совпадения. В результате выполняется соответствующая ветвь, либо при отсутствии совпадений – ветвь else.
Например, программа, определяющая количество дней в месяце с заданным номером при условии, что год не високосный.
var m : integer;
begin
writeln(‘Введите номер месяца от 1 до 12’);
readln(m);
case m of
1, 3, 5, 7, 8, 10, 12 : writeln(’31 день’);
2 : writeln(’28 дней’);
4, 6, 9, 11 : writeln(’30 дней’);
else writeln(‘Неверно введен номер месяца’);
end;
end.
Заметим, что оператор выбора не приводит к появлению новых возможностей у языка программирования. Он просто обеспечивает более компактный и удобочитаемый код по сравнению с серией вложенных друг в друга условных операторов if. Любой алгоритм, обеспечивающий выбор можно реализовать с помощью одного или нескольких ветвлений.
Применение алгоритмов с ветвлениями
Задача 1.
Найти большее из двух целых чисел A и B.
Решение.
нач
ввести А, В
если А > В
то вывести А
иначе вывести В
все
кон
|
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
|
|
|
|
|
|
|
|
|
B |
|
|
|
|
|
|
|
|
|
C |
|
|
|
|
|
|
|
|
|
D |
|
|
|
|
|
|
|
|
|
E |
|
|
|
|
|
|
|
|
|
F |
|
|
|
|
|
|
|
|
|
G |
|
|
|
|
|
|
|
|
|
Робот – один из учебных исполнителей. Средой исполнения для Робота является прямоугольное поле 9 клеток по горизонтали и 7 клеток по вертикали. Между некоторыми клетками могут быть стены, сквозь которые пройти невозможно. Клетки могут быть закрашены.
СКИ Робота: По командам вверх, вниз, влево, вправо Робот перемещается на одну клетку в указанном направлении. Если при этом на пути Робота возникает стена, наступает отказ. По команде закрасить Робот закрашивает клетку, в которой находится, даже если она уже была закрашена. Робот умеет определять, закрашена ли текущая клетка.
Определить конечное положение Робота после выполнения следующей программы, если его начальная клетка С5.
нач
вправо
вправо
если клетка закрашена
то вниз
вправо
иначе вверх
влево
все
вверх
вправо
кон
Решение.
C5 вправо C6 вправо C7
поскольку эта клетка не закрашена, переходим к ветви иначе.
C7 вверх B7 влево B6. Затем выполняем команды после ветвления.
B6 вверх A6 вправо A7.
Ответ A7.
Задача 3.
Исполнитель Вычислитель имеет систему команд: разделить на 3, уменьшить на 1, увеличить на 1. Его система вопросов: делится на 3?
Определить какое число будет получено из 100 в процессе выполнения следующих команд.
если делится на 3
то разделить на 3
увеличить на 1
иначе уменьшить на 1
все
если делится на 3
то разделить на 3
уменьшить на 1
иначе увеличить на 1
все
если делится на 3
то разделить на 3
увеличить на 1
иначе уменьшить на 1
все
Решение.
В первом вопросе условие не выполняется, получим 99. Во второй раз - выполняется, значит, получим сначала 33, потом 32. В третий раз условие опять не выполняется, значит, получим 31.
З
адача
4.
На координатной плоскости имеется фигура, представляющая собой половину круга и половину квадрата. Задается число R, которое определяет ее размер в соответствии с рисунком. Требуется определить, принадлежит ли точка с координатами X, Y указанной фигуре.
Решение.
В первую очередь следует решить вопрос лежит ли точка в верхней или нижней полуплоскости. В верхней полуплоскости нас интересует расстояние от точки до начала координат, квадрат которого мы вычисляем по теореме Пифагора и сравниваем с квадратом радиуса. Если точка в нижней полуплоскости, то она принадлежит фигуре, если X находится в пределах от –R до R, при этом Y ≥ – R.
нач
ввести R, X, Y
если Y > 0
то если X * X + Y * Y > R * R
то вывести “Не принадлежит”
иначе вывести “Принадлежит”
все
иначе если X ≥ –R и X ≤ R и Y ≥ –R
то вывести “Принадлежит”
иначе вывести “Не принадлежит”
все
все
кон
Вспомогательные алгоритмы
В процессе разработки алгоритмов мы довольно часто имеем сходные по структуре последовательности команд, которые применяются в разные моменты и с различными данными. Такие последовательности команд обычно выделяют в специальные алгоритмы. Их принято называть вспомогательными алгоритмами, подпрограммами или функциями.
Вспомогательные алгоритмы для нас не являются новым понятием. Любая математическая функция может рассматриваться как пример вспомогательного алгоритма. В школьной математике мы исследуем функции с разных точек зрения, например функции, могут ассоциироваться у нас с их графиками.
Здесь же важным для нас является то, что функция получает извне некоторые сведения на вход и, совершив с этими сведениями ряд действий, дает результат на выходе. С этой точки зрения функцию можно рассматривать как абстрактный «черный ящик», внутреннее устройство которого недоступно извне, а мы можем только взаимодействовать с ее входами и выходами. Говорят, что пользователю доступен только интерфейс функции.
Вспомогательный алгоритм – это произвольный алгоритм, снабженный заголовком, позволяющим вызывать этот алгоритм из других алгоритмов.
Данные, которые поступают вспомогательному алгоритму на вход из основной программы, называют параметрами или аргументами вспомогательного алгоритма. Они указываются в заголовке. Параметров может и не быть.
Могут использоваться две формы вспомогательных алгоритмов.
В первой из них все параметры являются исходными данными вспомогательного алгоритма.
алг Название (Список параметров)
нач
Действия …
вернуть Результат работы
кон
Например, таким образом можно записать вспомогательный алгоритм вычисления квадрата числа X.
алг квадрат (X)
нач
вернуть X * X
кон
Другим примером подобного вспомогательного алгоритма является поиск минимального из двух величин A и B.
алг минимум (A, B)
нач
если А < В
то вернуть А
иначе вернуть В
все
кон
Вызов этого вспомогательного алгоритма на выполнение обеспечивается указанием его имени и набора необходимых параметров.
Z := минимум (X, Y)
Вторая форма записи вспомогательных алгоритмов используется, как правило, когда результатов должно быть несколько.
алг Название (арг Список исходных данных рез Список результатов)
нач
Действия …, среди которых
присваивание переменным из списка результатов итоговых значений
кон
Например, таким может быть алгоритм сокращения рациональной дроби, где на вход дается пара целых чисел: числитель и знаменатель. Их новые значения после сокращения должны быть результатами работы вспомогательного алгоритма. Предположим, у нас имеется функция НОД(A, B), которая находит наибольший общий делитель двух натуральных чисел A и B.
Тогда алгоритм сокращения дроби будет иметь вид:
алг Сократить (алг A1, B1, рез A2, B2)
нач
C := НОД(A1, B1)
A2 := A1 / C
B2 := B1 / C
кон
Вызов такого вспомогательного алгоритма может иметь вид:
Сократить (12, 9, X, Y).
В итоге получим X=4, Y=3.
При этом, переменные основной программы X и Y, а также величины 12 и 9 называются фактическими параметрами вспомогательного алгоритма, поскольку именно с ними фактически и происходят действия внутри алгоритма. Переменные A1, A2, B1, B2 в заголовке вспомогательного алгоритма называются формальными параметрами. В момент вызова вспомогательного алгоритма на выполнение происходит присваивание значений фактических параметров в A1 и B1 соответственно. По завершении работы вспомогательного алгоритма происходит присваивание значений из A2, B2 в X, Y.
Вспомогательные алгоритмы могут иметь собственные переменные. Их называют локальными, поскольку их область действия локализована подпрограммой. Из основного алгоритма они недоступны. Параметры также являются локальными переменными. А переменные основного алгоритма являются глобальными по отношению к вспомогательному алгоритму, и доступны в нем. По названию локальные переменные могут совпадать с глобальными, но важно понимать, что на самом деле, это разные переменные. В этом случае при их упоминании внутри вспомогательного алгоритма используются локальные переменные.
При разработке алгоритма важно правильно спроектировать структуру программы, определить какие части основного алгоритма необходимо выделить как вспомогательные.
В качестве примера рассмотрим программу, расположенную справа, для исполнителя Робот (смотри задачу 2 в предыдущей теме). Довольно сложно разобраться в этом тексте программы и понять ее назначение. Присмотревшись внимательнее, можно заметить, что одна и та же последовательность команд встречается три раза. Она обеспечивает рисование флажка, закрашивая 5 клеток поля. Имеет смысл выделить эту последовательность команд в отдельный вспомогательный алгоритм, а в основном алгоритме он должен трижды вызываться.
|
нач вниз закрасить вправо закрасить вниз закрасить влево закрасить вниз закрасить вниз вправо закрасить вправо закрасить вниз закрасить влево закрасить вниз закрасить вправо вправо вправо закрасить вправо закрасить вниз закрасить влево закрасить вниз закрасить кон |
Рассмотрим, для чего следует выделять последовательности команд во вспомогательные алгоритмы. Вспомогательный алгоритм (подпрограмма) – инструмент, который позволяет:
сократить текст основного алгоритма за счет отсутствия многократных описаний одних и тех же повторяющихся действий;
облегчить понимание текста программы, делая его похожим на текст на естественном языке, при условии, конечно, использования содержательных имен процедур;
расширять СКИ, поскольку новый вспомогательный алгоритм можно воспринимать как новую команду, которую теперь может делать исполнитель;
свести новую задачу к уже решенным, используя уже написанные алгоритмы как вспомогательные;
писать, проверять и отлаживать большую программу по частям;
модифицировать программы и исправлять в них ошибки, не затрагивая тех частей алгоритма, которые остаются без изменения;
в сочетании с методом последовательной детализации алгоритмов решить сложную задачу, разбивая ее на более мелкие и легкие подзадачи;
обеспечить независимую разработку отдельных частей программы.
Методика последовательной детализации алгоритма
При разработке алгоритмов применяют методику разбиения основной задачи на более мелкие подзадачи, которые свою очередь могут быть разбиты на еще более мелкие подпрограммы. Так происходит до тех пор, пока не получим задачу настолько простую, что ее решение может быть написано непосредственно. Такой вариант часто называют проектированием сверху вниз.
Сборочный метод
Противоположный подход к проектированию заключается в том, что сначала обеспечивают создание простых инструментальных средств, из которых в свою очередь удается сделать более сложные алгоритмы. Такой способ называют проектированием снизу вверх.
На практике часто оба эти подхода дополняют друг друга.
Теперь мы можем точно сформулировать, что происходит при вызове вспомогательного алгоритма на выполнение:
На время выполнения вспомогательного алгоритма выполнение основного алгоритма приостанавливается.
Перед началом выполнения вспомогательного алгоритма ему отводится специальное место в памяти.
Устанавливаются значения формальных параметров, равные фактическим, указанным в команде вызова в основном алгоритме.
Выполняется вспомогательный алгоритм.
После окончания выполнения вспомогательного алгоритма все, что с ним связано, стирается из памяти.
Возобновляется выполнение основного алгоритма.
Задача 1.
На числовой прямой имеются два отрезка [A, B] и [C, D]. Определить, пересекаются ли они и если да, то какой отрезок является их пересечением. Отрезок типа [A, A] тоже считаем допустимым. Он соответствует точке.
Решение.
Дополнительно к минимуму определим функцию нахождения максимума из двух чисел.
алг максимум (A, B)
нач
если А > В
то вернуть А
иначе вернуть В
все
кон
Пользуясь этими вспомогательными алгоритмами, решим задачу. Найдем больший из левых концов отрезков и меньший из правых концов. Отрезки пересекаются, если у потенциального результата левый конец не больше правого.
алг отрезки
нач
ввести A, B, C, D
L := максимум (A, C)
R := минимум (B, D)
если L > R
то вывести “Отрезки не пересекаются”
иначе вывести L, R
все
кон
Здесь, несмотря на то, что оба вспомогательных алгоритма применяются всего по одному разу, их выделение все равно оправдано, поскольку улучшает читабельность алгоритма, делает его более понятным, облегчает устранение возможных ошибок.
Задача 2.
Рассмотрим два прямоугольника на координатной плоскости со сторонами параллельными осям координат. Требуется найти их пересечение или сообщить о его отсутствии. Как и в прошлой задаче, и точку, и отрезок будем считать частными случаями прямоугольника.
Исходные прямоугольники задаются координатами своей диагонали X1, Y1, X2, Y2, причем известно, что X1 < X2, а Y1 < Y2.
Решение.
Согласно методике последовательной детализации алгоритма, разобьем эту задачу на подзадачи. Заметим, что прямоугольник в пересечении существует, только если пересекаются проекции исходных прямоугольников по оси X и то же самое можно утверждать о проекциях на ось Y. Таким образом, удалось свести задачу к предыдущей. Необходимо оформить ранее написанный алгоритм «отрезки» в виде вспомогательного алгоритма с четырьмя параметрами. Аргументов должно быть именно четыре, поскольку ранее водилось четыре величины A, B, C, D.
алг отрезки (арг A, B, C, D, рез L, R)
нач
L := максимум (A, C)
R := минимум (B, D)
кон
Как правило, вспомогательные алгоритмы проектируются так, что они ничего не вводят и ничего не выводят. Все необходимые данные они получают через параметры, а результаты возвращают в вызывающий алгоритм.
Решение задачи о прямоугольниках.
алг прямоугольники
нач
ввести AX1, AY1, AX2, AY2
ввести BX1, BY1, BX2, BY2
отрезки (AX1, AX2, BX1, BX2, A, B)
если A > B
то вывести “Прямоугольники не пересекаются”
иначе
отрезки (AY1, AY2, BY1, BY2, C, D)
если C > D
то вывести “Прямоугольники не пересекаются”
иначе вывести A, C, B, D
все
все
кон
Задача 3.
Заданы два натуральных числа A и B. Найти количество целых чисел на отрезке [A, B], которые делятся на 3, но не делятся на 5.
Решение.
Для разработки алгоритма применим методику последовательной детализации. Прежде чем решать эту общую задачу, сформулируем для себя ее более простой аналог. Забудем временно о делимости на 5. Будем решать задачу:
Задача 3.1.
Найти количество целых чисел на отрезке [A, B], которые делятся на 3.
Выдвинем гипотезу, что ответом такой задачи является количество чисел на заданном отрезке, деленное нацело на 3.
Проверим эту гипотезу.
На отрезке [5, 8] имеем 4 числа, при делении 4 нацело на 3 будет 1, что совпадает с правильным ответом.
На отрезке [6, 9] имеем снова 4 числа, при делении 4 нацело на 3 будет 1, в то время, как правильным является ответ 2, поскольку на этом отрезке числа 6 и 9 делятся на 3.
Делаем два вывода. Во-первых, гипотеза оказалось неверной, а во-вторых, примеры показывают, что не все зависит, только от длины отрезка. Есть зависимость и от позиции начала отрезка.
Произведем еще раз упрощение задачи.
Научимся решать задачу вычисления количества чисел, делящихся на 3 на отрезке [1, N].
Для этой задачи, очевидно, что всего на отрезке [1, N] имеется N чисел, из которых кратных трем будет N div 3, где операция div соответствует целочисленному делению одного числа на другое.
Реализуем этот вспомогательный алгоритм в общем виде. Он будет находить сколько чисел кратных K имеется на отрезке [1, N].
алг кратные (N, K)
нач
вернуть N div K
кон
Вернемся к решению задачи 3.1.
Количество чисел кратных 3 на отрезке [A, B] равно количеству таких чисел на отрезке [1, B] минус количество таких чисел на отрезке [1, А-1]. Это работает не только для 3, но и для любого целого K.
алг делятся (A, B, K)
нач
вернуть кратные (B, K) – кратные (A-1, K)
кон
Теперь мы можем решить основную задачу. Можем это сделать даже в более общей постановке, т.е. найти количество целых чисел на отрезке [A, B], которые делятся на K, но не делятся на M.
алг количество (A, B, K, M)
нач
вернуть делятся (A, B, K) – делятся (A, B, K*M)
кон
Объясняется это тем, что среди чисел кратных K не все нужны нам в ответе. Лишними являются числа, которые делятся и на K, и на M, т.е. кратные K*M.
Циклические алгоритмы
В отличие от линейных алгоритмов, в которых команды выполняются последовательно одна за другой, в циклические алгоритмы входит последовательность команд, выполняемая многократно. Такая последовательность команд называется телом цикла. Однократное выполнение тела цикла принято называть итерацией или шагом цикла.
Важно различать, когда происходит выделение вспомогательного алгоритма для многократного использования, а когда требуется организовать циклические действия. Сами по себе эти идеи не противоречат друг другу. Всегда есть возможность все тело цикла оформить в виде вспомогательного алгоритма и в цикле повторить вызов несколько раз. В общем случае можно дать такие рекомендации. Цикл отличает то, что шаги цикла повторяются непосредственно друг за другом.
Наиболее универсальной циклической конструкцией является цикл пока. Цикл, как и любая другая алгоритмическая структура, может быть:
записан на естественном языке;
изображен в виде блок-схемы;
записан на алгоритмическом языке;
закодирован на языке программирования.
Блок-схема |
Алгоритмический |
Паскаль |
|
нц пока Условие Действие кц |
while Условие do Действие; |
Действие, которое является телом такого цикла, повторяется пока Условие истинно. С помощью цикла пока можно организовать любые повторяющиеся действия и реализовать любые циклические алгоритмы.
Другой тип цикла – цикл, выполняющийся заданное число раз. Он имеет вид:
нц для Переменная от НЗ до КЗ
Действие
кц
Здесь Переменная перед началом работы цикла принимает начальное значение (НЗ), после выполнения каждого шага цикла Переменная переходит к следующему значению, пока не достигнет конечного значения (КЗ). При этом конечном значении делается последний шаг работы цикла, после чего происходит переход к следующим командам алгоритма. Переменную называют счетчиком цикла или параметром цикла.
В случае использования целочисленной переменной в качестве параметра цикла, на каждом шаге цикла она увеличивается на 1. Здесь возможно использование не только целочисленных переменных. Допускается переменная любого типа, в рамках которого определено понятие «следующий». Такие типы принято называть порядковыми. К ним, например, относятся символы.
В некоторых случаях используется модифицированный вариант цикла для. В нем Переменная на каждом шаге цикла увеличивается не на 1, а с некоторым заданным шагом.
нц для Переменная от НЗ до КЗ шаг Ш
Действие
кц
Любой цикл для может быть заменен циклом пока. Так данной наиболее полной версии цикла для соответствует цикл пока:
Переменная := НЗ
нц пока Переменная <= КЗ
Действие
Переменная: = Переменная + Ш
кц
Аналогично тому, как при записи ветвлений было необходимо иметь специальный признак завершения ветвления (все), так и для циклов необходим такой признак, поэтому используется ключевое слово кц (конец цикла).
Циклы повышают эффективность применения компьютера. С помощью короткой циклической программы можно организовать выполнение большого количества действий.
Приведем примеры применения циклов.
Задача 1.
Вычислить величину n! Это факториал натурального числа n.
n! = 1*2*…*n.
Решение.
При решении этой задачи мы, зная число n, знаем сколько раз должен выполниться цикл, значит, будем использовать цикл для.
нач
ввести n
f := 1
нц для a от 1 до n
f := f * a
кц
вывести f
кон
Задача 2.
Система команд исполнителя Робот, «живущего» в прямоугольном лабиринте на клетчатой плоскости: вверх, вниз, влево, вправо.
При выполнении любой из этих команд Робот перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →.
Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится Робот: сверху свободно, снизу свободно, слева свободно, справа свободно.
Для Робота нужно написать программу, перемещающую его в левый верхний угол поля, независимо от его начального положения при условии, что внутри поля стен нет.
Решение.
М
ы
не знаем, сколько шагов должен сделать
Робот. Значит, используем цикл пока.
нач
нц пока слева свободно
влево
кц
нц пока сверху свободно
вверх
кц
кон
Задача 3.
Определите значение целочисленной переменной х после выполнения следующего фрагмента программы:
Решение.
При решении этой задачи можно действовать двумя способами.
С одной стороны, можно последовательно выполнить все шаги данного циклического алгоритма, но это довольно долго.
Другой способ состоит в том, что проанализировав алгоритм в целом, мы понимаем, что он представляет собой алгоритм Евклида для поиска наибольшего общего делителя двух натуральных чисел. Значит, достаточно посчитать наибольший общий делитель двух чисел: 55 и 75. Он равен 5. При этом нам не пришлось выполнять алгоритм шаг за шагом.
Задача 4.
Сколько клеток лабиринта соответствуют требованию, что, выполнив предложенную программу, Робот (смотри задачу 2) остановится в той же клетке, с которой он начал движение?
|
|
|
|
|
|
6 |
|
|
|
|
|
|
5 |
|
|
|
|
|
|
4 |
|
|
|
|
|
|
3 |
|
|
|
|
|
|
2 |
|
|
|
|
|
|
1 |
A |
B |
C |
D |
E |
F |
|
ПОКА < справа свободно > вправо
ПОКА < сверху свободно > вверх
ПОКА < слева свободно > влево
ПОКА < снизу свободно > вниз
КОНЕЦ
Решение.
Чтобы избежать полного рассмотрения всех клеток, проанализируем условие последнего из циклов. Он завершит работу, если снизу не свободно. Это означает, что если какая-то клетка будет удовлетворять требованию задачи, то она должна быть не только начальной, но и конечной. А для этого, в ней условие последнего цикла должно нарушаться. Таким образом, нам достаточно рассмотреть только те клетки, под которыми есть стена.
Это клетки A6, B5, C4, D3, E2, F3 и вся первая строка. Выполнив алгоритм, стартуя из указанных клеток, получаем, что нам подходят клетки A6, C4, A1, C1. Таким образом, ответ задачи 4.
Понятие типа данных
При создании алгоритмов практически невозможна ситуация, когда нам ничего не приходится хранить. В процессе хранения различных величин необходимо различать – что это за величины. Возникает понятие типа данных. Это тем более актуально, поскольку в соответствии с одним из принципов фон-Неймана, все в компьютере хранится в виде чисел в двоичной системе счисления. Типы позволяют отличать данные друг от друга.
Прежде всего, определим, что такое переменная.
Переменной принято называть некоторую величину, значение которой может меняться в процессе работы алгоритма. Например, можно определить переменные а и b и совершать с ними некоторые действия, например, а:=3, b:=5, а:=7*2, b:=a+b.
Для того чтобы переменная изменила свое значение она должна использоваться в левой части операции присваивания. Упоминание ее в правой части, т.е. в вычисляемом выражении, приводит к ее использованию, не изменяя ее значение.
Рассмотрим решение задачи из предыдущего раздела о вычислении наибольшего из двух значений.
нач
ввести А, В
если А>В
то вывести А
иначе вывести В
все
кон
Можно предложить и другое решение той же задачи, благодаря использованию дополнительных переменных.
нач
ввести А, В
если А>В
то C:=А
иначе C:=В
все
вывести C
кон
Не стоит экономить на отдельных переменных. Такой текст более нагляден, лучше структурирован и за счет этого при необходимости легче превращается во вспомогательный алгоритм.
То же самое можно сказать, сравнивая два разных подхода к обмену значениями двух переменных a и b.
Способ 1. c := a a := b b := c |
Способ 2. b := a + b a := b – a b := b – a |
Несмотря на то, что второй способ, вроде бы, лучше, т.к. не требует введение дополнительной переменной, но он менее наглядный, менее понятный и дольше выполняется. Предпочтительнее способ 1.
Как уже было сказано, переменные могут быть разных типов. Мы знаем, что такое целые числа, вещественные числа, строки, символы и т.п. Что же такое тип?
Концепция типа данных появилась в языках программирования высокого уровня как естественное отражение того факта, что обрабатываемые программой данные могут иметь различные множества допустимых значений, храниться в памяти компьютера различным образом, занимать различные объёмы памяти и обрабатываться с помощью различных команд процессора.
Понятие типа данных определяет
диапазон значений переменной
способ и формат хранения
набор допустимых операций
Наиболее важным здесь является набор допустимых операций. Для величин одного типа он может быть одним, а для другого типа – другим. Например, мы можем находить остаток от деления одного натурального числа на другое, но эта операция отсутствует для вещественных чисел.
Сложнее обстоит дело с делением. С одной стороны, мы умеем делить и целые числа друг на друга, и вещественные. Но при этом деление вещественных числе дает вещественное число, т.е. оставляет нас в рамках этого типа данных. А при делении целых чисел получение целого результата не гарантируется. В этом случае говорят, что операция деления не замкнута для целых чисел.
Для разных типов данных могут встречаться операции, которые обозначаются одинаково, но имеют под собой совершенно разный смысл. Так, для числовых данных операция «+» соответствует сложению, а при использовании ее для строк мы имеем конкатенацию, или сцепление строк. В случае же работы с данными, которые представляют собой множества, тот же «плюс» обычно соответствует объединению множеств. В программировании это обычно называют полиморфизмом.
Преимущества от использования типов данных:
Надёжность.
Типы данных защищают от трёх основных видов ошибок:
Некорректное присваивание. Пусть переменная объявлена как имеющая числовой тип. Тогда попытка присвоить ей символьное или какое-либо другое значение в случае статической типизации приведёт к ошибке компиляции и не даст такой программе запуститься.
Некорректная или недопустимая операция. Позволяет избежать выражений вида ‘строка’ + 1. Поскольку, как уже говорилось, все переменные в памяти хранятся как наборы битов, то при отсутствии типов подобная операция была выполнима. Такие ошибки отсекаются уже на этапе компиляции благодаря контролю типов.
Некорректная передача параметров. Если некоторая функция ожидает, что ей будет передан числовой аргумент, то передача ей в качестве параметра строки может иметь непредсказуемые последствия. При помощи контроля типов такие ошибки также отсекаются на этапе компиляции.
Стандартизация.
Благодаря соглашениям о типах, поддерживаемых большинством систем программирования, программисты могут быстро менять средства программирования, а программы не требуют больших переделок при переносе исходных текстов в другую среду.
Наглядность.
Использование того или другого типа данных объясняет намерения программиста. Например, логический тип в языке не обязателен, и вместо него можно использовать целый тип, храня там 0 или 1, но использование логической переменной означает, что перед нами не целая величина, а некоторый ответ на вопрос.
Целые числа
Рассмотрим целые числа как тип данных. Можно создавать алгоритмы, абстрагируясь от способа хранения чисел в конкретных программных системах, но как только мы начинаем использовать конкретный язык программирования, каждый из них имеет свой способ внутреннего представления целых чисел. Известны такие подходы как прямой код, дополнительный код, символьное представление целых чисел. В рамках данной темы мы не будем рассматривать особенностей этих вариантов внутреннего представления, для нас важным является то, что каждый из этих способов накладывает ограничение на хранимые величины. У нас нет возможности работать с бесконечно большими целыми числами. Речь идет о допустимом диапазоне значений для данного типа.
Для целых чисел определены следующие операции: сложение, вычитание, умножение, вычисление частного и остатка от деления одного числа на другое. Все дополнительные операции, например, возведение в степень, как правило, не являются базовыми и реализуются с помощью вспомогательных алгоритмов, расширяя возможности языка.
В качестве примера рассмотрим выполнение действий над целыми переменными а, b и с:
a :=50
b :=17
c :=(b + a) div b + а
a :=(a div b)*b
b := (с – а) mod 3
В результате этих действий получим: а = 34, b = 1, с = 53.
Задача 1.
Для заданного натурального числа n вычислить сумму его цифр.
Решение.
Добавлять очередную цифру к сумме нужно много раз, значит, нужен цикл. При решении этой задачи мы, имея число, не можем определить количество его цифр, следовательно, нам неизвестно, сколько раз должен повторяться цикл. Значит, используем цикл с условием пока. Цифру числа определяем как остаток отделения на 10. После этого уменьшаем число, отбрасывая последнюю цифру целочисленным делением на 10. Тем самым, мы готовим возможность совершения следующего шага цикла.
нач
цел n, s
ввести n
s := 0
нц пока n > 0
s := s + n mod 10
n := n div 10
кц
вывести s
кон
Вещественные числа.
Главной особенностью работы с вещественными числами в реальных компьютерных системах является то, что они хранятся неточно. Это объясняется способом их хранения. Как и при хранении целых чисел для вещественного числа в памяти компьютера выделяется фиксированное число разрядов. Вещественное число приводится к так называемому нормализованному виду. Для десятичных чисел мы получим
123,4 = 0,1234*103,
5 = 0,5*10,
0,00025 = 0,25 * 10-3.
Цифры, оказавшиеся в дробной части, называются мантиссой, а степень десятки – порядком. Именно они и хранятся. При попытке сохранить число 1/3 мы должны были бы в мантиссе хранить бесконечное количество знаков, поскольку это периодическая дробь. Реально в мантиссе хранится некоторое количество знаков, а остальные просто отбрасываются, что и приводит к неточности при хранении.
Задача 2.
Вычислить сумму 1 – 1/2 + 1/3 – … + 1/n при заданном числе слагаемых n.
Решение.
Будем использовать переменную z для хранения знака перед очередной дробью. В процессе работы алгоритма эта переменная будет равняться либо 1, либо –1. Таким образом, сначала она должна быть равна 1, а на каждом шаге цикла ее знак должен меняться. Переменная s должна быть вещественная. Мы должны понимать, что результат вычислений будет приближенным. Перед выполнением цикла сумма, которую мы будем копить в переменной s, должна быть равна нулю.
нач
цел n, k, z
вещ s
ввести n
s := 0
z := 1
нц для k от 1 до n
s := s + 1/k
z := – z
кц
вывести s
кон
Логический тип
Мы уже знакомы с логическими выражениями, которые применялись нами в ветвлениях и циклах. Поскольку логические выражения можно вычислять, то возникает необходимость и хранить результаты этих вычислений. Для этого во всех языках программирования предусмотрен логический тип. Переменные этого типа могут принимать всего два значения – «да» и «нет» («истина» и «ложь»). В Паскале, например, этим значениям соответствуют ключевые слова true и false. Рассмотрим логические операции, имеющиеся в Паскале.
not – логическое отрицание, «не»
and – логическое умножение, «и»
or – логическое сложение, «или»
xor – исключающее или .
-
and
false
true
false
false
false
true
false
true
xor
false
true
false
false
true
true
true
false
or
false
true
false
false
true
true
true
true
Задача 3.
Задано натуральное число. Необходимо найти в нем сумму четных цифр или сообщить, что ни одной четной цифры в числе нет.
Решение.
Попытаемся решить задачу, перебирая все цифры, определяя их четность, и добавляя нужные к сумме. Тогда мы не сможем отличить ситуацию числа без четных цифр от той, где есть четные цифры, но все они равны 0. Потребовалось ввести логическую переменную. В таких переменных мы обычно храним ответ на некоторый вопрос. В данном случае там будет храниться ответ на вопрос «встречались ли четные цифры». Первоначально ответ ложный.
нач
цел n, c, s
лог w
ввести n
s := 0
w := нет
нц пока n > 0
c := n mod 10
если (c mod 2) = 0
то s := s + c
w := да
все
n := n div 10
кц
если w
то вывести s
иначе вывести “Нет четных цифр”
все
кон
Здесь мы использовали конструкцию если w. Это соответствует варианту если w=да. Дело в том, что переменная w уже является готовым ответом на некоторый вопрос. Нетрудно понять, что следующие два фрагмента алгоритма одинаковы. Просто в первом мы вычислили результат сравнения a и b заранее.
-
w := a < b
если w
то a
иначе b
все
если a < b
то a
иначе b
все
Символьный и строковый тип
При создании программы необходимо обрабатывать и хранить не только числовые данные. Возникает необходимость работать с символами и строками.
Символы представляют собой отдельные знаки с изображением букв русского и латинского алфавита, цифр, знаков препинания и других специальных литер. Символьный тип часто называют литерным.
Примеры символов: 'a', 'A', 'B', '5', 's', '*', '#', '@'.
При хранении символов в компьютере реально хранятся целые числа, которые являются кодами соответствующих символов. В процессе операций ввода и вывода происходит преобразование между символами и их кодами. Для этого используются кодовые таблицы. В различных информационных системах и программах могут использоваться разные кодовые таблицы. Говорят о разных кодировках текстовой информации.
Наиболее известны следующие кодировки:
ANSI – Американский национальный стандарт информации;
ASCII – Американский стандартный код обмена информацией;
Unicode – стандарт, позволяющий представить знаки практически всех письменных языков.
Различные программы используют и хранят текст по-разному, например, текст, созданный в редакторе MS Word, не прочитается в Блокноте. Но даже обычный текстовый файл с расширением txt может храниться в разных кодировках. Наверняка многие уже сталкивались с тем, что программа пытается что-то вывести на экран по-русски, а результат не соответствует ожиданиям. Или Вы открываете страницу кого-нибудь сайта и получаете нечитабельное содержимое.
В рамках данной темы мы будем считать, что кодировка выбрана, зафиксирована и мы больше о ней не заботимся. Для нас важным является лишь то, что компьютер хранит не изображения символов, а их коды – целые числа.
Рассматривая символы как тип данных необходимо сказать о допустимых операциях. Символы можно сравнивать друг с другом с помощью операций отношения, таких как равно, больше, меньше и т.д. С этой точки зрения, символьный тип является упорядоченным.
Поскольку существует взаимно-однозначное соответствие между символом и его кодом, а они, являясь целыми числами, позволяют отвечать на вопрос «кто следующий», то символы относят к так называемым порядковым типам данных. Это, в частности, означает, что символы можно использовать в качестве параметров в циклах «для … от … до». В любом языке программирования есть средства преобразования символьной информации в числовую и наоборот.
В алгоритмах очень часто используется знание особенностей хранения символов. Так известно, что символы с изображением цифр расположены подряд в кодовой таблице. Это позволяет, например, на Паскале перевести символ x в целое число n.
n := ord(x) – ord(‘0’); {здесь ord – функция вычисления кода символа}
Строки представляют собой последовательности символов. В языках программирования имеются разные подходы к организации хранения строк. В языке Паскаль, например, строки хранятся так, что прямо в них хранится информация об их длине, поэтому функция вычисления длины строки там выполняется почти мгновенно. Совсем по другому обстоит дело в языке Си. Там строка – это последовательность символов, заканчивающаяся специальным признаком конца строки – символом с кодом 0. Поэтому с Си функция вычисления длины стоки должна пробежать всю строку, прежде чем сообщит нам ответ.
Практически во всех языках программирования для строк имеется базовый набор операций. Обычно к ним относятся операции такого вида:
Длина (a) – вычисления длины строки a. (Тип «целое»)
Извлечь (a, i) – возвращает i-тый (слева) символ в строке a. (Тип «строка»)
Склеить (a, b) – возвращает строку, в которой записаны сначала все символы строки a, а затем все символы строки b. (Тип «строка»)
Копировать (a, i, k) – возвращает фрагмент строки a, начиная с i-того (слева) символа, содержащий k символов. (Тип «строка»)
Удалить (a, i, k) – возвращает строку a после удаления из нее фрагмента, начиная с i-того (слева) символа, содержащего k символов. (Тип «строка»)
В дополнение к этим базовым операциям со строками во многих языках программирования существуют и дополнительные средства.
Задача 1.
Какое значение будет у переменной b после выполнения фрагмента алгоритма, если значение переменной a было ‘ПОЕЗД’?
i := Длина (a)
k := 2
b := ‘А’
пока i > 0
нц
c := Извлечь (a, i)
b := Склеить (b, c)
i := i – k
кц
b := Склеить (b, ‘Т’)
Решение.
В цикле переменная i пробегает значения 5, 3, 1. Соответствующие символы строки a: ‘Д’, ‘Е’, ‘П’ добавляются справа в указанном порядке к строке b, где первоначально уже имеется символ ‘А’. После цикла туда же добавляется еще и символ ‘Т’. В итоге, получается строка ‘АДЕПТ’.
Задача 2.
Строки (цепочки символов латинских букв) создаются по следующему правилу.
Первая строка состоит из одного символа – латинской буквы «А». Каждая из последующих цепочек создается такими действиями: в очередную строку сначала записывается буква, чей порядковый номер в алфавите соответствует номеру строки (на i-м шаге пишется «i»-я буква алфавита), к ней справа дважды подряд приписывается предыдущая строка.
Вот первые 4 строки, созданные по этому правилу:
(1) A
(2) BAA
(3) CBAABAA
(4) DCBAABAACBAABAA
Латинский алфавит (для справки):
ABCDEFGHIJKLMNOPQRSTUVWXYZ
Запишите семь символов подряд, стоящие в восьмой строке со 126-го по 132-е место (считая слева направо).
Решение.
Рассмотрим, какую длину имеют строки с 1 по 7.
1 – 1, 2 – 3, 3 – 7, 4 – 15, 5 – 31, 6 – 63, 7 – 127.
Можно заметить, что это числа на единицу меньше соответствующей степени двойки. Структура восьмой строки такова: новый символ (H), затем 127 символов седьмой строки, затем они же еще раз. Значит, 126-й символ 8-й строки – это 125-й символ 7-й строки, т.е. третий с конца. Все строки заканчиваются одинаково: BAA. Символы со 129 по 132 – это 4 первых символа седьмой строки, т.е. GFED.
Ответ: BAAGFED
Массивы
До сих пор в рамках алгоритмов мы использовали отдельные переменные для хранения различной информации. В реальных задачах довольно часто возникает необходимость хранить много информации. Создавать для этой цели много переменных, конечно, можно, но проблема заключается не в том, чтобы много информации хранить, а в том, чтобы обеспечивать к ней быстрый доступ, структурировать информацию, иметь возможность оперировать не только с отдельными данными, но и с целыми информационными блоками.
Представьте себе, что мы переехали в новую квартиру. Там нет никакой мебели, а вот вещи мы привезли. Это нужные, полезные вещи. Их много. Очень много! Мы все свалили по углам. А теперь представьте, что нам понадобилась какая-то вещь. Во-первых, мы не знаем, есть ли она среди вещей или, может быть, ее не привезли. Пусть нам сказали, что она где-то здесь. Не так просто ее найти. Вот мы ее нашли! Но теперь надо до нее добраться и вытащить из-под груды других, не менее нужных вещей.
Ситуация меняется, когда все вещи в доме мы правильно структурируем. Для этого нам нужны хранилища, причем разные для разного типа вещей. Шкаф – для одежды, сервант – для посуды, полки – для книг, портфель – для бумаг, кошелек – для денег. Хранилища разные и по назначению, и по размерам, но в каждом из них вещи только одного типа. Теперь можно быстро найти нужную вещь, получить к ней доступ, воспользоваться. Причем важным является и появившаяся способность оперировать с группами вещей. Гораздо удобнее и надежнее пользоваться кошельком, чем рассовывать деньги по карманам.
В алгоритмах также нужен порядок. Мы уже знаем, что переменные бывают разных типов. А роль хранилищ для информации определенного типа выполняют массивы.
Массив – это именованный набор однотипных переменных, расположенных в памяти непосредственно друг за другом. Доступ к элементам массива осуществляется по номеру элемента в массиве. Его называют индексом.
Массивы обеспечивают:
компактность хранения, т.к. для каждого элемента выделяется ровно столько памяти, сколько требует данный тип. Нам нет необходимости хранить названия отдельных переменных.
быстрый доступ к элементам, поскольку при необходимости, например, обратиться к 10-му элементу массива компьютеру нет необходимости просматривать предыдущие 9 элементов. Происходит просто смещение по памяти на заданное число байт, которое вычисляется по типу элементов массива. С этой точки зрения массивы – это устройства прямого доступа. Это аналогично быстрому перемещению к нужному фрагменту на компакт-диске, в отличие от перемотки пленки на кассете, где наблюдается последовательный доступ.
возможность совершения массовых операций с данными.
В различных языках программирования индекс начального элемента массива может быть разным. В Бейсике массив начинается с первого элемента, в Си – с нулевого, а в Паскале начальный элемент массива может иметь любой номер. При записи на алгоритмическом языке обычно используют либо нумерацию с нуля, либо с единицы. Это поясняется в постановке задачи или становится понятно из контекста.
Операции над массивами обычно совершают поэлементно. Набор этих операций определяется типом элементов массива. Целиком с массивами обычно совершают только операцию присваивания одному массиву другого. Размеры массивов и типы элементов при этом должны совпадать.
В алгоритмах обработки массивов активно применяют циклы. В том случае, когда планируется обработка всего массива или заранее известного фрагмента, эффективнее использовать цикл «для … от … до». Это происходит за счет того, что нам заранее известно количество повторений цикла. В случае, когда обработка массива может быть прервана согласно логике алгоритма, разумнее использовать цикл «пока».
Задача 1.
В программе описан одномерный целочисленный массив A с индексами от 1 до 10. Требуется вычислить сумму элементов массива.
Решение.
Здесь нужна обработка всех элементов массива, значит, используем цикл с заданным числом повторений.
s := 0
нц для i от 1 до 10
s := s + A[i]
кц
вывести s
Задача 2.
В программе описан одномерный целочисленный массив A с индексами от 1 до 10. Требуется найти номер первого положительного элемента массива или сообщить, что таких элементов нет.
Решение.
Здесь обработка элементов массива может быть прервана, если встретится положительное число. Значит, используем цикл «пока». При этом недостаточно, чтобы условие цикла следило только за четностью элементов массива. Необходимо контролировать, что массив еще не закончился, т.е. говорят, что индекс не вышел за границы массива. Рекомендуется в подобных циклах, обеспечивающих поиск в массиве элемента с заданными свойствами, в двойном условии первым располагать условие на индексы, а вторым – условие поиска. После выхода из цикла с двойным условием, как правило, необходимо определять, по какому из условий завершился цикл.
i := 1
нц пока (i <= 10) и (A[i] <= 0)
i := i + 1
кц
если i <= 10
то вывести i
иначе вывести ‘Нет положительных чисел’
все
Массивы бывают одномерными, двумерными и большей размерности. Одномерный массив часто называют вектором. Он представляет собой линейную структуру данных и требует одного индекса для обращения к элементу.
Двумерный массив часто называют матрицей. Это прямоугольная таблица значений элементов. Для обращения к элементу требуется указать два индекса, определяющие номера строки и столбца этой таблицы.
Массивы большей размерности формируются аналогично. Размерность массивов обычно ничем не ограничивается.
Задача 3.
Задан двумерный массив A размера n×n. Требуется найти строку с максимальной суммой элементов и сообщить эту сумму.
Решение.
max := 0
нц для i от 1 до n
s := 0
нц для j от 1 до n
s := s + A[i, j]
кц
если s > max
то max := s
все
кц
вывести max
Здесь важным является место, где необходимо присваивать начальное значение равное нулю переменной s. Поскольку эта переменная должна накапливать сумму элементов каждой отдельной строки, то обнулять ее требуется при переходе на каждую новую строку, т.е. между заголовками циклов. При обращении к двумерным массивам считается, что первый индекс задает номер строки, а второй – номер столбца.
Глава 11. Локальные и глобальные сети
Интернет как инфраструктура объединил огромное число компьютеров и других устройств, расположенных по всему Земному шару, в единое целое. С его помощью люди могут общаться друг с другом, используя электронную почту, системы электронных досок объявлений и видеоконференции. Пользователи могут находить нужную информацию с помощью поисковых систем. Ученые получили возможность решать задачи, требующие огромных вычислительных ресурсов, объединив множество компьютеров энтузиастов в один гигантский суперкомпьютер с помощью grid-технологий. Важным направлением использования Интернет является электронная коммерция. По мере развития интернет-технологий возрастает число людей, занятых удаленной работой. Из этого далеко не полного перечня использования Интернета ясно, насколько важную роль он играет в современной жизни. Специалисты должны в достаточной мере владеть интернет-технологиями, в частности, веб-технологиями, включая создание веб-сайтов средствами HTML и CSS. Овладение этими технологиями помимо возможности размещения собственной информации в Интернете поможет на более высоком уровне использовать бесчисленные информационные ресурсы, расположенные во Всемирной паутине.
В этой главе рассматриваются следующие темы
Интернет и компьютерные сети как инфраструктура. Адресация в сети, стек протоколов TCP/IP.
Службы Интернета. Клиенты и сервера реализующие эти службы.
Служба веб. Язык разметки гипертекста. Основы создания веб сайтов.
Интернет и компьютерные сети
Интернет – всемирная система объединённых компьютерных сетей, построенная на использовании протокола IP и маршрутизации пакетов данных. Таким образом, по сути, Интернет – это сеть сетей, следовательно, изучение интернет-технологий естественно начать с рассмотрения основ компьютерных сетей.
Компьютерная сеть – это набор связанных между собой автономных компьютеров и/или компьютерного оборудования (провода, серверы, маршрутизаторы и другое оборудование).
Хотя в обиходе слово «Интернет» часто употребляют как синоним «Всемирной паутины» и доступной в ней информации (то есть службы веб и её ресурсов), специалист должен понимать принципиальную разницу. Интернет является инфраструктурой для служб Интернета, предоставляя последним средства передачи данных (например, провода и протоколы нижних уровней ответственных за надежную доставку данных). Следует сразу отметить, что веб не единственная служба Интернета; в Интернете существует достаточно большое количество сервисов, обеспечивающих работу со всем спектром ресурсов. Наиболее известными среди служб Интернета являются следующие.
World Wide Web (WWW, W3) или служба веб – гипертекстовая (гипермедиа) система, предназначенная для интеграции различных сетевых ресурсов в единое информационное пространство;
электронная почта (E-mail), обеспечивающая возможность обмена сообщениями одного человека с одним или несколькими абонентами;
телеконференции, или группы новостей (Usenet), обеспечивающие возможность коллективного обмена сообщениями;
сервис FTP – система файловых архивов, обеспечивающая хранение и пересылку файлов различных типов;
сервис Telnet, предназначенный для управления удаленными компьютерами в терминальном режиме;
сервис DNS, или система доменных имен, обеспечивающий возможность использования для адресации узлов сети мнемонических имен вместо числовых адресов;
сервис IRC, предназначенный для поддержки текстового общения в реальном времени (chat);
Потоковое мультимедиа.
Таким образом, специалист должен понимать, что Всемирная паутина (WWW – World Wide Web) – распределенная система на базе Интернета.
Распределенная система – это такая система, в которой наличие многочисленных автономных компьютеров незаметно для пользователя. С его точки зрения, это единая система. Например, Всемирную паутину можно рассматривать как один большой сайт. Это обычно достигается с помощью специального программного обеспечения, надстраиваемого над операционной системой и называемого связующим программным обеспечением.
Компьютерная сеть не представляется пользователю чем-то единым. Она представляет собой набор связанных между собой автономных компьютеров. Пользователь имеет дело с конкретными компьютерами, ее составляющими, и если они имеют различное аппаратное и программное обеспечение, это не останется для него незамеченным. Так, чтобы запустить программу на удаленной машине пользователю необходимо явно на ней зарегистрироваться и потом дать команду на запуск.
При построении распределенных систем особая роль отводится программному обеспечению. «На самом деле распределенная система является программной системой, построенной на базе сети. Эта программная система обеспечивает высокую степень связности и прозрачности элементов. Таким образом, различие между компьютерной сетью и распределенной системой заключается в программном обеспечении (особенно в операционной системе) а не в аппаратуре» [Таненбаум Э. Компьютерные сети. СПб: Питер, 2003., С. 23].
Принципы построения сетевых протоколов
Так как сети представляют собой сложные системы, структуры большинства сетей организуются иерархически и имеют несколько уровней или слоев. Число уровней, их название, содержание и назначение может различаться в разных сетях, но целью каждого нижележащего уровня является предоставление неких сервисов (или служб) для вышестоящих уровней.
Уровень n одной машины поддерживает связь с уровнем n другой, используя некоторые правила общения. Набор таких правил называется протоколом. Набор уровней и протоколов называется архитектурой сети (не путать с топологией сети). В действительности данные не пересылаются с уровня n одной машины на уровень n другой, а вместо этого каждый уровень передает данные и управление нижележащему уровню посредством междууровневого интерфейса. Так происходит до тех пор, пока не будет достигнут самый нижний уровень, являющийся физическим уровнем, по которому непосредственно осуществляется связь. Таким образом, между соответствующими уровнями, за исключением физического уровня, осуществляется лишь виртуальное общение.
Служба – это набор операций (или примитивов), которые данный уровень предоставляет более высокому уровню. Служба определяет операции, которые может выполнять данный уровень, но не определяет, как они будут реализованы. Таким образом, служба описывает интерфейс между уровнями.
Протокол – это набор правил, определяющих формат и назначение кадров, пакетов или сообщений, которыми обмениваются одноранговые сущности в пределах одного уровня. Стеком протоколов называется список используемых системой протоколов по одному на уровень.
Введем понятие сетевой модели. Сетевая модель – теоретическое описание принципов работы набора сетевых протоколов, взаимодействующих друг с другом. Модель обычно делится на уровни, так, чтобы протоколы вышестоящего уровня использовали бы протоколы нижестоящего уровня (точнее, данные протокола вышестоящего уровня бы передавались с помощью нижележащих протоколов – этот процесс называют инкапсуляцией, процесс извлечения данных вышестоящего уровня из данных нижестоящего – деинкапсуляцией). Модели бывают как практические (использующиеся в сетях, иногда запутанные и/или не полные, но решающие поставленные задачи), так и теоретические (показывающие принципы реализации сетевых моделей, приносящие в жертву наглядности производительность). Наиболее известные сетевые модели:
Модель OSI, она же Модель ВОС, Взаимосвязь открытых систем. Эталонная модель – теоретическая модель, описанная в международных стандартах и ГОСТах.
Модель TCP/IP (Модель DOD) – практически использующаяся модель, принятая для работы в Интернете.
Модель OSI включает семь уровней.
Прикладной уровень (уровень приложений; англ. application layer) – верхний уровень модели, обеспечивающий взаимодействие пользовательских приложений с сетью. Позволяет приложениям использовать сетевые службы (например, удалённый доступ к файлам и базам данных, пересылка электронной почты), отвечает за передачу служебной информации, предоставляет приложениям информацию об ошибках, формирует запросы к уровню представления. Примерами протоколов прикладного уровня являются HTTP, POP3, FTP, TELNET.
Представительский уровень (уровень представления; англ. presentation layer) обеспечивает преобразование протоколов и кодирование/ декодирование данных. Запросы приложений, полученные с прикладного уровня, на уровне представления преобразуются в формат для передачи по сети, а полученные из сети данные преобразуются в формат приложений. На этом уровне может осуществляться сжатие/распаковка или кодирование/ декодирование данных, а также перенаправление запросов другому сетевому ресурсу, если они не могут быть обработаны локально.
Уровень представлений обычно представляет собой промежуточный протокол для преобразования информации из соседних уровней. Это позволяет осуществлять обмен между приложениями на разнородных компьютерных системах прозрачным для приложений образом. Уровень представлений обеспечивает форматирование и преобразование кода. Форматирование кода используется для того, чтобы гарантировать приложению поступление информации для обработки, которая имела бы для него смысл. При необходимости этот уровень может выполнять перевод из одного формата данных в другой.
Уровень представлений имеет дело не только с форматами и представлением данных, он также занимается структурами данных, которые используются программами. Таким образом, уровень 6 обеспечивает организацию данных при их пересылке.
Сеансовый уровень (англ. session layer) модели обеспечивает поддержание сеанса связи, позволяя приложениям взаимодействовать между собой длительное время. Уровень управляет созданием/завершением сеанса, обменом информацией, синхронизацией задач, определением права на передачу данных и поддержанием сеанса в периоды неактивности приложений. Примерами протоколов сеансового уровня являются PPTP (Point-to-Point Tunneling Protocol), L2TP (Layer 2 Tunneling Protocol), NetBIOS (Network Basic Input Output System).
Транспортный уровень (англ. transport layer) модели предназначен для обеспечения надёжной передачи данных от отправителя к получателю. При этом уровень надёжности может варьироваться в широких пределах. Существует множество классов протоколов транспортного уровня, начиная от протоколов, предоставляющих только основные транспортные функции (например, функции передачи данных без подтверждения приема), и заканчивая протоколами, которые гарантируют доставку в пункт назначения нескольких пакетов данных в надлежащей последовательности, мультиплексируют несколько потоков данных, обеспечивают механизм управления потоками данных и гарантируют достоверность принятых данных. Например, UDP ограничивается контролем целостности данных в рамках одной дейтаграммы, и не исключает возможности потери пакета целиком, или дублирования пакетов, нарушение порядка получения пакетов данных. Напротив, протокол TCP обеспечивает надёжную непрерывную передачу данных, исключающую потерю данных или нарушение порядка их поступления или дублирования, может перераспределять данные, разбивая большие порции данных на фрагменты и наоборот склеивая фрагменты в один пакет. Примерами протоколов транспортного уровня являются SPX (Sequenced Packet Exchange), SST (Structured Stream Transport), TCP (Transmission Control Protocol), UDP (User Datagram Protocol).
Сетевой уровень (англ. network layer) модели предназначен для определения пути передачи данных. Отвечает за трансляцию логических адресов и имён в физические, определение кратчайших маршрутов, коммутацию и маршрутизацию, отслеживание неполадок и заторов в сети. Протоколы сетевого уровня маршрутизируют данные от источника к получателю. На этом уровне работают маршрутизаторы.
Примерами протоколов сетевого уровня являются IP/IPv4/IPv6 (Internet Protocol), IPX (Internetwork Packet Exchange, протокол межсетевого обмена), IPsec (Internet Protocol Security), ICMP (Internet Control Message Protocol), RIP (Routing Information Protocol), OSPF (Open Shortest Path First), ARP (Address Resolution Protocol).
Канальный уровень (англ. data link layer) предназначен для обеспечения взаимодействия сетей на физическом уровне и контроля ошибок, которые могут возникнуть. Полученные с физического уровня данные он упаковывает в кадры, проверяет на целостность, если нужно, исправляет ошибки (формирует повторный запрос поврежденного кадра) и отправляет на сетевой уровень. Канальный уровень может взаимодействовать с одним или несколькими физическими уровнями, контролируя и управляя этим взаимодействием. Спецификация IEEE 802 (Ethernet) разделяет этот уровень на два подуровня: MAC (англ. media access control) регулирует доступ к разделяемой физической среде, LLC (англ. logical link control) обеспечивает обслуживание сетевого уровня.
На этом уровне работают коммутаторы, мосты и другие устройства. Говорят, что эти устройства используют адресацию второго уровня (по номеру уровня в модели OSI).
Примерами протоколов сетевого уровня являются Ethernet, Spanning tree protocol, Token ring
Физический уровень (англ. physical layer) – нижний уровень модели, предназначенный непосредственно для передачи потока данных. Осуществляет передачу электрических или оптических сигналов в кабель или в радиоэфир и, соответственно, их приём и преобразование в биты данных в соответствии с методами кодирования цифровых сигналов. Другими словами, осуществляет интерфейс между сетевым носителем и сетевым устройством. На этом уровне также работают концентраторы, повторители сигнала и медиаконвертеры.
Функции физического уровня реализуются на всех устройствах, подключенных к сети. Со стороны компьютера функции физического уровня выполняются сетевым адаптером или последовательным портом. К физическому уровню относятся физические, электрические и механические интерфейсы между двумя системами. Физический уровень определяет такие виды среды передачи данных как оптоволокно, витая пара, коаксиальный кабель, спутниковый канал передач данных и т. п. Примерами протоколов физического уровня являются: IEEE 802.15 (Bluetooth), DSL, ISDN, 802.11 Wi-Fi.
Основным стеком протоколов Интернет является стек TCP/IP, реализующий модель с коммутацией пакетов. Стек содержит четыре уровня: прикладной, транспортный, межсетевой и уровень доступа к среде.
Прикладной уровень содержит все протоколы высокого уровня, такие как TELNET, FTP, HTTP, SMTP, DNS.
Транспортный уровень обеспечивает связь одноранговых сущностей на приемных и передающих хостах. Здесь существуют два сквозных протокола: TCP (Transmission Control Protocol – протокол управления передачей) и UDP (User Data Protocol – пользовательский протокол данных).
TCP является надежным протоколом с установлением соединений и позволяет без ошибок доставлять байтовый поток с одной машины на другую. Он разбивает входной поток байтов на отдельные сообщения и передает их межсетевому уровню. В пункте назначения получающий TCP-процесс собирает из полученных сообщений выходной поток. Кроме того, в функцию TCP входит управление потоком, чтобы быстрый отправитель не завалил информацией медленного получателя.
UDP является ненадежным протоколом без установления соединения. Он широко используется в одновременных клиент-серверных запросах и в приложениях, в которых оперативность важнее точности, например при передаче речи и видео.
Интернет-уровень или межсетевой уровень (IP) является основой для всей архитектуры. Его задачей является обеспечение возможности каждому хосту посылать в любую сеть пакеты, которые будут независимо передвигаться к пункту назначения. Они могут прибывать не в том порядке, в котором были отправлены, поэтому если требуется соблюдение порядка следования пакетов, то этим занимаются более высокие уровни.
Уровень доступа к среде описывает среду передачи данных (будь то коаксиальный кабель, витая пара, оптическое волокно или радиоканал), физические характеристики такой среды и принцип передачи данных (разделение каналов, модуляцию, амплитуду сигналов, частоту сигналов, способ синхронизации передачи, время ожидания ответа и максимальное расстояние). Кроме того, уровень описывает, каким образом передаются пакеты данных через физический уровень, включая кодирование (то есть специальные последовательности бит, определяющих начало и конец пакета данных). Стандарт Ethernet, например, в полях заголовка пакета содержит указание того, какой машине или машинам в сети предназначен этот пакет.
Адресация в компьютерных сетях
Для передачи информации между компьютерами в сети необходимо однозначно их идентифицировать. Для этого применяют уникальные адреса. IP-адрес (от англ. Internet Protocol Address) – уникальный сетевой адрес узла в компьютерной сети, построенной на основе TCP/IP. В сети Интернет требуется глобальная уникальность адреса; в случае работы в локальной сети требуется уникальность адреса в пределах сети.
В современной сети Интернет используется IP четвёртой версии, также известный как IPv4. В протоколе IP этой версии каждому узлу сети ставится в соответствие IP-адрес длиной 4 октета (4 байта). При этом компьютеры в подсетях объединяются общими начальными битами адреса. Количество этих бит, общее для данной подсети, называется маской подсети (ранее использовалось деление пространства адресов по классам – A, B, C; класс сети определялся диапазоном значений старшего октета и определял число адресуемых узлов в данной сети, сейчас используется бесклассовая адресация).
В настоящее время вводится в эксплуатацию шестая версия протокола – IPv6, которая позволяет адресовать значительно большее количество узлов, чем IPv4. Эта версия отличается повышенной разрядностью адреса, встроенной возможностью шифрования и некоторыми другими особенностями. Переход с IPv4 на IPv6 связан с трудоёмкой работой операторов связи и производителей программного обеспечения и не может быть выполнен одномоментно.
Службы Интернета
Сервисы Интернет – сервисы, предоставляемые в сети Интернет пользователям, программам, системам. В сети Интернет сервисы предоставляют сетевые службы, то есть прикладные программы, которые обеспечивают связь прикладных процессов, расположенных в различных абонентских системах сети, в частности, - взаимодействуют в сети с клиентами, серверами и данными; - управляют процедурами распределенной обработки данных;
- информируют пользователей о происходящих в сети изменениях.
Для реализации служб Интернета широкое применение нашёл принцип доступа к ресурсам под названием «клиент-сервер». Архитектура клиент-сервер – архитектура распределенной вычислительной системы, в которой приложение делится на клиентский и серверный процессы. Клиент – это аппаратный или программный компонент вычислительной системы, посылающий запросы серверу. Сервер – это аппаратный или программный компонент вычислительной системы, выполняющий сервисные (обслуживающие) функции по запросу клиента, предоставляя ему доступ к определённым ресурсам или услугам.
Программа, являющаяся клиентом, взаимодействует с сервером, используя определённый протокол. Она может запрашивать с сервера какие-либо данные, манипулировать данными непосредственно на сервере, запускать на сервере новые процессы и т. п. Полученные от сервера данные клиентская программа может предоставлять пользователю или использовать как-либо иначе, в зависимости от назначения программы.
Для взаимодействия с клиентом (или клиентами, если поддерживается одновременная работа с несколькими клиентами) сервер выделяет необходимые ресурсы межпроцессного взаимодействия (разделяемая память, сокет, и т. п.) и ожидает запросы на открытие соединения (или, собственно, запросы на предоставляемый сервис). В зависимости от типа такого ресурса, сервер может обслуживать процессы в пределах одной компьютерной системы или процессы на других машинах через каналы передачи данных (например, COM-порт) или сетевые соединения.
У слова «сервер», также есть второе значение – компьютер (аппаратное обеспечение), на котором выполняется программа-сервер (при этом ясно, что без этой программы аппаратное обеспечение не может ничего предоставлять). Важно понимать что сервер, в том значении как его должно понимать в контексте «клиент-сервер» всегда является программой (или программным модулем), выполняющейся на каком-то аппаратном обеспечении. Теоретически, на одной единице аппаратного обеспечения, может одновременно выполняться произвольное количество серверов (за исключением серверов конфликтующих между собой по ресурсам или их количеству), они будут делить между собой аппаратные ресурсы.
Программа-клиент и программа-сервер могут работать как на одном и том же компьютере, так и на разных. Во втором случае для обмена информацией между ними используется сетевое соединение.
Отметим, что понятия «клиент» и «сервер» описывают распределение ролей при выполнении конкретной задачи, а не вычислительные мощности. На одном и том же компьютере могут одновременно работать программы, выполняющие как клиентские, так и серверные функции. Например, веб-сервер может выступать в роли клиента, получая данные для формирования веб-страниц от SQL-сервера. И в то же время веб-сервер выступает в роли настоящего "сервера" для веб-браузера.
Облачные вычисления.
Начиная с 2008 года, внимание специалистов привлекает технология, называемая облачными вычислениями. Облачные вычисления (англ. cloud computing) – это модель обеспечения повсеместного и удобного сетевого доступа по требованию к общему пулу конфигурируемых вычислительных ресурсов (например сетям передачи данных, серверам, устройствам хранения данных, приложениям и сервисам), которые могут быть оперативно предоставлены и освобождены с минимальными эксплуатационными затратами и/или обращениями к провайдеру.
С точки зрения бизнеса, облачные вычисления могут принести следующие выгоды: значительное уменьшение расходов на ИТ инфраструктуру (в краткосрочном и среднесрочном планах) и возможность компании гибко реагировать на изменения рыночных спроса и предложения.
Американским институтом по стандартам (NIST) были разработаны следующие обязательные характеристики облачных вычислений:
Самообслуживание по требованию (англ. self service on demand), потребитель самостоятельно определяет и изменяет вычислительные потребности, такие как серверное время, скорости доступа и обработки данных, объём хранимых данных без взаимодействия с представителем поставщика услуг;
Универсальный доступ по сети, услуги доступны потребителям по сети передачи данных вне зависимости от используемого терминального устройства
Объединение ресурсов (англ. resource pooling), поставщик услуг объединяет ресурсы для обслуживания большого числа потребителей в единый пул для динамического перераспределения мощностей между потребителями в условиях постоянного изменения спроса на мощности; при этом потребители контролируют только основные параметры услуги (например, объём данных, скорость доступа), но фактическое распределение ресурсов, предоставляемых потребителю, осуществляет поставщик (в некоторых случаях потребители всё-таки могут управлять некоторыми физическими параметрами перераспределения, например, указывать желаемый центр обработки данных из соображений географической близости);
Эластичность, услуги могут быть предоставлены, расширены, сужены в любой момент времени, без дополнительных издержек на взаимодействие с поставщиком, как правило, в автоматическом режиме;
Учёт потребления, поставщик услуг автоматически исчисляет потреблённые ресурсы на определённом уровне абстракции (например, объём хранимых данных, пропускная способность, количество пользователей, количество транзакций), и на основе этих данных оценивает объём предоставленных потребителям услуг.
С точки зрения поставщика, благодаря объединению ресурсов и непостоянному характеру потребления со стороны потребителей, облачные вычисления позволяют экономить на масштабах, используя меньшие аппаратные ресурсы, чем требовались бы при выделенных аппаратных мощностях для каждого потребителя, а за счёт автоматизации процедур модификации выделения ресурсов существенно снижаются затраты на абонентское обслуживание.
С точки зрения потребителя, эти характеристики позволяют получить услуги с высоким уровнем доступности и низкими рисками неработоспособности, обеспечить быстрое масштабирование вычислительной системы благодаря эластичности без необходимости создания, обслуживания и модернизации собственной аппаратной инфраструктуры.
Язык разметки гипертекста. Основы создания сайтов.
HTML (от англ. HyperText Markup Language – «язык разметки гипертекста») – стандартный язык разметки документов во Всемирной паутине. Большинство веб-страниц создаются при помощи языка HTML (или XHTML). Язык HTML интерпретируется браузерами и отображается в виде документа, в удобной для человека форме.
HTML – теговый язык разметки документов. Любой документ на языке HTML представляет собой набор элементов, причём начало и конец каждого элемента обозначается специальными пометками – тегами. Элементы могут быть пустыми, то есть не содержащими никакого текста и других данных (например, тег перевода строки <br>). В этом случае обычно не указывается закрывающий тег. Кроме того, элементы могут иметь атрибуты, определяющие какие-либо их свойства (например, размер шрифта для элемента font). Атрибуты указываются в открывающем теге. Вот примеры фрагментов HTML-документа:
<strong>Текст между двумя тегами.</strong>
<a href="http://www.example.com">Здесь элемент содержит атрибут href.</a>
Пример пустого элемента: <br />
Регистр, в котором набрано имя элемента и имена атрибутов, в HTML значения не имеет (в отличие от XHTML). Элементы могут быть вложенными. Например, следующий код:
<b> Этот текст будет полужирным, <i>а этот - ещё и курсивным</i> </b>
даст такой результат:
Этот текст будет полужирным, а этот - ещё и курсивным
Рассмотрим основные теги HTML.
1. Текстовые блоки
<H1> … </H1>, <H2> … </H2>, … ,<H6> … </H6> – заголовки 1, 2, … 6 уровня. Используются для выделения частей текста (заголовок 1 – самый большой, 6 – самый маленький).
<P> – новый абзац. В конце абзаца следует ставить </P>.
<BR> – новая строка. Стандарты предписывают использовать <BR />.
<HR> – горизонтальная линия/
2. Гиперссылки
<A HREF="filename" >горячий текст</A>. Атрибут HREF задает значение адреса документа, на который указывает ссылка. Праметр filename – имя файла или адрес Internet, на который необходимо сослаться.
3. IMG – вставка изображения.
<IMG SRC=foto.jpg>. Атрибут SRC – имя файла с картинкой или URL.
4. Списки
UL – создание маркированного списка, OL – нумерованного списка, LI – элемент списка.
<UL>
<LI> первый элемент </LI>
<LI> второй элемент </LI>
</UL>
5. Таблицы
TABLE – создание таблицы. Атрибуты тега: BORDER – толщина разделительных линий в таблице, CELLSPACING – расстояние между клетками. TR – строка таблицы, TD – ячейка таблицы.
<TABLE BORDER="1" CELLSPACING="0">
<TR>
<TD> Товар </TD>
<TD> Цена </TD>
</TR>
<TR>
<TD> Молоток </TD>
<TD> 216 </TD>
</TR>
<TR>
<TD> Гвоздь </TD>
<TD> 7 </TD>
</TR>
</TABLE>
Приведем пример полностью готовой веб страницы
<HTML>
<HEAD>
<TITLE>Новая страница</TITLE>
</HEAD>
<BODY>
<H1>Красивый заголовок<H1>
<P>Текст первого абзаца.</P>
<IMG SRC = ’foto.jpg’>
<A HREF =’http://e1.ru’>переход на сайт города Екатеринбурга</A>
</BODY>
</HTML>
Глава 12. Компьютерная и информационная безопасность
При сетевом взаимодействии возникают вопросы обеспечения информационной и компьютерной безопасности.
При решении вопросов безопасности рассматривают архитектуру безопасности системы, которая включает службу безопасности системы и механизмы обеспечения безопасности.
Угрозы безопасности
Угроза безопасности – действие или событие, которое может привести к разрушению, искажению или несанкционированному использованию ресурсов сети (включая обрабатываемую и хранимую информацию, аппаратные и программные средства).
Рис. 52 Классификация угроз безопасности
Случайные (непреднамеренные) угрозы – возникают при неправильных (ошибочных) действиях пользователя, при ошибках в программном обеспечении, выходе из строя аппаратных средств.
Умышленные угрозы преследуют цель нанесения ущерба пользователям системы.
Пассивные угрозы – не разрушают информационные ресурсы и не оказывают действия на работу системы. Цель – несанкционированное получение информации.
Активные угрозы – нарушают нормальный процесс функционирования системы путем разрушения линий связи, выхода из строя элементов системы или её операционной системы, искажения баз данных. Источники – действия физических лиц, компьютерные вирусы и т.д.
Служба безопасности сети обеспечивает:
подтверждение подлинности того, что объект, который предлагает себя в качестве отправителя информации, действительно им является;
обеспечение целостности информации, восстановление данных;
секретность всех передаваемых данных;
нейтрализацию попыток несанкционированного использования ресурсов сети;
нейтрализацию угрозы отказа от информации со стороны ее отправителя или получателя.
Для защиты информации в сети и автономно работающих станций применяют ряд организационных, организационно- технических, программных мер .
Ограничение доступа в помещение, где происходит обработка информации. Установка на дверях кодовых замков.
Допуск к обработке и передачи информации только проверенных должностных лиц.
Хранение носителей данных и регистрационных журналов в закрытых для доступа посторонним лицам местах .
Уничтожение бумаги и иных материалов, содержащих фрагменты ценной информации.
Исключение просмотра посторонними лицами содержания обрабатываемых материалов (например, через дисплей, принтер, и т.д.).
Использование шифрования при передаче ценной информации.
Осуществление питания оборудования, обрабатывающего ценную информацию, через сетевые фильтры от независимого источника питания.
Уничтожение информации, хранящейся в памяти устройства при его списании и отправке в ремонт.
Установка клавиатуры и принтеров на мягкие прокладки с целью снижения возможности снятия информации акустическим способом.
Ограничение электромагнитного излучения путем экранирования помещений.
Организация системы доступа к памяти, включающей: контроль доступа к различным уровням памяти компьютеров, блокировки данных и ввода ключей, выделения контрольных битов для записей с целью идентификации и т.д.
Использование программных средств защиты информации с функциями: контроля регистрации вхождения в систему, записи в системном журнале, контроля действий пользователя, реакцию на нарушение системы защиты, контроля мандатов доступа, контроля защищенности используемой операционной системы, контроля алгоритмов защиты, проверку подтверждения правильности функционирования технического и программного обеспечения.
Явное указание на секретность выводимой информации.
Применение средств защиты от вирусов.
Компьютерные вирусы
Компьютерный вирус это чаще всего небольшая программа, которая встраивается в другие программы или файлы. Вирус активируется в момент открытия файла. Результатом действия вирусов может быть потеря отдельных данных, разрушение всей системы, кража информации. Вирусы разнообразны: одни изменяют загрузочный сектор, другие, используя макроязык операционной системы, просто размножаются или удаляют файлы.
Шпионящее программное обеспечение (Spyware). Попадая на компьютер под видом рекламной или баннерной программы, такая программа ищет данные о компьютере, пользовательские данные, упаковывает эти данные в архив и отсылает, используя соединение с Internet на сервер создателя программы шпиона.
Трояны (trojan) – вирусы, которые незаметно для владельца компьютера собирают данные и отправляют их по сети. Трояны обычно охотятся за номерами кредитных карт, паролями и другой личной информацией. Троян сложно распознать, так как он не наносит никакого видимого ущерба. Трояны могут быть незаметно установлены на компьютер в качестве ftp-сервера. При помощи сервера хакер может проникнуть на компьютер и загрузить или удалить любой файл. Другая разновидность троянов ‑ mail – трояны, которые записывают вводимую пользователем информацию и затем отсылают ее по электронной почте. Наиболее опасный вид троянов – трояны удаленного доступа (Remote Access). С помощью таких программ хакер получает полный контроль над компьютером и может управлять компьютером удаленно.
Черви (worm) – программы, которые могут самостоятельно репродуцироваться и далее манипулируют компьютером. Например, вирус может быть прислан по почте и активируется при открытии файла. Далее, червь считывает адресную строку почтовой программы и рассылает себя по всем адресатам. Некоторые черви могут удалять файлы.
Рекомендации по защите от вирусов:
Установите антивирусную программу и регулярно обновляйте ее.
Не используйте носители информации без предварительной проверки.
Не используйте пиратские копии программного обеспечения.
Ограничьте круг пользователей вашим компьютером. Это должны быть хорошо известные вам люди.
При активной работе в Internet необходимо регулярно проверять компьютер на наличие вирусов. Лучше, чтобы антивирусная программа была включена постоянно.
Выполняйти скрипты только в том случае, если есть уверенность в том, что они решают.
Для защиты компьютера используйте брандмауэр операционной системы.
Литература
Microsoft Office 2010. Руководство по продукту.
PowerPoint 2007. Как создать красочную и информативную презентацию, р: С. В. Безека, Издательство: НТ Пресс, Серия: Спрашивали - отвечаем, 2008 г., 192 с.
PowerPoint 2010 для чайников. PowerPoint 2010 for Dummies, Дуг Лоу, Издательство: Вильямс,2010, 320 с.
PowerPoint 2010 с нуля, Василий Леонов, Издательство: Эксмо, Серия: Компьютер на 100%, 2010 г.320 с.
Word. Excel. Интернет. Электронная почта: официальный учебный курс для получения Европейского сертификата. – М.: Триумф, 2008. – 320 с.
Бекаревич Ю.Б., Пушкина Н.В. Самоучитель Access 2010. – СПб.: БХВ-Петербург, 2011. – 432 с.
Гурвиц Г.А. Microsoft Access 2010. Разработка приложений на реальном примере. - СПб.: БХВ-Петербург, 2010. – 496 с.
Епанешников А.М., Епанешников В.А. Практика создания приложений в Access 2007. – М.: «Диалог-МИФИ», 2009. – 440 с.
Информатика и информационные технологии/ Под ред. Ю. Д. Романовой - 4-е изд..-М.: Эксмо, 2010, -688 с.
Информатика. Базовый курс: учебное пособие для вузов / Под ред. С. В. Симоновича.-2-е изд..-СПб.: Питер, 2010.- 640 с.
Ковтанюк Ю. С. Библия пользователя ПК. — М.: Диалектика, 2007. — 992 с.
Кошелев В.Е. Access 2007. – М.: ООО «Бином-Пресс», 2008 г. – 592 с.
Безручко В. Т., Презентации PowerPoint, Издательство: Финансы и статистика, Серия: Диалог с компьютером,2009, 112 с.
Сергеев А. Access 2007. Новые возможности. – СПб.: Питер, 2008. – 176 с.
Пахомов И. В., Прокди Р. Г. Создание презентаций в PowerPoint 2010, М.: Наука и техника, Серия: Компьютерная шпаргалка. 2011 г., 80 с.
Бортник О., Базовый курс PowerPoint. Изучаем Microsoft Office, Издательство: Современная школа,; 2007 г., 48 с.
Молочков В.П., MicrosoftPowerPoint 2010 HTTP://INTUIT.RU
Мюррей К. Первый взгляд на Microsoft Office 2010.
Острейковский В.А. Информатика: Учебник для вузов. М.:Высш. шк., 2001. 511 с.
Степанов А. Н. Информатика: Учебник для вузов. 4-е изд. – СПб: Питер, 2006, - 684 с. (5-е изд. 2008, 768 с.)
Тихомиров А.Н., Прокди А.К., Колосков П.В., Клеандрова И.А. Microsoft Office 2007 все программы пакета: WORD, EXCEL, ACCESS, ROWERPOINT, PUBLISHER,OUTLOOK, ONENOTE, INFOPATH, GROOVE. Самоучитель. – СПб.: Наука и техника, 2008. 608 с.
Учебное электронное текстовое издание
Лариса Игоревна Бродская,
Антон Юрьевич Коврижных,
Екатерина Александровна Конончук,
Алексей Станиславович Лахтин,
Светлана Николаевна Семенищева,
Елена Ивановна Смирнова,
Святослав Игоревич Солодушкин,
Татьяна Кабдешевна Стихина
Информатика
Электронный формат – pdf
Объем 12 уч.-изд. л.
620002, Екатеринбург, ул. Мира, 19
Информационный портал УрФУ
http://www.ustu.ru