Учебник Беларуссии 11 кл углубленный.pdf

  • pdf
  • 29.04.2020
Публикация на сайте для учителей

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

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Учебник Беларуссии 11 кл углубленный.pdf

ИНО©РМАТИКА

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

(базовый и повышенный уровни)

Допущено

Министерством образования

Республики Беларусь

2-е издание, дополненное

Минск «Народная асвета» 2008

удк

ББК 32.81я721

И74

Авторы:

А. Е. Пупцев — главы 1, 2, 4, 6, Н. П. Макарова — главы 2, З, Г. А. Заборовский — глава 5, А. А. Черняк — глава 5

Рецензенты:

кафедра прикладной математики и информатики

Белорусского государственного педагогического университета им. Максима Танка (зав. кафедрой, канд. физ.-мат. наук, доцент А. А. БейДа), кафедра экономической информатики Белорусского государственного аграрного технического университета (зав. кафедрой, канд. пед. наук, доцент О.Л. Сапун), учитель информатики высшей категории СШ № 209 г. Минска Л. И. Мосткова

Информатика : учеб.. пособие для -го ют. общеобразоват. учрежИ74 дений с белорус. и рус. яз. обучения с 12-летним сроком обучения (базовый и повышенный уровни) / А. Е. Пупцев [и др. 1. 2-е изд., дополненное. Минск : Нар. асвета, 2008. 223 с. : ил. ISBN 978-985-12-1998-4.

ББКЗ2.81я721

          ISBN 978-985-12-1998-4                                                   С) Оформление. УЛ] «Народная асвета», 2008

                                          От авторов    

Уважаемый старшеклассник!

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

Данное пособие содержит материал для изучения информатики на базовом и повышенном уровнях. Учебный материал, предназначенный для изучения на повышенном уровне, отмечен звездочкой (*).

Учебное пособие состоит из шести глав.

Изучив главу «Информационные модели, систе м ы и технологии», Вы углубите знания в области построения и использования информационных моделей, расширите представления об информационных системах и технологиях.

В главе 2 «Аппаратное и программное обеспечение компьютера» содержится материал об архитектуре современного компьютера, дается классификация программного обеспечения, рассматриваются возможности различных операционных систем.

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

Глава 4 « ифХНОЛОГИЯ обработки информации в системах управления базами данных» изучается на повышенном уровне. Она познакомит Вас с возможностями системы управления базами данных Microsoft Access. В процессе изучения материала главы Вы будете создавать таблицы, формы, отчеты в базе данных. Научитесь использовать фильтры, выполнять сортировку данных и создавать различного вида запросы.

4

 

 

 

 

От авто ов

 

Материал главы 5 «Вычислительные методы и технологии» предназначен для изучения на повышенном уровне. Изучив его, Вы познакомитесь с использованием универсальной математической системы Mathcad для решения уравнений, систем уравнений, неравенств, а также построения графиков функций.

Глава 6 «Коммуникационные технологии» содержит материал о средствах обмена информацией в режиме реального времени в сети Интернет, о способах и скорости передачи информации в сети, о телекоммуникациях в сфере образования, культуры, коммерческой и рекламной деятельности.

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

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

Желаем успехов в изучении информационных технологий и основ программирования.

Информация. Представление и измерение информации

1 .1 . Понятие информации. Виды и свойства информации

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

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

Термин «информация» произошел от латинского слова informatio, что означает разъяснение, осведомление, изложение.

Информация такое же важное понятие, как и материя. Н. Винер писал: «Информация — это информация, а не материя или энергия».


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

Физика изучает информацию, присущую процессам, существующим в неорганическом мире. Биология рассматривает информацию о живой природе, а экономическая информация отражает социально-экономические процессы.

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

На рисунке 1.1 представлены некоторые существующие классификации видов информации по различным признакам.

Эффективность использования информации человеком во многом зависит от ее качества. Качество информации определяется такими ее свойствами, как Достоверность, полнота, актуальность, полезность, понятность и др.

Достоверность информации определяется ее способностью отображать реальное состояние объектов или процессов.

6

 

Глава 1 . Информационные модели, системы и технологии

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

Акгџальность информации определяется степенью ее ценности в данный момент времени.

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

[Ронятаоегь характеризует степень восприятия информации получателем.

1 .2. Представление информации

Представление информации в живой природе и технике осуществляется в различных формах.

Одной из форм представления информации и обмена ею между людьми являются языки. Языки разделяются на естествен в и фор

S

Информация. Представление и измерение информации

 

7

 

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

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

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

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

Сигнал (от латинского signurn — знак) — изменяющийся во времени физический процесс, с помощью которого передается сообщение.

Сообщение форма представления информации в виде совокупности знаков (символов).

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

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

Числовая информация в компьютере представляется в двоичной системе счисления.

Для кодирования текстовой информации в компьютере используются кодовые таблицы, например ASCII или Unicode. Нам уже известно из базового курса информатики, что таблица ASCII поддерживает 8-разрядный двоичный код. Это значит, что каждый символ закодирован последовательностью из 8 нулей и единиц.

8

 

Глава 1 . Информационные модели, системы и технологии

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

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

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

З. Измерение информации

Рассматривая измерение информации, мы будем использовать понятие Данные.

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

Для измерения информации применим синтаксический подход.

Определение количества информации при этом подходе предполагает рассмотрение носителей информации, способов представления и кодирования информации, скорости ее передачи и др.

При этом подходе для измерения информации применяется параметр объем Данных !/д.

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

Минимальное количество информации, для кодирования которой достаточно одного двоичного разряда, называют битом (bit). Слово «бит» сформировано из двух английских слов: binary — Двоичный, digit знак. Бит может принимать только два значения: 0 или 1.

Для удобства используется единица измерения количества информации байт (byte), который состоит из 8 последовательных бит:

 байт = 23 бит = 8 бит.

S 2. Информационные модели

 

9

При работе с большими объемами информации используются и более крупные единицы измерения объема данных:

1 кбайт (килобайт) = 1024 байт = 2 10 байт; 1 Мбайт (мегабайт) = 1024 кбайт = 220 байт; I Гбайт (гигабайт) = 1024 Мбайт = 230 байт; 1 Тбайт (терабайт) = 1024 Гбайт = 240 байт.

1- Что понимается под информацией в информатике?

2. Какие виды информации Вы знаете?

З. Назовите основные свойства информации.

4.     Для чего человек использует естественные и формальные языки? Приведите примеры таких языков.

5.     Как представляется в компьютере информация различных видов?

6.     Какие единицы измерения информации при синтаксическом подходе Вы знаете?

7.     Что такое бит и байт?

Упражнения

1.      Ответьте на вопрос, что больше:

         а) 9 бит или байт;                   б) 1 кбайт или 1000 байт;

           в) 230 байт или 1 Тбайт;                      г) 1025 Мбайт или Гбайт.

2.      Определите емкость типичных носителей информации компьютера, которые Вы используете в кабинете информатики:

      а) винчестер (жесткий диск);           в) CD диск;

      б) DVD диск;                                    г) Наф-память.

ё 2. Информационные модели

Понятия модель и моделирование не являются для нас новыми. Под мовелью понимается объект, используемый с какой-то целью вместо другого объекта. Процесс мос)елирования позволяет создавать и исследовать разные модели. Модели могут быть разделены на два больших класса: материальные и информаЦИОННЫе.

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

Знаковая информационная модель представляет собой описание объекта, процесса на каком-либо естественном или формальном языке, а образная модель представляется в виде рисунков, фотографий, схем и т. д.


Информационная модель размещается на определенном носителе информации: бумаге, видеопленке, магнитном диске и др.

Виды информационных моделей представлены на рисунке 1.2.

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

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

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


Многие модели, представленные на естественном языке, описывают последовательности действий, процессов и представляются в виде алгоритмов.

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

К графическим информационным моделям относятся схемы, карты, чертежи, планы, графики и др.

Широкое распространение получили табличные информационные модели. В табличных моделях информация может размещаться разными способами: «объект — свойство», «объект объект».

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

Погода

Ддта

Температура, ос

Давление, ММ РТ. СТ.

Влажность, о о

29.06.07

22

745

79

30.06.07

24

747

73

1.07.07

27

748

68

2.07.07

29

744

78

3.07.07

25

745

77

В таблице вида «объект — объект» в первой строке размещаются объекты

(например, «Высказывание А и В» в «Таблице истинности логической операции

S 2. Информационные модели

 

11

И»), а в последующих строках — значения их свойств («Истина» или «Ложь»)

Таблица истинности логической операции И

Высказывание

Высказывание

В

Высказывание А и В

Истина

Истина

Истина

Истина

ложь

Ложь

Ложь

Истина

Ложь

Ложь

Ложь

Ложь

Для более полного описания свойств или характеристик какого-либо объекта может использоваться несколько информационных моделей разных видов. Пример. Описание химического вещества «углекислый газ».

Вид модели

Модель

Описание на естественном языке

Бесцветный газ, молекула которого состоит из одного атома углерода и двух атомов кислорода. Относительно хорошо растворим в воде, образует слабую угольную кислоту.

Описание на формальном языке

C02

Графическая модель (схема)

Упражнения

1.      Ответьте на вопрос, к какому вид,т информационных моделей относятся эти модели: б) описание автомобильной аварии

а) а          = 2Rsinw, bc      очевидцем;

 

 

Не

 

 

 

 

 

 

 

 

 

 

 

 

 

вна

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

                                           в) ПЕРИОДИЧЕСКАЯ СИСТЕМА ХИМИЧЕСКИХ группы ЭЛЕМЕНТОВЭЛЕМЕНТОВ ДЛ МЕНДЕЛЕЕВА                 г)

2.      В табличном процессоре Excel создайте таблицу.

Название книги

Цена, р.

Количество книг на складе, шт.

Продано, шт.

Сумма, р.

Компьютерный дизайн

39 000

203

15

 

Интернет для всех

15 000

502

 

 

СУБД Access

25 000

240

32

 

Редактор Word

18 000

379

48

 

ОС Windows ХР

26 000

233

26

 

Электронная почта

10 000

387

25

 

Итого

 

 

 


Проведите необходимые вычисления для пустых ячеек. Постройте столбчатую диаграмму, отражающю продажу книг. Модели каких видов Вы получили? * З. Создайте в текстовом редакторе рисунок а и схему б. Какого вида информаЦИОННЫе модели Вы получили?

а)

ё З. Информационные системы и технологии

3.1 . Системы и информационные системы

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

Слово «система» (systema) имеет греческое происхождение и означает целое, состоящее из частей.

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

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

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

В курсе информатики мы уже знакомились с разными системами: ОПеРаЦИОНными, файловыми, системами управления базами данных и т. д.

Добавление к понятию «система» слова «информационная» позволяет определить ее основное функциональное назначение — работа с информацией.

Информационная система (ИС) — совокупность средств и методов сохранения, обработки, поиска и выдачи информации, обслуживаемая и используемая человеком.

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

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

Возможности информационно-поисковых (справочных) систем, географических и обучающих информационных систем нам уже известны из базового курса информатики.

Любая современная информационная система состоит из подсистем, включающих техническое, программное, информаиионное, организаиионное и празовое ооеспечения.

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

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

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

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

3.2. Технологии и информационные технологии

Определение информационных технологий тесно связано с понятием «технология».

Термин «технология» происходит от греческого слова techne наука об умении, мастерстве, искусстве. Этот термин имеет множество значений.

 15

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

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

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

Понятие «информационные технологии» впервые было применено в конце

50-х годов ХХ в. в Англии и США, однако его активное использование началось в 80-е годы ХХ в., когда под влиянием новых технологий в обществе начали широко использовать термин «информация».

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

Технология обработки текстовой информации

 

ЭТАПЫ

 

 

 

 

Форматирование документа

2

 

 

ДЕЙСТВИЯ

 

Форматирование абзацев

 

Задание параметров страницы

 

 

ЭЛЕМЕНТАРНЫЕ ОПЕРАЦИИ

 

 

 

 

 

Выбор размера бумаги

 

Задание ориентации

 

Определение отступа на странице


16

 

 

 

Глава 1 . Информационные модели, системы и технологии

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

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

Компьютерные информационные технологии классифицируют по методам, способам и приемам обработки информации, представленной в разной форме. Эта классификация показана на рисунке 1.4.

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

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

Например, независимо от того, какие информационные системы мы ИСПОЛЬзуем при работе с базами данных, действия и операции эффективного поиска информации в них, которые отражает технология работы с базами данных, являются одинаковыми.

мы и технологии

 

17

S З. Информационные систе

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

1 . Что понимается под системой?

2. Какую систему называют информационной?

з. Из каких подсистем состоит современная информационная система?

4.     Что понимается под технологией?

5.     Какую технологию называют информационной?

6.     Назовите ИТ, которые Вы знаете.

7.     В чем различие между информационными системами и информационными технологиями?

ОБЕСПЕЧЕНИЕ КОМЬЮТЕРА

ё 4. Архитектура компьютера

4.1. Общее представление об архитектуре компьютера

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

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

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

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

*               структуры использования каналов ввода—вывода (рис. 2. I );

*               магистральной структуры (рис. 2.2).

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

Второй тип структуры предполагает, что взаимодействие центрального процессора, памяти и устройств ввода—вывода выполняется через единое подключение к системной магистрали (см. рис. 2.2). Системная магистраль используется для передачи данных и адресов.

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


Рис. 2.2

 

Устройства ввода—вывода

Один подход предложил известный американский ученый Джон фон Нейман ( 1903—1957). При этом подходе выполняемые команды программ и данные хранятся в одной и той же области памяти. Команды указывают, что необходимо выполнить и адреса данных, которые необходимо использовать. Подход Неймана позволил упростить устройство процессора.

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

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

1. Что понимается под архитектурой компьютера?

*2. Какими двумя типами архитектуры могут быть представлены персональные компьютеры и ЭВМ?

4.2. Процессоры и их хаоактеристики

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

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

Для установки процессора на системной плате предназначен разъем, который называется сокет. Сокеты различаются по числу контактов и их расположению.

Существуют различные типы процессоров. Например, корпорация lntel предлагает процессоры Се1егоп, Pentium, а корпорация AMD — Г)игоп и Athlon и т. д. У каждого типа процессоров есть свои достоинства и недостатки. Обычно выбор процессора основан на соотношении между ценой и производительностью для определенного круга задач.

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

Исполнение каждой команды в процессоре занимает определенное количество тактов. Чем выше частота тактов, тем большее число команд может выполнить процессор в единицу времени. Тактовая частота измеряется в герцах (Гц) и 60лее крупных единицах мегагерцах (МГц) и гигагерцах (ГГц). I МГц равен одному миллиону тактов в секунду, а ГГц — одному миллиарщ тактов в секунду. Таким образом, тактовая частота определяет важную характеристику процессора его быстродействие.

Разрядность процессора показывает, сколько бит данных он может обработать в своих регистрах за один такт. Разрядность процессоров современных компьютеров 32 бит или 64 бит.

Рабочее напряжение процессора (измеряется в вольтах) обеспечивает материнская плата. С развитием вычислительной техники происходило постоянное снижение рабочего напряжения от 5 В до З В, что позволило повысить производительность процессора.

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

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

Таблица 1

Производитель

Тип микропроцессора

Тактовая частота микропроцессора, ГГц

Кэш, кбайт

Разрядность, бит

Intel

Р4-661

 

2048

64

lntel

Се1егоп

3,33

512

64

АЛЮ

Athlon 64

3,5

 

AMD

Semptron

3,4

64

4,3, Виды памяти компьютера

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

Рассмотрим внутреннюю (электронную) и внешнюю память компьютера (рис. 2.3).

Оперативная память используется в основном для размещения выполняемых пользователем программ и данных в течение всего времени работы компьютера. Кроме этого, в оперативную память после ВКЛЮЧеНИЯ компьютера записываются некоторые программы операционной системы. Эта часть оперативной памяти во время сеанса работы недоступна пользовательским программам.

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

атации (такая технология называется флэш-технологиеЙ), так и вне его (с помощью специальных устройств, называемых программаторами).

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

Каким бы ни был объем внутренней памяти компьютера, его всегда не хватает. В связи с этим большие объемы информации хранятся на внешней памяти, которая размещается на МиГНИТНЫХ и оптических дисках (см. рис. 2.3).

К магнитным носителям информации относятся жесткий диск (винчестер) и гибкие диски (дискеты).

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

Оптические компакт-диски делятся на CD-ROM (CD-R) (от английского Compact Disk-Read 0nly Метогу — компакт-диск, предназначенный только для чтения) и CD-RW (от английского Compact Disk-ReWritable — перезаписывающийся компакт-диск), а также DVD (от английского Digital Video Disk цифровой видеодиск). Объем информации, хранящийся на оптических дисках, может в настоящее время достигать 17 Гбайт и более.


В качестве внешней памяти широко используется также ф.).эик - ПС[мЯ111Ь.

* Компакт-диск CD-R представляет собой прозрачный полимерный диск, на одной стороне которого напыляется светоотражающий слой алюминия. Дополнительно этот слой защищается от повреждений слоем прозрачного лака. Компактдиск CD-RW производится с помощью более сложной технологии. Слой красителя, размещенного на таком диске, может менять свои характеристики при нагреве лазерным лучом.

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

рис. 2 4

Дорожка

Информация на магнитном         Сектор диске располагается на дорожках, которые разделены на секторы. В одном секторе дорожки может быть размещено 128 байт, 256 байт, 512 байт или 1024 байт. Для сохранения файла дисковое пространство выделяется кластерами. Кластер является минимальной единицей

Кластер размещения информации на диске

Рис. 2.5 и состоит из одного или нескольких смежных секторов дорожки (рис. 2.5). Если для размещения файла смежных кластеров не хватает, то для него выделяются другие несмежные кластеры. В результате возникает фрагментирование, которое снижает скорость считывания файла. *

1.    Как подразделяется память по способу размещения?

2.    Из каких частей состоит внутренняя память компьютера?

З. для чего используется оперативная и постоянная память компьютера?

4. Какие виды оптических дисков вам известны?


* 5. Как располагается информация на магнитных дисках?

4.4. Внешние типовые устройства

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

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

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

Для систематизации знаний об устройствах ввода данных представим их классификацию на рисунке 2.6.

24

 

Глава 2. Аппаратное и программное обеспечение компьютера

Среди устройств ввода данных в компьютер нам уже знакомы клавиатура, микрофон, мышь и сканер. К устройствам бесклавиатурного ввода данных в комПЬЮТеР относятся также сенсорные устройства. Эти устройства способны распознавать зрительные образы, звуки, прикосновения, уровень температуры и т. д. В настоящее время сенсорные устройства широко используются в робототехнике и при разработке искусственного интеллекта. Наиболее часто встречающимися на практике сенсорными устройствами являются: оптические перья, сенсорные интерактивные экраны, графические планшеты (дигитайзеры), сенсорная клавиатура.

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

В настоящее время существуют мониторы с вакуумным кинескопом (электронно-лучевой трубкой) и жидкокристаллические мониторы. Толщина жидкокристаллического монитора составляет только 15—20 0 0 от толщины традиционного монитора.

Существуют принтеры нескольких типов: матричные, струйные и лазерные. Выбор принтера зависит от объема печати, качества печатаемых документов и др.


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

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

Для систематизации знаний об устройствах вывода данных представим их классификацию на рисунке 2.7.

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

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

S 4. Архитектура компьютера

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

1.    для чего предназначены устройства ввода и вывода информации в компьютер?

2.    Перечислите типовые внешние устройства:

а) ввода информации;

б) вывода информации;

в) ввода и вывода информации.

*4.5. Выбор аппаратного обеспечения компьютере

Рассмотрим некоторые основные подходы к выбору аппаратного обеспечения. Компьютеры могут быть собраны в широко известных фирмах-производителях, например lBM, Hewlett Packat-t и др. Тогда они имеют специальные товарные знаки. Эти товарные знаки указывают на изготовителя компьютера, являются определенной гарантией оказания разных сервисных услуг пользователю.

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

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

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


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

Оперативная память компьютера должна быть достаточно большой, например 256 Мбайт, что позволит работать с разнообразным программным обеспечением. Винчестер в компьютере, конечно, должен иметь гигабайты памяти. Слещет обратить внимание на время доступа к информации при работе с ним (8—10 мс).

При выборе видеомонитора необходимо уточнить его цветность, тип, размер экрана, разрешаюшую способность и др. Стоимость монитора часто составляет 25 Оо и более от стоимости всего компьютера. Частота кадровой развертки менее 70 Гц приводит к мерцанию экрана и плохо влияет на зрение.

Монитор при работе излучает (ультрафиолетовое и радиоизлучение). Имеет место и электростатическое поле. Поэтому рекоменщхется использовать фильтры (сеточные, пленочные или стеклянные). Чем современнее монитор, тем уровень его излучения меньше.

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

1.    На какие функциональные блоки и устройства следует обратить внимание пользователю при подборе конфигурации компьютера?

2.    Какие факторы влияют на производительность компьютера?

5. Программное обеспечение компьютера

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

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

S 5. Программное обеспечение компьютера

 

27

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

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

Программа, так же как и данные, хранится в памяти компьютера в двоичном коде. В составе программного обеспечения компьютера можно выделить четыре уровня: базовое, системное, инструментальное и приклаДное ПО (рис. 2.8).

Базовое программное обеспечение образует самый низкий уровень программного обеспечения. Его назначение обеспечение взаимодействия с базовыми аппаратными средствами, которые хранятся в специальных микросхемах (ПЗУ). В ПЗУ хранятся некоторые константы (например, л), программы для вычисления стандартных функций, программа тестирования компьютера при его включении.

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


Инструментальное ПО предназначено для разработки другого программного обеспечения (системного и прикладного).

 Примеры специализированных инструментальных сред:

 инструментальная среда СуЬег ВооК (система создания гипертекстовых мультимедийных книг) позволяет визуализировать гипертекст, содержащий ссылки на текст, мультимедийные объекты и программы;  интегрированные среды разработки приложений Borland Pascal 7.0, VisuaI Basic, Delphi, С++.

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

Данная классификация программного обеспечения построена на основе назначения программ каждого уровня. Известна и другая классификация, основанная на длительности нахождения программ в оперативной памяти. В соответствии с ней программы делят на резис)ентные и нерезидентные. Резидентные программы находятся в памяти постоянно (например, операционные системы, антивирусные программы), нерезидентные — только в процессе выполнения (например, прикладные программы).

Программное обеспечение классифицируется также по стоимости. Различают программы, распространяемые платно, бесплатно, условно-бесплатно.

Большинство программ распространяется на коммерческой основе. При этом набор дискет или компакт-дисков с записанной программой называется Дистрибутивом.

S 5. Программное обеспечение компьютера

 

29

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

Условно-бесплатные программы (shareware) предоставляются, как правило, для использования в определенный период (например, 30 дней) на бесплатной основе. Для систематического использования предлагается заплатить определенную сумму, затем пользователь получает регистрационный ключ, позволяющий использовать программу в полном объеме.

Производители некоторых программ делают их защищенными от копирования или предоставляют право их копирования на ограниченное количество компьютеров.

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

а1. Какие уровни программного обеспечения Вам известны?

2. К какому уровню программных средств относятся программы, обеспечивающие работу сканера? Принтера?

Б. Операционные системы

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

Windows (различные версии, разработчик — фирма Microsoft, США) Мас О! (разные версии для персональных компьютеров Macintosh, разработчик — фир ма Apple, США), Linux (разработчик — Линукс Торвалдс, Финляндия).

зо

Глава 2. Аппаратное и программное обеспечение компьютера

Епих современная Ејгйх-подобная многопользовательская сетевая опера ционная 32-разрядная система с сетевой оконной графической системой Х Windo» System для персональных компьютеров и рабочих станций. ОС Linux поддержива• ет протоколы сети Intemet, работает с сетями на базе Novell и MS Windows. Все компоненты системы распространяются бесплатно с правом установки для неограниченного числа пользователей. ОС Епих широко распространена на платформо lntel РС, DEC АХР, Power Macintosh и др. Основная часть системы может работать на 8 Мбайт памяти. С утилитами Linux занимает 10—20 Мбайт на жестком диске.

ОС Windows современная удобная операционная система для старших моделей персональных компьютеров ВМ РС. Эта система может использоваться на компьютерах с оперативной памятью более 2 Мбайт и памятью на жестких дисках не менее 80 Мбайт. Перенос информации с одного компьютера на другой возможен при наличии в них совместимых ОС. Компьютеры серии ВМ РС и компьютеры Macintosh несовместимы на уровне программного обеспечения.

Основные отличительные особенности современных ОС: дружественный графический (унифицированный пользовательский) интерфейс, где в различные программы заложены одинаковые принципы работы; автоматическое подключение новых устройств и программ (ОС сама выполняет настройку нового оборудования; такой принцип работы получил название «plug and play» — «подключи и используй»); многозадачность (единый программный интерфейс, который позволяет выполнять работу одновременно в нескольких программах, окнах, переносить информацию из одной программы в другую; многозадачный режим работы требует от ОС умения разделять память МэКЩ программами и данными); режим полного соответствия (формирование такого же изображения, как на экране монитора, принцип WYSIWYG — «What Уои See К What Уои Get»). Последний режим работы является отличительным признаком современных сред визуального программирования (Delphi, Visual Basic и др.).

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

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

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

Автоматическая загрузка ОС происходит при включении компьютера. Этапы загрузки ОС:


. При включении компьютера обеспечивается запуск программы BIOS (Basic Input/0utput System — базовая система ввода—вывода) и тестирование всех его устройств. Программа BIOS хранится в ПЗУ. Результаты работы программы BIOS можно увидеть, если приостановить загрузку ОС, нажав клавишу Pause/Break.

2. Загрузка ОС с системного диска в оперативную память: с помощью программы ivfaster Boot (загрузчик ОС), которая находится в специальном загрузочном секторе системного диска. Если системный диск отсутствует, на экран выдается сообщение Non systern disk, загрузка ОС прекращается, работа пользователя невозможна.

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

а1. Что такое операционная система?

2. Какие основные функции ОС?

З. Какие этапы загрузки ОС Вы знаете?

ё 7. Языки программирования

Решение задачи с помощью компьютера можно разбить на ряд этапов, носящих общий характер (хотя возможна некоторая их корректировка):

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

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

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

Паскаль один из популярных языков программирования. Названный в честь французского математика и философа Блеза Паскаля (1623—1662), он был создан как учебный язык программирования в 1971 г. Никлаусом Виртом в Высшей технической школе в Цюрихе. Среди достоинств языка выделяются: простота освоения (незначительный объем базовых понятий; несложный синтаксис); распространенность (выполнение программы практически на всех современных ПК); возможность развития (разработка на его основе современной среды визуального программирования Delphi, азы программирования в которой будут постигаться в 12-м классе на повышенном уровне обучения).

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

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

О 2. заК. 170.

Упражнения

1 . Приостановите загрузку ОС, изучите информацию, которая выводится на экран, и заполните слещющую таблицу:

Тип процессора

 

Тактовая частота процессора

 

Количество жестких дисков

 

Объем жестких дисков

 

Наличие дисководов гибких дисков, их параметры

 

Объем ОЗУ

 

Тип монитора

 

2. Представьте в виде таблицы способы запуска программы Проводник, указав методы запуска и элементы уравнения:

Метод запуска

Элемент управления

1. Через контекстное меню кнопки Пуск

Кнопка Пуск

 

 


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

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

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

Популярные среды программирования: ТигЬо Basic, ТигЬо Pascal, ТигЬо С, Borland Pascal, Borland Delphi, Microsoft Visual Basic, Borland С++.

Познакомимся с работой в интегрированной среде программирования Borland Pascal (ВР), позволяющей создавать программы для ОС Windows. В среде ВР процесс разработки программы содержит слещющие этапы:

 создание программного файла с расширением .pas;  обработка программы (компиляция и редактирование связей), приводящая к формированию выполняемого ехе-файла;  выполнение программы (обработка данных).

7.1. Главное окно интегрированной среды программирования Borland Pascal

Для вызова интегрированной среды Borland Pascal (ВР) необходимо запустить на выполнение файл Ьр.ехе (он находится в подпапке BIN папки ВР).

На рисунке 3.1 показан вид главного окна после загрузки программы.

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

S Языки программирования

С помощью мыши или клавиши F10 (и курсорных клавиш) можно открыть тот или иной пункт меню.

Пункт меню

Назначение

File (Alt+F)

Выполнение операций с файлами текстов программ

Edit (Nt+E)

Выполнение операций редактирования текста программы

Search (Xt+S)

Поиск фрагментов текста

Run (Nt+R)

Запуск на выполнение программы, находящейся в окне редактора

Compile (Nt+C)

Выполнение команд, связанных с компиляцией и компоновкой программы

Debug (Nt+D)

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

0ptions (Nt+O)

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

Window (Nt+W)

Выполнение команд управления окнами

неф (Nt+H)

Выполнение команд получения справочной информации об языковых средствах языка Паскаль и возможностях ИСП

Основные команды, содержащиеся в меню, приведены в Приложении 1.

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

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

Последовательность действий в среде программирования ВР при работе с новой или набранной ранее программой может быть такой:  запуск интегрированной среды программирования;  закрытие окна программы (Window — Close, или Alt+F3);  установка текущего каталога (File — Change Мг);  создание окна для ввода текста новой программы (File — New). Вновь создаваемый файл всегда имеет имя NONAME.PAS (оно отображается на верхней рамке окна редактора);  присвоение имени файлу, в котором будет храниться текст программы (File — Save As);  открытие (загрузка в окно редактора) программного файла (File — Load, или F3);  сохранение текста программы с прежним именем (File Save, или F2);  компиляция и запуск программы на выполнение ( Run — Run, или Ctrl+F9);  завершение работы программы при ее «зацикливании» (Ctrl+Break);  просмотр окна вывода результатов выполнения программы (Debug — User screen, или Nt+F5);  завершение работы с ИСП (File — Exit, или Alt+X).

7.2. Редактирование текста программы

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

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

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

Копировать фрагменты текста можно из одного окна (файла) в другое.

7.3. Обращение к справочной системе Неф

Установим курсор на интересующее нас зарезервированное слово (например, в программе PRIVET выберем слово Write1n) и с помощью комбинации клавиш Ctrl+Fl вызовем справку по выбранному слову.

_S Языкцщограммирования

Program PRIVET;

Begin

VVrite1n ( ' Здравствуйте! ' ) •

Write1n ( ' Начинаем изучать язык ' ) ,

Write1n ( ' программирования Паскаль ' ) , End.

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

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

7.4. Компиляция и выполнение программы

Команда Compile из пункта меню Compile предназначена для преобразования программы из файла типа .pas, отображаемого в активном окне редактора, в ЕХЕ-файл с выполняемой программой (файл с расширением ЕХЕ).

Команда Run (меню Run) позволяет осуществить одновременно несколько операций: компиляцию, компоновку (редактирование связей) и выполнение программы. Если программа уже была откомпилирована, команда Run осуществляет лишь запуск программы на выполнение.

7.5. Отладка программы

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

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

Error номер (код) ошибки: Смысл (характер) ошибки .

Например, сообщение Error 2: Identifier expected. означает, что на месте позиционирования курсора должен находиться идентификатор («требуется идентификатор»).

38

2.                       Ошибки выполнения появляются при нарушении семантических правил языка Паскаль (попытка деления на нуль, извлечения квадратного корня из отрицательного числа и др.). При наличии ошибки такого рода программа завершает свою работу и выводит сообщение об ошибке. Например, сообщение Error 200: Division by zero. означает, что предпринята попытка деления на нуль.

Сообщения об ошибках во время компиляции и выполнения программы приведены в Приложении 2.

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

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

Итак, программа разработана, введена с помощью текстового редактора среды программирования в компьютер, сохранена на диске, откомпилирована и выполнен ее запуск. Вы ввели некоторые данные и получили результат. Однако не спешите кричать «Эврика!». Это можно сделать, лишь когда Вы уверены, что результат правильный. Для этого нужно протестировать программу, придавая исходным данным значения, близкие к реальным, и сравнивая полученные результаты с ожидаемыми (полученными при устных вычис.леНИЯХ, на электронном калькуляторе или из надежных источников). Каждый тест представляет собой совокупность исходных данных, для которых известен результат.

Познакомимся с технологией ОТЛцКИ программ на примере программы VITEBSk:

Program VITEBSk,•

Begin

Write1n ( ' Витебский чугунолитейно—машиностроительный за— вод ' ) ,

Write1n ( ' существовал в г . Витебске с 1877 г . по 1940 г . ' ) ; Write1n ( ' Затем на базе его был создан завод Вистан. ' ) ; Write1n ( ' Предшественник Вистана работал , 1940-1877, ' года ' ) ,

Read1n; End.

у Языкищррщамщрования

Предположим, что при ее наборе допущены ошибки:

Progra VITEBSk {опущены буква т, символ            и Begin}

Write ( Витебский чугунолитейно—машиностроительньй завод) ; { Опущено “ 1 п ” и нет символа

Wite1n ( ' существовал в г . Витебске с 1877 г . по 1940 г . { Ошибка в операторе Write1n и нет ; }

Write1n      Затем на базе его был создан завод ВИСТаН. ' ) ;

Write1n ( ' Предшественник Вистана работал, 1840—1877, года ' ) ;

{ Плохой список вывода }

Red1n;                    { Пропущена буква а}

End                    {Отсутствует точка}

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

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

Ошибка

Действия пользователя

Error 36: expected .

BEGIN

Требуется Begin

Написать Begin перед первым оператором Write

Error 36: expected .

BEGIN

Требуется Begin

Правильно написать ключевое слово Program

Error 85: expected .

 

Требуется

Дописать «;» в конец заголовка программы

Error 8 :

constant 11 пе .

String exceeds

Строковая константа превышает размеры строки

Закрыть список вывода символом «апостроф» ( )

Error З: Unknown identifier .

Неизвестный идентификатор

Исправить служебное слово Write1n под курсором

Error 85: expected .

Требуется

Дописать «;» в конец строки выше курсора

Error З: Unknown identifier .

Неизвестный идентификатор

Исправить служебное слово Read1n под курсором

Error 10:

Unexpected end of fi1e.

Неожиданный конец файла

Поставить точку в конце программы

Рис. 3.2

После очередного запуска программы получим результат, представленный на рисунке 3.2.

Сравнивая результаты работы программы с ожидаемыми, замечаем, что после вывода текста «Витебский чугунолитейно-машиностроительный завод» курсор остается в этой же строке и не переходит на новую строку. Изменим оператор Write ( ' Витебский ' ) ; на Write1n ( ' Витебский ... ) ;. Вновь запустим програмщ на выполнение и проследим за дальнейшим выводом: остается неясным, сколько же лет работал предшественник Вистана (результат вычитания чисел не выводится на экран). Причиной этого является неверное оформление списка вывода в последнем операторе вывода: вычисляемое выражение не должно содержаться в апострофах. Внесем исправления в программу и вновь запустим ее на выполнение; результат работы программы: Предшественник Вистана работал -37 года (отрицательное число). Проверим, как записаны уменьшаемое и вычитаемое, и находим ошибку в записи числа 1940. Исправляем оператор вывода. Повторный запуск программы выдает уже правильные результаты (рис. 3.3). Эврика!

Витебский чугунолитейно-машиностроительный заводсуществовал в г. Витебске с 1 877

г. по 1940 г.

Затем на базе его был создан завод Вистан.

Предшественник Вистана работал , 1 840-1877, года

Витебский чугунолитейно-машиностроительный завод существовал в г. Витебске с 1877 г. поя 940 г.

Затем на базе его был создан завод Вистан.

Предшественник Вистана работал , 1 840-1877, года

Витебский чугунолитейно-машиностроительный завод существовал в г. Витебске с 1 877 г. по 1 940 г. Затем на базе его был создан завод Вистан. Предшественник Вистана работал -37 года

Витебский чугунолитейно-машиностроительный завод существовал в г. Витебске с 1 877 г. по 1940 г. Затем на базе его был создан завод Вистан.

Предшественник Вистана работал 63 года

Рис. 3.3


                                     Основные                  языка

1 . Что такое язык программирования? Среда программирования?

2. Почему среду программирования Borland Pascal называют интегрированной? Из каких компонентов она образуется?

З. Какое расширение имеет файл в языке Паскаль?

4.     Каковы функции текстового редактора среды программирования?

5.     Как запустить программу на выполнение?

6.     Что такое отладка программы?

ё В. Основные объекты языка программирования

Паскаль

. Алфавит языка

В основе языка программирования Паскаль лежит определенная совокупность символов, образующих алфавит языка: буквы латинские (строчные и прописные); цифры (арабские от 0 до 9); символы операций (арифметических + / и логических = > <); разделители и прочие символы ( . • пробел и др.). Из символов алфавита формируются:

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

8.2. Величины

Конкретная величина в информатике определяется именем и совокупностью ее допустимых значений. В алгоритмах и программах к величинам относятся конСТаНТЫ, переменные, обращения к функциям, выражения. Значения, которые может принимать величина, принадлежат к некоторому вполне определенному множеству (целые числа, дробные числа, логические константы или др.). Множество значений величины определяет ее тип. При представлении в памяти компьютера всякая величина имеет вполне определенное (текущее) значение.

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

42

Зарезервированные слова составляют основу языка программирования Паскаль и имеют строго определенное значение. Сюда относятся, например, идентификаторы: program, const, var, if, then, e1se, begin, end, and, case, not, of, while, uses, for, do, downto, div, mod, or, string, array, pro— cedure, function и др. Эти служебные слова нельзя использовать в качестве имен переменных, которые задает пользователь (программист).

 Стандартные идентификаторы (True, Fa1se, Integer, Rea1, Byte, Воо1еап, Char, Sin, Cos, Round, Length, Read, Write, De1ete и др.), смысл и способ использования которых определены правилами языка программирования, можно, но не рекомендуется использовать в иных целях.

Идентификатор пользователя записывается в виде последовательности латинских букв, цифр и символа подчеркивания, начиная с буквы или символа подчеркивания. Примеры идентификаторов: ALFA, as питии, PriMeR, У 70, 5. Записи 2_6, Х+У, UNOGA не являются идентификаторами, так как первая начинается с цифры, а остальные содержат недопустимые символы ( «+» и русскую букву «И»).

В записи идентификаторов прописные и строчные буквы не различаются, например opera, 0pera, OPERA, 0PeRa обозначают один и тот же идентификатор.

При выборе идентификатора обычно стремятся отразить в нем его назначение. Это облегчает понимание программы и является признаком хорошего стиля программирования. Так, для обозначения скорости самолета удобно использовать, например, идентификаторы V, УС), Speed, F1ugzeug, avion; для обозначения номера дня недели — d, day, таз, ј our; месяца — т, month, Monat, mois; года g, year, Jahr, аппее или другие.

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

Упражнения

1.      Подберите подходящие идентификаторы для обозначения:

а) имени, фамилии, возраста ученика;

б) стоимости линейки, тетради и карандаша;

в) объема и длительности звучания музыкальной композиции;

г) углов четырехугольника;

д) размера начисленной заработной платы; * е) радиуса, длины окружности, площади круга; *ж) синуса и косинуса угла у.

2.      Укажите слова, которые не могут являться идентификаторами пользователя (объясните почему):

     а) ABCdEFgH              б) Inta1               в) ome5ga                г) атом

                         е) L7t                                                     з) Begin

и) КЛАСС

*З. Предположим, что идентификатор должен содержать ровно З символа. Сколько разных идентификаторов можно получить, если использовать:

       а) две буквы Х и У                        б) буквы Х, У и цифру 5

в) букву Х и цифры и 2

ВЕЛ . Константы

К стандартным типам в языке Паскаль относятся величины: ЧИСЛИ, логичеСКИС) Be-1Wtlli-l&l, строки.

Познакомимся с числовыми величинами.

Констант ы — это величины, которые определены при написании программы и не изменяют своего значения в процессе ее выполнения.

Константы бывают неименованные и именованные. Именованная константа представляет собой идентификатор, который сопоставлен с конкретным значением, например . 8, х=—2. З, К=25. Тип константы может быть определен по ее внешнему виду, например 25; 423; 0; -26; 1000; +17 — целые константы; 9.8; -23; 1.5; -15.28•, 0.0•, -0,6ЕО5•, .25; 4Е2•, 2.5Е+4; -21E-7 — вещественные константы.

Для записи целых констант используют цифры, которым может предшествовать знак «+» или «-». В вещественных константах (они соответствуют деЙствительным числам в математике) присутствует точка, которая разделяет целую и дробную части числа, или буква Е. Использование Е приводит к представлению числа в показательной форме записи: запись ТЕР соответствует числу т • 1 ОР • например,

4Е2  _ 400

—2.З5Е+4

-2,35 •

- -23500

lE6             • 106  

-26.ЗЕ - З

-26,3 •

-3

= -0,0263

Упражнения

1. По внешнему виду константы определите ее тип:

      а) 32320                                          в) 17                         г) 25ЕЗ

      д) +724003          е) -15 . 72ЗЕ-З           ж) -324Е+З5           з) 45.263

                                    к) +7777 . ЗЕ-О1           л) -17Е-10

*2. Какие записи являются числовыми константами в языке Паскаль?

        а) -4-1             6) 56,5         в) 1 . 234 , 56      г) 45.56-2

д) 56Е+9   е) 45АЗ           И) 4+2                л) 34*2

             н) -ЕЗ                   о) Е15                   п) 1/12

            с) о . 333...                              у) sqrt (2)                 ф) pi

В.Е.а. Переменные

Переменные — это величины, которым присваиваются значения в процессе выполнения программы. Они могут изменять свои значения.

Переменная задается тремя составляющими: именем, значением, типом. Тип переменной выбирается на основании требуемого диапазона и точности представления данных.

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

Тип

Ключевое слово

Объем памяти (байт)

Диапазон значений

Целый

Byte

 

о .. 255

Word

2

о .. 65535

Inteqer

2

-32768 .. 32767

LongInt

4

-2147483648

2147483647

Вещественный

Rea1

6

Каждая переменная программы должна быть непременно объявлена до момента своего использования в программе!


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

Вы уже знаете, что тип величины определяет допустимый для нее набор операций. Числовым величинам присущи следующие операции:

+ сложение          - вычитание умножение         / деление

         Div целочисленное деление                Mod остаток от деления

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


Результат выполнения операции зависит как от самой операции, так и от типа используемых в ней величин (операндов):

Операция

Действие

Типы операндов

Тип результата

 

Сложение

Целый или вещественный

Целый или вещественный

 

Вычитание

Целый или вещественный

Целый или вещественный

 

Умножение

Целый или вещественный

Целый или вещественный

 

Деление

Целый или вещественный

Вещественный

Div

Целочисленное деление

Целый

Целый

Mod

Остаток от целочисленного деления

Целый

Целый

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

Операции div и mod используются как операции целочисленного деления для получения соответственно целой части и остатка от деления. Так, результатом выполнения операции а div Ь будет [а / Ь] , а mod Ь остаток от деления а на Ь.

Пример 1 . Найти результат выполнения операции целочисленного деления и остаток от деления числа а на число Ь при а = 30, Ь = 7.

                                                                      30 div 7 = 4           ЗО mod

7

4

 

 

зо

-28

2

Пример 2. Определить тип результата выполнения арифметических операций:

5

4,5 +  = 2,5; 17 - 14=3; 10, 7 +   19; 3,0 - 7

2

Для выполнения задания используем таблищ, предложенную в данном

пункте.

5/2=2 . 5 (вещественный тип). 7+12=19 (целый тип результата).

8.4. Стандартные подпрограммы

В состав библиотеки, которая поставляется вместе со средой программирования, входят стандартные (встроенные) подпрограммы (процещры и функции). Из набора стандартных подпрограмм для обработки информации одного назначения составляются мощјли. Каждый мощль имеет свое имя (System, Crt, Graph, Printer и др.). Доступ к процещрам и функциям модуля осуществляется при его подключении (см. п. 12.1).

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

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

Подпрограмма (функция)

Назначение

Тип аргумента х

(формального параметра)

Тип результата

Abs (х)

 

Целый, вещественный

Целый, вещественный

Arctan (х)

arctg х

Целый, вещественный

Вещественный

Sin (х)

sin х

Целый, вещественный

Вещественный

Основные

Продолжение

Подпрограмма (функция)

Назначение

Тип аргумента х

(формального параметра)

Тип результата

Cos (х)

cos х

Целый, вещественный

Вещественный

Ехр (х)

 

Целый, вещественный

Вещественный

Ln (х)

ln х, х

Целый, вещественный

Вещественный

Sqr (х)

 

Целый, вещественный

Целый, вещественный

Sqrt (х)

Целый, вещественный

Вещественный

Int (х)

[х] целая часть числа

Целый, вещественный

Вещественный

Frac (х)

{х} дробная часть числа

Целый, вещественный

Вещественный

Trunc (х)

[х] целая часть числа

Целый, вещественный

Целый

Round (х)

Округление до ближайшего целого

Целый, вещественный

Целый

Для обращения к конкретной стандартной функции следтет записать в выражении ее имя и конкретный фактический параметр, который должен соответствовать требованиям этой подпрограммы. Так, для вычисления Мп ос можно написать sin (a1fa) , для вычисления       — sqrt (Б) .

Примеры выполнения функций Trunc и Round:

trunc (pi) =З, trunc (—3 . 9) =-З, round (pi) =З, round (-3 . 9) =-4.

и 1. Во время работы с редактором текста в интегрированной среде программирования можно ознакомиться с требованиями к параметрам функций, если установить курсор клавиатуры на имени функции и нажать комбинацико клавиш CTRL+F1.

2. В тригонометрических функциях аргумент задается в радианах.

Упражнения

1 . Определите результат выполнения операции и его тип:

а) 13 div 2

6)           mod 2

в) 18 div 23

      г) 18           23

д) 2*3. 1

е) 18/2

ж) 5+7

з) 15 . 3-7 . 3

2. Определите результаты выполнения функции при х = 2:

а) sin (х— 2)

б) sqrt (2 * х)

в) sqr (1—х)

г) trunc (х)

д) cos (х / 2—1)

е) abs (х— 10)

ж) int (х / 1 . 5)

з) round (х+1 . 2)             

и) abs (х—4)

к) arctan (1—х)

л) ехр (х— 2 )

м) int (х-0.3)

н) frac (х / З)         

о) trunc (       

п) trunc (х— 10 . 1)

8.5. Арифметические выражения


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

\ 1. Символы операций ни в коем случае нельзя опускать, например произведение ab в языке Паскаль записывается в виде a*b.

2. В языке Паскаль отсутствует операция возведения в степень. Для вычисления используют определение степени, умножая х на себя п раз, или свойства логарифмической и экспоненциальной функций, записывая в ВИДС арифметического выражения: EXP(N*LN(X)), что соответствует записи еnlnx

Примеры арифметических выражений:

          а) 103. 8-х                                     в) а+5. 6

           г) 5 * (X+Y)               д) x/sin (х)               е) sqrt (а * Ь)

При вычислении выражений операции выполняются в таком порядке:

1 ) вычисление значениЙ стандартных функций; 2) умножение и деление; З) сложение и вычитание. Например, (для каждого выражения указывается порядок выполнения операций):


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

ооэоэ

В состав арифметических выражений могут входить также стандартные функции языка Паскаль. Их аргументами могут быть другие выражения. Например, sqrt (4*х+2 . 5) ; sin ( (x+a1pha) /pi) +sqrt (х*х+1 .5) ; a*cos (pi—a1fa/4) ; sin (sin (х) ) .

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

Пример. Определить тип арифметических выражений А+Х, вч- (C+D) / Р, А*В, х—Р, А / х согласно описанию:

Const

Var А: Integer;

В, С, Т Rea1,•

Результат: тип выражения А+Х  целый (так как А и Х целые), а тип выражений В+ (C+D) / Р, А*В, Х-Р, А/х            вещественный.

Упражнения

1. Запишите математические выражения средствами языка Паскаль: а) 2х3 б)  в) sinacosP — cosasinP

2а + Ь

        Г) 1tR2                                                                д) !absina                     е) sinx + cosx — х

                                 з) 2 abc

         к) х       х

*                   2. Пусть Х, У — вещественные, К, Р целочисленные переменные. Определите тип результата операции:

         а) 1-к                                   в) У-О .5                                 

                                ж) 2*k                                                               к) 10/к

*                   4. Запишите арифметические выражения языка Паскаль, значениями которых являются:

а) площадь квадрата, периметр которого равен Р;

б) площадь круга, если длина ограничивающей его окружности равна L;

в) длина стороны равностороннего треугольника, площадь которого равна S.

ё Э. Структура программы

Программа на языке Паскаль состоит из двух разделов: раздела описаниЙ и раздела операторов.

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

Раздел операторов — выполняемая часть программы, которая всегда начинается словом Begin и заканчивается словом End.

PROGRAM .

CONST

VAR

BEGIN тело программы

END.

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

I 2. В программе может отсутствовать любая часть, кроме раздела операто-

Заголовок программы: PROGRAM название • PROGRAM — ключевое слово заголовка программы; название — идентификатор пользователя; CONST — ключевое слово описания констант;

VAR — ключевое слово описания переменных, используемых в программе;

BEGIN — начало исполняемых операторов;

END. — конец программы (обратите внимание на синтаксис: операторы разДЕЛЯЮТСЯ символом «;» , программа заканчивается символом «.»).

                                                                                                9. Ст к ап ог аммы

Примеры описаний

Результаты описаний

констант:

 

CONST  . 6Е-4;

У=17.З; К=-5;

константы целого типа; константы вещественного типа

переменных:

 

VAR ХХ, VO .•Rea1; k,N, Pr: Integer;

ХХ, VO — переменные вещественного типа; К, N, РГ — переменные целого типа

CONST •Р=15;

VAR Year:Word;

Мопеу: LongInt; S1, S2 : Rea1;

Объявление констант Time и Сд со значениями 31,5 и 1,9 вещественного типа, Р со значением 15 — целого типа.

Переменные Уеаг, Мопеу          целого типа;

 вещественного типа

вВсякий объявленный в программе идентификатор должен быть уникальным. Так, например, недопустимым является объявление:

Var Х: Real; Х: Integer;

Итак, описание констант осуществляется в разделе описания констант CONST, а описание переменных — в разделе описания переменных VAR:

Описание констант

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

CONST имя1 = значение1 имя2 = значение2

VAR имя1 : тип 1 имя2 : тип2

имя1, имя2, имена констант, по которым будет осуществляться обращение к ним в программе

имя 1, имя2, . — имена переменных, по которым будет осуществляться обращение к ним в программе; тип1, тип2, — их типы. Несколько ве-

личин одного типа перечисляются через запятую: Var

В тексте программы могут присутствовать комментарии, которые важны для документирования (пояснения) программы.

Комментарий — произвольный текст, ограниченный с обеих сторон фигурными скобками или круглыми скобками и символом * , например рто комментарий} и ( * Это комментарий *).

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

Комментарий может размещаться в любом месте программы.

Пример программы с комментариями:

{ Программа сравнения физических характеристик Солнца и

Земли }

Proqram Astronomy;

Объявление констант }

CONST MS=2E3 О ;

 

{ Солнце: масса }

PS=1.416;

 

плотность }

          . 97024;

Ч Земля: масса}

PZ=5 . 518;

VAR

 

{ плотность }

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

dsZ , От, Ор : Rea1 ;

{dsZ — длительность суток на Земле}

                                                         { От        отношение масс,

Ор — отношение ПЛОТНОСТеЙ}

Begin

End.

Операторы выполняемой части программы рекомендуется записывать в отдельных строчках с отступами, как, например, в программе VITEBSk (п. 7.5). Это способствует наглядности программы и упрощает понимание отдельных элемен тов оператора.

1.    Какова общая структура программы на языке Паскаль?

2.    Какие служебные (зарезервированные) слова Вы знаете? З. Что является заголовком, символом начала и конца программы?

4. Каково назначение разделов Var, Const?

Упражнение

Определите типы описанных констант и переменных, предложите возможные значения переменных:

                 Const Year=2000; ST1=2000.o; ST2=2E3;

ST3=O.2E4; Т1те=2.З; М—15;

АВВА=4; ве1=+10О;

Var Te1ephone, Мопеу, Number: Integer;

Price, Secret: Rea1; DIA: LongInt;

Zap: Byte; Mass, Mini: Rea1; Mas, INTER: Rord;


Приведенные в S 7 программы PRIVET и VITEBSk предусматривают вывод на экран монитора некоторого текста. Для этой цели используются две стандартные процедуры: Writeln и Write.

Write1n (Список вывода) ; — стандартная процедура, которая используется для вывода данных на экран. Значения выводятся в порядке их записи в списке вывода (рис. 3.4). Затем курсор переходит в начало следующей строки.

Write (Список вывода) ; — стандартная процещра для вывода данных на экран без перевода курсора на новую строку.


Целые числа выводятся в привычной (естественной) форме, а вещественные с помощью мантиссы и порядка (в показательной форме с нормализованной мантиссой): ТЕР, где т — мантисса, р — порядок, т < 10 (одна позиция в целой части и десять позиций в дробной части), р выводится со знаком «+» или «-» и далее в две позиции.

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

Оператор

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

Write1n ( Ответ:            sqrt (5) ) ;

ответ: 2.2360679775Е+ОО

Write1n ( Введите число ) ;

Введите число

Продолжение

 

Оператор

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

Write ( ' х= ' ) ;

 

 

 

Write (Х, при               Х=5 (Х,

У

описаны как Integer)

5,-32

Write (2+3) ;

 

 

 

Write1n( ' Дано:

Write1n (            , Ь) ;

Write1n( I a + Ь при           . 6, 10=126. 93

,

(а, Ь описаны как Rea1)

дано: а = -3.4600000000E+Ol Ь = 1.2693000000Е+О2 а + 9.2330000000E+Ol

 

1.9000000000E-Ol

Write1n;

 

Переход на новую строку

1 ОК. Форматный вывод

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

l ) Вывод целого числа. Число после символа «:» (это число называют «формат») определяет количество символов, выделяемых на вывод значения выражения на экран. Если выводимое число содержит меньше символов, чем указано в формате, число сдвигается вправо, а левые позиции заполняются пробелами. Если количество символов выводимого числа больше, чем допускает формат, число выводится с минимально возможным количеством символов.

Например, при описании Var К: 1nteger; и К = 153:

Оператор

 

Оператор

Вывод

Write1n (К) ;

153

Write (К: 5 ) ;

1530

Write (К) ;

1532

Write (К: 2) ;

1530

Символ « » в начале строки в данном случае используется для изображения пробела, а символ «а» указывает место расположения курсора после вывода информации.

2) Вывод вещественного числа. Формат имеет вид с : (1 (рис. 3.5), где с общее количество позиций, d — количество позиций (знаков) после запятой:

                Рис. 3.5                                     с

Если (1 содержит меньше позиций, чем требуется для вывода числа, происходит его округление до требуемого числа знаков; при с < d выдерживаются требования формата для дробной части выводимого числа, а целая часть выводится в минимально возможное количество знаков.


Пример форматного вывода вещественного числа:

Описание

Значение

Оператор вывода

Вывод

var X:Rea1;

х - -29.5684

Write (Х) ;

-2.9568400000E+Ol Е)

Write (Х.• 10 : 5 ) ;

-29.56840 2

Write (Х.• 10 : 2) ;

-29.572

Write (Х.

-302

Write (Х.

-29.568 2

Write (Х.

-302

Write (Х.• 7:1)

-29.62

Примеры вывода:

1.                     При описании

Var I,N: Integer; k:LongInt; и значениях переменных

                                          123,           12345, К- 1234567

результаты вывода имеют вид:

Оператор

 

Вывод

Write1n

123

12345,1234567

Write1n (1:10) ;

123

Write1n (1) ;

123

 

2.                     При описании Var123.456, У = -65.4321 результаты вывода имеют вид:

Операторы

Вывод

Write1n (Х: 10: 3, У: 15:7) ; Write1n (Х: 10 : 4, У: 20: 6) ;

Write1n (Х) ;

123.456      

123.4560 -65.432100


З. При описании Var Х, В, С:ХЫ, А=З.2, В=5, С=25 результаты вывода имеют вид:

Операторы

Вывод

Write (Х) ;

Write1n ответ а= ' ) ;

Write1n ( '               ответ             Х) ;

Write (А: 0: 1,          , (sqrt (С) +А) : 0: 1) ;

7     ответ а=

ответ а=7

4. В соответствии с оператором Write (2*3) • на экран монитора будет выведено:

Упражнение

Определите, что будет выведено на экран после выполнения следующих опе-


раторов (если b=12.4;        1.5):

а) Write ( 'b= 7 , Ь, '             •

в) Write1n (С: 0 : 5, ' , ' Дэ) ;

б) Write1n (Ь+С, '        , (Ь+С) : 7 : 2 ) ;

г) Write (Ь, С) ;


1 оз. ввод

Для ввода значений переменных с клавиатуры используют две стандартные процещры ввода: Read и Read1n.

Read (Список ввода); — стандартная процедура, которая после последнего введенного значения оставляет курсор в строке ввода.

Read1n (Список ввода); — стандартная процедура, которая после завершения ввода значения переменной переведет курсор в начало следующей строки.

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

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

Более комфортным для пользователя является сопровождение ввода данных приглашением к вводу, например:


Write ( ' n1=' ) ; Read1n (п 1) ; Write ( ' n2=' ) ; Read1n (п 2) ;

Результат выполнения операторов при п 1=10, n2=17:

п 1=10 п2=17

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

Var п 1 , п 2 : Integer;

Begin

Read1n (п 1 , п 2) ;

Write

Read1n (Х) ;

End.

После запуска программы на выполнение она приостанавливает работу в охмдании ввода двух целых чисел. После ввода с клавиатуры через пробел чисел 10 и 17 и нажатия ЮиВИШИ Enter произойдет присваивание переменным п 1, 112 значений 10 и l7 соответственно. Затем на экран выводится сообщение и программа вновь приостанавливает работу в ожидании ввода уже вещественного числа. В нашем примере это -4 . 7. После его ввода значение передается в область оперативной памяти переменной Х.

Результат работы фрагмента программы:

Ввод данных завершается нажатием клавиши Enter.

Упражнение

Найдите ошибки при использовании процещр ввода:

               а) Read (i, х, у: 5 : 1 ) ;                            б) Read1n (х+у, i ) ;


                в) Read(100, х, sqrt (у) ) ;                      г) Read1n (i ) ;

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

Оператор присваивания позволяет назначить переменной определенное значение, помещая это значение в соответствующую ячейку памяти (старое значение при этом стирается).

Вид (формат) оператора присваивания:

Переменная : = выражение ; где : — символ присваивания.

Оператор задает значение переменной, имя которой записано в левой части оператора присваивания.

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

1)   вычисляется значение выражения в правой части оператора; при этом тип результата выражения должен совпадать с типом переменной в левой части оператора или являться подмножеством типа переменной (говорят, что типы переменной и выражения должны быть совместимыми);

2)   результат выражения присваивается переменной в левой части оператора (т. е. копируется в область памяти, которая выделена этой переменной).


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

зить так:

                                     Идентификатор 4.— выражение •         

Примеры операторов присваивания даны в таблице:

Оператор

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

 

Переменной Х присваивается значение 9

(a+b) * х / (c—d) ;

После вычисления значения выражения c—d его результат присваивается переменной У

Переменная А увеличит свое значение на 1. Например, при А = 5 результат выполнения оператора: А = 6

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


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

Program God 1;              { отметка за год}

Const а=7;          ; ка, Ь — отметки за 1—ю и 2—ю четверти} {с, d — ОТМеТКИ за 3—ю и 4—ю четверти}

Var у: Rea1;

Begin

Write ( ' Средняя годовая отметка

iNrite1n (у: 0 : 1 ) ; End.

Здесь все значения задаются в разделе Описания констант Const. Для вычисления значения ц при других значениях а, Ь, с, d следует внести соответствующие изменения в раздел описания констант и вновь запустить программу на выполнение.

Program God 2

 Var a,b, c,d: 1nteger; у: Rea1;

Begin

Write ( ' Средняя годовая отметка:

Write1n (у: 0 : 1) ; End.

Здесь значения переменных а, Ь, с, d задаются в программе с помощью опера торов присваивания. Для вычисЛёния значения у при других значениях а, Ь, с, а: слещет изменить операторы присваивания и вновь запустить программу на выполнение.

Program God З;

Var  1nteger; у: Rea1;

Begin

Write1n ( ' Введите отметки

Write ( ' за 1-ю четверть=' ) Read1n (а) ;

Write ( ' за 2-ю четверть=' )

Readln (Ь) ;

Write ( 1 за 3—ю четверть=

Read1n (с) ;

Write ( 1 за 4-ю четверть=' ) Read1n (d) ;

(a+b+c+d) / 4;

Write1n ( ' Средняя годовая отметка=' , у. О End.

Здесь значения всех используемых переменных вводятся по одному числу с помощью оператора ввода Read1n. Для вычисления значения у при других значениях а, Ь, с, d следует вновь запустить программу на выполнение и ввести новые числовые значения.

Program God 4;

Var a, b, c, d : Integer;

Begin

Write1n ( ' Введите ОТМеТКИ' ) ;

Readln (а, Ь, c, d) ;

Write1n ( ' средняя годовая отметка=' , End.

Здесь значения всех используемых переменных вводятся с помощью одного оператора ввода Read1n. Для вычисления значения у при других значениях а, Ь, с, d слещет вновь запустить программу на выполнение и ввести новые числовые значения.

в Присваивание переменной целого типа выражения вещественного типа запрещается!

* Если в арифметическом выражении содержатся повторяющиеся вычисления, целесообразно ввести дополнительную переменную для хранения результата повторяющегося фрагмента и использовать ее в программе. Напри-

                                                             х2 + 1,4sinx2        5 1+X2

             мер, в формуле у                                2      вычисление х2 встречается пять

х раз и два раза 1 + х) . В этом случае можно ввести три оператора присваивания:

S:=sqrt (1+К) ;

(k+1 . 4*sin (К) ) /s-5*S/k; *


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

Дано: а, Ь — заданные числа.

Найти: S — их сумма,

                      R       разность,

Р — произведение, С — частное.

Связь:

         при:                   целые числа.

Так как а и Ь — целые числа, то при описании присвоим им тип 1nteger. Сумма, разность и произведение целых чисел также являются целыми числами. Поэтому переменные S, R и Р опишем тоже как 1nteger.

Частное — действительное число (это видно, например, из записи 2:4=0,5). С учетом требований к типам переменных, участвующих в операции, переменную

С опишем как Rea1.

Получим программу:

Program Ca1cu1i;

Var  Integer; , с : 0 : 2 ) ;

С: Rea1;

Begin

Write1n ( ' Введите два целых числа

Readln (а, Ь) ;

End.

Для проверки правильности составления программы выполним ее многократно для различных пар целых чисел. Когда при очередном запуске программы введем 6 0 Enter, на экране появится сообщение (рис. 3.6).


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

Рис. 3.6


мер с помощью вывода на экран соответствующего сообщения, о недопустимости ввода нуля в качестве второго числа:

Write1n ( Введите два целых числа ' ) ;

Write1n ( ' Пожалуйста, не вводите 0 для второго числа! ' ) • Readln (а, Ь) ;

*Пример З. Составить программу решения задачи: «Определить, на какой высоте и на каком расстоянии от места броска окажется через время t (с) мяч, брошенный под углом к горизонту с начальной скоростью 7-,'o

       Дано:                 — начальная скорость;

t (с) — время полета; ос (в градусах) — угол броска.

Найти:  расстояние от места броска; у (м) — высота полета.

х = (00 cosoc)t,

 п

 

 

 

 

63

 

 

 

 

 

 

 

 

 


Связь:      gt2       (1)       у = (00 sina)t— 2

       при: 0                                                                                       (2)

МетоД: Выполнить расчет по формулам (1) при ограничениях (2). При этом сле№т выполнить перевод значения а из градусной меры в радианную: ос = При 0 будем считать, что мяч лежит на земле.

Положим, что данные корректны и проверка ограничений (2) не требуется.

х (vo cos a)t, gt2 у (vo sin a)t—

2

Ниже даны графическое представление алгоритма решения задачи (рис. 3.7) и программа на языке Паскаль.

Program BROSOk;

Const 5=9. 8;

Var  Rea1;

Begin

Write ( ' введите скорость

Read1n (VO) ;

Write ( ' введите время ' ) ,

Read1n (Е) ,

Write ( введите угол ) , Read1n (a1fa) ; a1fa

End.

в Программист может поручить компьютеру формирование значений переменных в виде случайных чисел. Для этой цели используются стандартные функции: Random — для получения случайного действительного числа на промежутке (0; 1) и Random (п) — для получения случайного целого числа на отрезке [О; п— 1 Л. Данным функциям в программе предшествует процещра Randomize, которая позволяет при повторном запуске программы получить новые случайные числа.

Пример 4. Составить программу вычисления среднего возраста двух случайных прохожих.

 Программа будет иметь вид:

Program SR БЕТ;

Var а, Ь: Integer; С: Rea1;

Begin

Randomi ze ;

(Пусть заданные числа принадлежат отрезку [ 1 ; 100 п а : =Random (100) +1;

(100) +1 ;

C:=(a+b) / 2;

Write1n ( ' Средний возраст= , End.

Пример 5. Составить программу замены значений переменных а и Ь (пусть дано: а = З, Ь = 5; требуется получить: а = 5, Ь = З).

Запись команд присваивания а : Ь:=а; приведет к получению неверного результата: а = Ь = 5 (убедитесь в этом!).

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

Поступим так: заменим значение переменной а на значение переменной Ь и наоборот. Для этого запомним в некоторой новой переменной, например с, значение переменной а (с : ) ; затем переменной а присвоим значение переменной Ь (а : ) ; переменной Ь присвоим значение переменной с (Ь : ) , таким образом, значение переменной Ь станет равным а. Задача решена: с : =а; Ь : =с; (переменные а, Ь, с должны быть одного типа).

1.    для чего используется оператор присваивания?

2.    Какой формат имеет оператор присваивания?

З. Каков порядок выполнения оператора присваивания?

*4. Можно ли получить решение примера 5 без использования дополнительной переменной?

Упражнения


1 . Напишите программу вычисления значения выражения с использованием наименьшего количества операторов:

(М — Х2)2 + (И — И )2 у = 5х4 + 7х3 — 2х2 + 9х — 4

2. Составьте программы решения задач:

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

б) Семья Николая планирует провести выходные на озере Нарочь. Рассчитайте стоимость проезда всей семьи в автомобильном транспорте, если известна стоимость билета в межщгороднем автобусе. Стоимость билета в экспрессе на 50 0/0 дороже, чем в межщгороднем автобусе, а в маршрутном такси — на 60 0/0 дороже, чем в экспрессе. Требуется приобрести два полных билета и два детских со скидкой 50 0/0

* в) Нужно купить обои для оклеивания двух стен, размером а х Ь м каждая. Известна стоимость одного рулона обоев длиной 12 м и шириной м. Определите стоимость обоев.

З. заК. 170.

ё 1 а, Текстовый и графический режимы

             1     , Текстовый режим

При выполнении программы вывод информации на экран может осуществляться в одном из двух режимов: текстовом или графическом. После загрузки среды программирования Borlat1d Pascal экран находится в текстовом режиме.

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

Чаще всего на экране в текстовом режиме размещается 25 строк по 80 зна-


                                   40                         (80, 1)

 

(40, 12)


12

(1, 25)                                                  ( 80 , 25 )

рис. З 8

ков в каждой (возможны и другие текстовые режимы, например 50 строк по 80 знаков).

Подпрограмма

Назначение

Пример

C1rScr;

Очистка экрана (заполнение цветом фона) и размещение курсора в левом верхнем углу

C1rScr;

De1ay (х) ;

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

GotoXY (Х, У) ;

Установка курсора в ПОЗИЦИЮ экрана с координатами (Х, У)

Вывод текста, П'ДЧШТЯ с позиции (30,

GotoXY (30, 12) ;

Write1n ( ' Здравствуйте ! ' ) •

Для управления режимами экрана, цветовой гаммой, звуком, кодами клавиатуры и др. используются подпрограммы модуля CRT (или OPCRT — проверьте имя Вашей библиотеки!). Для подключения модуля укажем его имя в разделе описания мощлей, который размещается в описательной части сразу после заголовка программы: USES CRT; . После этого пользователю доступны следующие процедуры и функции:



Продолжение

Подпрограмма

Назначение

Пример

Sound ( S ) ;

Включение внутреннего динамика и генерация звука с частотой тона S Гц: восьми нотам до, ре, ми, первой октавы соответствуют частоты: 262, 294, 330, 349, 392, 440, 494, 524. при переходе к соседней октаве частоты изменяются в два раза

Звучание звука с задержкой:

{включение звукового сигнала частотой 1200 Гц} Sound (1200) ; {задержка звучания на время

Реку (1 ООО) ;

NoSound;

Выключение динамика

NoSound;

TextC010r (С) ;

Установка цвета символов С (0 — черный, — синий, 2 — зеленый, З — голубой, 4 красный, 5 фиолетовый, 6 — коричневый, 7 светло-серый, 8 — темно-серый, 9 — ярко-синий, 10 — яркозеленый, l l — ярко-голубой, 12 розовый, l3 — малиновый, 14 — желтый, 15 лый, 128 мерцание символа )

Вывод цветного текста :

TextC010r (2) ;  (30, 5) ;

Write1n ( Здравствуйте ! ) •

TextC010r (1) ;

GotoXY (27, 6) ;

Write1n ( Начинаем изучать ) ;

TextC010r (14) ;

GotoXY (34, 7) ;

Write1n ( язык ' ) ;

GotoXY (27, 8) ; Write1n ( программирования ' ) ;

TextC010r (4) ;

GotoXY (33, 9) ;

WriteIn ( ' Паскаль ' ) ;

TextBack— Ground (С) ;

Установка цвета фона С (8 неярких цвстов с номерами от 0 до 7)

TextBackGround (4) ;

Пример. Написать программу исполнения музыкальной фразы «Жили у бабуси» (фа-ми-ре-до-соль-соль). Звучание должно сопровождаться выводом текста (как в «Караоке»)

Программа будет такой:

Program k1eine Musik;

Uses Crt ;

Beqin

C1rScr; Randomize;

Sound (349) ; De1ay(1000) ; Sound(330) ; De1ay (1000) ; GotoXY (30, 5 ) ; TextC010r (2) ; Write ( ' Жили ;

Sound(294) ; De1ay(1000) ; Sound(262) ; De1ay(1000) ; GotoXY (30, б) ;

                TextC010r (4+128) ;        {Мерцание букв красного цвета }

Write ( ' у бабуси ' ) ; Sound(392) ; De1ay (2000) ; Sound(392) ; De1ay (2000) ;

NoSound; Write1n ( ' выход — клавиша Enter ' ) ; Read1n; End.

Упражнения

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

2.     Напишите программу вывода на экран монитора красочно оформленного текста с музыкальным сопровождением (например, компьютерной открыткипоздравления «Лучшему другу в день рождения»).


1 ЕЕ. Графический режим

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

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

Рассмотрим программирование графики в стандартном видеорежиме среды программирования Borland Pascal, который поддерживается современными компьютерами: 640 х 480 х 16 (640 точек по горизонтали, 480 точек по вертикали, 16 цветов).

Графический экран как совокупность точек (пикселей) координатной плоскости изображен на рисунке 3.9. Каждая Точка (позиция) экрана задается номером пикселя по горизонтали и вертикали. Например, пиксель (150, 120) находится в 150-м столбце и 120-й строке.

Для управления графическим экраном предназначен модуль GRAPH. Сам мощль представляет собой отдельный файл Graph.tpu. При программировании он должен быть доступным для компилятора. Также доступным (для запуска программ) должен быть драйвер EGAVGA.bgi. Для упрощения программирования скопируем файл Graph.tpu и драйвер EGAVGA.bgi в рабочую папку. Файл Graph.tpu хранится в папке UNITS, а файл EGAVGA.bgi — в папке BGI, вложенной в папку ВР Для работы необходимо выполнить слещлощие действия:

1.                     Подключить модуль GRAPH        USES GRAPH;

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

а) в разделе описания переменных описать две целочисленные переменные для указания драйвера и режима работы графического адаптера, например gd и gr соответственно: Var gd, gr: 1nteger;

б) в разделе операторов установить графический режим с помощью процещры INITGRAPH:


Begin

1NITGRAPH (gd, gr,

З. Выполнить графические построения.

4. В конце программы выполнить возврат в текстовый режим с помощью процещры CLOSEGRAPH :

Readln; [задержка результата на экране монитора C10seGraph; End.

общий вид процедуры INITGRAPH: INITGRAPH (драйвер, реши ,  путь) ;. Здесь «путь» полный путь к папке, в которой хранится нужный графический драйвер. Так как требуемый графический драйвер мы ско пировали в текущую рабочую папку, путь будем представлять как «пустую строку». Для задания типа драйвера используем режим автоопределения  )ЕТЕСТ.

* При инициализации графического режима можно написать конкретный путь к файлам драйверов, например InitGraph (драйвер, режим,

ё 1 З. Создание изображений

1 3.1 . Задание цвета

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

Для выбора цвета фона, на котором будет выполняться рисунок, используется процещра SetBkC010r:

SetBkC010r (номер цвета);

Эта процещра изменяет цвет фона, не изменяя изображений (в отличие от процедуры C1earDevice, которая стирает все изображения).

Для выбора цвета изображения используется процедура SetC010r: SetC010r (номер цвета);

1. При инициализации графического режима экран автоматически очищается (заполняется фоновым цветом).

2. В программе вначале задается цвет изображения, и лишь затем испольЗУЮТСЯ средства для получения этого изображения!

Цвет выбирается из таблицы цветов (см. п. 12.l), например процедурой SetC010r (4) ;

1 3,2. Построение графических примитивов

Объект

Изображение

Запись на языке Паскаль

Точка заданного цвета

х

PutPixe1 (Х, У, цвет) ;



ПроДолжение

Объект

Изображение

Запись на языке Паскаль

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

Line или Line

Прямоугольник с заданными координатами его диагональных точек

Rectangle

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

Окружность заданного радиуса с заданными координатами центра

х

Circ1e (Х, УД) ;

Пример 1. С помощью рисунка 3.10 составить программу получения на экране монитора изображения прямоугольного треугольника и точки желтого цвета на зеленом фоне.

Программа будет такой:

Program Triang1e;

Var а, Ь: Integer;

              Begin                                                                                                             240         400                  639

a:=Detect; InitGraph (а, Ь,

70

SetBkC010r (2) ;

SetC010r (14) ;

           Line (240, 70,  ;              270 •

Line (240, 270, 400, 270) ;

Line (240, 70, 400, 270) ;

PutPixe1 (400, 70, 14) ; 479 Read1n; C10seGraph;

End.

Пример 2. С помощью рисунка 3.1 составить программу получения на экране монитора изображения снежной бабы (белого цвета на синем фоне).


Программа будет такой:

              Program ВАВА;                                                                                                320                          639

                                                                                                                       60

Var а, Ь: Integer;

140

Begin a:=Detect; InitGraph (а,

260

SetBkC010r ( 1 ) ;

SetC010r (15) ;

         Circ1e (320, 60,     ;

          Circ1e (320, 140,      ;                  479

Circ1e (320, 260, 70 ) ; Read1n; C10seGraph;

End.

Рис. 3.11

 

Пример З. С помощью рисунка 3.12

320

639

20

•20

а  InitGraph (а,  

 

SetBkC010r ( 1 ) ;

Рис. 3.12

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

              Программа будет такой:                          180

240

Program ROBOT;

          Uses Graph;                                зоо

Var а, Ь: Inteqer;

Begin

479

изображений

    SetC010r (15) ; { голова }

Rectang1e (270, 180, 370, 300) ; { уши } Rectang1e (240, 220, 270, 260) ;

Rectang1e (370, 220, 400, 260) ;

Read1n;

C10seGraph;

End.

* 1. При построении линейных изображений, состоящих из последовательно соединенных отрезков, удобно использовать процещтры.•

MoveTo (Х, У) ; Перемещение текущего указателя в точку с координатами (Х,У)

MoveRe1 (dX, dY) ; Перемещение указателя от точки (Х,У) до точки (X+dX, Y+dY)

           LineTo (Х, У) ;                  Построение отрезка от текущей точки в точку

LineRe1 (dX, dY) ; Построение отрезка от текущей точки (Х,У) до точки (X+dX,Y+dY)

 Положение текущей точки зависит от графического оператора, который был выполнен последним. Например, после оператора Line (0, О, текущей становится точка (70, 50); после оператора PutPixe1 ( 30 ,  точка (30, 90).

Пример 4. С помощью рисунка 3.13 составить программу получения изображения прямоугольной трапеции. Программа будет такой:

Program TRAPECIA 1 ;

            Uses Graph;                                                                                           240 350 450                639

Var а, Ь: Inteqer;

Begin a :=Detect; InitGraph (а, Ь, ” MoveTo (240, 60) ;

      LineTo (240,          ;  { вниз }

      LineTo (450, 200) ;  { вправо }

LineTo (350, 60) ; {влево вверх}

      LineTo (240, 60) ;  { влево }

Read1n; C10seGraph;

End.                                                                                                                   Рис. 3.13

Второй вариант решения примера 4 (с использованием процещры LineRe1):

Program TRAPECIA 2;

Uses Graph; Var а, Ь: 1nteger;

Begin a:=Detect; InitGraph (а, Ь

МопеТо (240, 60) ; LineRe1 (0, 140) ;

LineRel (210, 0) ; LineRe1 (—100, -140)  (-110, 0) ; Read1n; C10seGraph; End.

2. Язык Паскаль позволяет изображать линии разнообразных стилей (по ширине и начертанию — внешнему виду). Установка стиля производится с помоилью процещры SetLineSty1e (вид линии, шаблон, толщина линии); Будем считать шаблон равным нулю. Остальные значения могуг быть такими: вид линии: сплошная линия (0), точечная ( I ), штрихпунктирная (2), пунктирная (З); толщина ЛИНИИ: нормальной толщины (1), тройной толщины (З). Например, SetLineSty1e (0, О, З) ; {Задание линии большой толщины}

SetLineSty1e (З, 0, 1) ; {Задание пунктирной линии нормальной толщины}. З. Возможно совместное подключение мо№ей Crt и Graph и использование в одной программе подпрограмм обоих мощлей. Например, для замедления процесса рисования можно использовать процещру De1ay:

Program CRT GRAPH,•

Uses Crt, Graph;

Var а, Ь: Inteqer;

Begin

LineTo (240, 200) (200) ; LineTo (450, 200) (300) ;

Read1n; C10seGraph;

Упражнения

1 . Испытайте приведенные в примерах I —4 программы, дополните рисунки необходимыми деталями:

а) у снежной бабы (см. рис. 3.1 1) изобразите глаза-пуговки, нос-морковь;

б) дорисуйте роботу (см. рис. 3.12) глаза прямоугольной формы, нос, рот, антенны; вместо процедуры Rectangle йспользуйте процещру Ваг.

2. Напишите программы получения изображений:

а)

6)

в)       

г)

д)

*ж)

з)

и)

к)

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

*З. Получите с помощью счетчика случайных чисел координаты трех точек графического экрана — вершин треугольника и изобразите его.


*13.3. Построение сложных графических объектов

Объект

Изображение

Запись на языке Паскаль

Дуга окружности текущего цвета

Arc (Х, у, щ,       ;

— координаты центра дуги,

R — радиус дуги окружности

Дуга эллипса текущего цвета

E11ipse (Х, У, Щ, ф, RX, RY) ; координаты центра эллипса, RX, RУ длины горизонтальной и вертикальной полуосей (большого и малого радиусов)

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


лучения изображения эллипса с центром в точке (320, 240) и длинами полуосей 190 и

80 (рис. 3.14). 160 Программа будет такой:

240

Program ELIPS;                                         320

Uses Graph;

Var а, Ь: 1nteger; Begin    479 а : =Detect ; InitGraph (а, Ь

E11ipse (320,240, 0, 360,190,

Read1n;

C10seGraph; End.

Пример 2. Составить программу о получения изображения «левой» полуокружности с центром в точке (250, 200) 100 и радиусом 100 (рис. 3.15).

      Программа будет такой:                          200

Program POLUOkR;                                                          зоо

Uses Graph;

Var а, Ь: Integer; Begin     479 а : =Detect; InitGraph (а, Ь

Arc (250, 200, 90, 270, 100) , Read1n; C10seGraph;

End .

Рис. 3.14

150 250                                   639

Рис. 3.15


13.4. Заполнение областей изображения

Вы уже знаете, каким образом в языке Паскаль изображается закрашенный прямоугольник. Имеются другие средства для закрашивания («заливки») замкнутых областей.

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


изоб ажений

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

Для выбора стиля (шаблона и цвета) заполнения области используется процедура SetFillSty1e:

SetFi11Sty1e (шаблон, цвет заполнения)

Значения шаблона задаются равными: 0 (сплошной цвет фона), 1 (сплошной текущий цвет), 2—6 (штриховка различной толщины и наклона), 7—9 (заполнение клеткой различной толщины и наклона), 10—11 (заполнение точками, густо или редко расположенными).

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

Пример 1. С помощью рисунка 3.16 написать программу заполнения прямоугольного треугольника белым цветом (с контуром желтого цвета на зеленом фоне ).

Программа будет такой:

Program Triang1e 1 ;639

Uses Graph;

70

Var а, Ь: 1nteger;

Begin

InitGraph (а, Ь, ' ' ) ; 200

      SetBkC010r (2) ; SetC010r (14) ;      270

Line (240, 70, 240, 270) ;

Line (240, 270, 400,270) ;

Line (240, 70, 400, 270) ;

479

       F100dFi11 (320, 200,        ;

        Read1n; C10seGraph;                                             Рис. 3.16

End.

Пример 2. С помощью рисунка 3.16 написать программу заполнения прямоугольного треугольника красным цветом (с контуром желтого цвета на зеленом фоне). Скорректируем программу Triang1e 1 :

{ корректировка программы Triang1e 1 }

Line (240, 70, 400, 270) ; SetFi11Sty1e (1, 4) ;

{ сплошной красный цвет ЗаЛИВКИ}

F100dFi11 (320, 260, 14) ;

* Пример З. С помощью рисунка 3.17 написать программу заполнения прямоугольной трапеции штриховкой светло-серого цвета нормальной толщины. Программа будет такой:

           Program ТПРЕСIА З;                                                        240 350 450          639

.

Uses Graph;

60

Var а, Ь: 1nteger;

Begin         175 а : =Detect;   200 InitGraph (а, Ь, ' SetC010r (1) ; { синий контУР }

МоуеТо (240, 60) ;

LineTo (240, 200) ; 479

LineTo (450, 200) ,

Рис. 3.17


LineTo (350, 60) ;

LineTo (240, 60) ;

SetFi11Sty1e (3, 7) ;

F100dFi11 (350, 175, ъ ) ,

Read1n;

C10seGraph;

End.

Пример 4. С помощью рисунка 3.18 напишите программу заполнения окружности желтым цветом, которая после нажатия на клавишу Еп{ег изменяет цвет заливки на зеленый.

                                                                                                                                             320                        639

.

Программа будет такой:

Program CIRC;

          Uses Graph;                                175

Var а, Ь: Integer;

Begin а : =Detect; 1nitGraph (а Ь

SetColor (14) ; ч желтый контур) 479

         Circ1e (320, 175, 100) ;                                Рис. 3.18

   SetFi11Sty1e (1, 14) ;        {желтая заливка }

F100dFi11 (320, 175, 14) ;

Read1n;

     C1earDevice;                      { очистка экрана}

      SetC010r (14) ;                          4 желтый контур }


Circ1e (320, 175, 50) ;

    SetFi11Sty1e (1, 2) ;         { зеленая заливка }

F100dFi11 (320, 175, 14) ; Read1n; C10seGraph;

End.

В языке Паскаль существуют специальные средства для заполнения эллипса, секторов круга и эллипса, параллелепипеда.

Объект

Изображение

Запись на языке Паскаль

Эллипс, закрашенный текущим узором и цветом заполнения

Fi11E11ipse (Х, У, RY) ; где  координаты центра эллипса, RX, RУ — длины горизонтальной и вертикальной полуосей

Сектор круга, заполненный текущим узором

PieS1ice (Х, У, щ, CL2, R) ; где (Х, У) координаты центра, си, — начальный и конечный углы сектора, R — его радиус

Сектор эллипса, закрашенный цветом ПО текущему шаблону

Sector (Х, У, Щ, Щ, RY) ; где (Х,У) координаты центра эллипса, RX, RY — длины горизонтальной и вертикальной полуосей, си, ПаЧаЛЬПЫЙ и конечный углы сектора

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

Bar3D Y2,D, Тор) ; где (М, П), У2) координаты диагональных точек передней грани (прямоугольника), Г) — ширина боковой грани, Тор признак отображения верхней грани (TRUE отображать, FALSE — не отображать)


а : =Detect; 1nitGraph (а, Ь,

SetBkC010r (1) ;

SetC010r (14) ;

SetFi11Sty1e (1, 12 ) ;

Fi11E11ipse (300, 200, 30, 50) ;

SetFi11Sty1e (1, 10) ;

PieS1ice (300, 140, 315, 225,  ;

SetFi11Sty1e ( 1 , 8 ) ;

Sector (300, 300, 45, 135, 100, 50) ;

Line (50, 450, 600, 450) ;

SetFi11Sty1e ( 1 , 2 ) ;

Bar3D (200, 400, 100, 450, 20, True) ; SetFi11Sty1e ( 1 , 4 ) ;

50, True) ,

Read1n; C10seGraph;

Рис. 3.19

{ синий цвет фона}


{желтый контур }

(розовая заливка}

{ эллипс }

{ ярко— зеленый } { сектор темно—серый }

{ сектор эллипса}

{ зеленый закрашенный }

{ параллелепипед

{ красный закрашенный }

{ параллелепипед }


1. В каких режимах может выполняться вывод информации на экран монитора?

Какова разрешающая способность экрана при выводе графической информации на Вашем компьютере?

Каково назначение процедур InitGraph и CToseGraph?

Упражнения

1. Напишите программу получения изображения (на выбор):

6)

в)

г)

д)


 

ж)

и)

к)

 

о)

п)

*2. Случайным образом разместите на экране треугольник и изобразите его медианы.

ё 14. Работа с текстом

1 4.1 . Отображение текста

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

0utText ( текст ' ) — текст выводится на экран монитора, начиная с текущей позиции указателя (графического курсора).

0utTextXY (Х, У, ' текст ' ) текст выводится на экран монитора, начиная с позиции (Х, У).


Пример. Дополнить программу построения треугольника Triangle (п. 13.2) выводом текста «Прямоугольный треугольник» (коричневым цветом) ниже изображения, начиная с позиции (220, 330).

Дополнение программы:

SetC010r (6) ;

0utTextXY (220, 330, ' Прямоугольный треугольник ' ) ;

* Т 4.2. Установка шрифта и стиля

Для изменения внешнего вида выводимого текста (ориентации, направления вывода, размера символов) используется процедура SetTextSty1e:

SetTextSty1e (шрифт, ориентация, размер);

Для параметра «шрифт» определены значения: 0 (обычный матричный шрифт), (полужирный шрифт), 2 (тонкий шрифт), З (рубленый шрифт), 4 (готический шрифт).

Значения параметра «ориентация»: 0 (обычное горизонтальное отображение текста), I (каждый символ повернут на 900 в направлении против хода часовой

стрелки, при этом текст отображается снизу вверх); 2 (отображение текста в горизонтальном направлении слева направо).

Значения параметра «размер»: от 0 до 10.

о Использование процещры SetTextSty1e требует наличия в текущем ка талоге файлов шрифтов *.chr.

Пример

SetTextSty1e (0, 0, 5) ;

0utText ( ' Горизонтальный вывод большими буквами ' ) ;

SetTextSty1e (0, 1,1) ;

0utText ( ' Вертикальный вывод ' ) ,

Упражнение

Напишите программы вывода изображений:

а) плаката «Программирование — вторая грамотность»;

* б) текста программы вычисления суммы двух чисел, значения которых вводятся с клавиатуры;

в) расписания уроков на понедельник.

ё 15. Алгоритмическая структура ВЕТВЛЕНИЕ

В языке Паскаль выделяются два класса операторов: простые и структурные. Простой оператор не содержит в своей записи других операторов, а его выполнение не связано с анализом некоторых условий (программа выполняется последовательно: от первого оператора ко второму, от второго к третьему и т. д.). Структурный оператор содержит в своем составе другие операторы, порядок выполнения которых определяется некоторыми условиями. К первому классу относятся оператор присваивания и операторы обращения к процедурам, ко второму — условный оператор (оператор ветвления), операторы выбора, цикла (1f, Case, Whi1e, E'or). Несколько операторов с помощью операторных скобок Begin и End объединяются в составной оператор.

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

Параграфы 15, 16 посвящены изучению структурных операторов языка программирования Паскаль.

                                              S                     итмическая ст кту

     1    . Логические величины и выражения

Довольно часто на поставленный вопрос мы получаем ответ «да» или «нет». Величины, которые могут принимать одно из двух значений «истина» (TRUE) или «ложь» (FALSE), называют логическими. Им соответствует логический тип данных, который в языке Паскаль описывается как Воо1еап. Значение логического типа занимает в памяти байт: FALSE О, TRUE 1.

Допустимые операции для логического типа данных: операции сравнения (отношения) и логические операции.

Арифметические выражения можно сравнивать между собой с помощью операций сравнения. Эти операции известны нам из курса математики. В языке Паскаль им соответствуют операции сравнения: — (равно), <> (не равно), > (больше), >= (больше или равно, т. е., не меньше), < (меньше), <= (не больше).

С помощью операций сравнения строятся выражения сравнения, например, х=5; a>b; а*х+З<=0; 7—х<>5*с; a>=b*c; omega < pi/2; 4=3. Их можно присваивать логическим переменным или использовать в условных операторах.

Например, если имеется описание Var О, л, Е: B001ean;R: Rea1; , то возможны присваивания: R :=3; Q:=R<7;  E:=Fa1se; . В результате выполнения операторов переменные Q, Ш, Е получат соответственно значения Тгие (так как выражение З < 7 истинно), Тгие, False.

Пример 1. Составить программу проверки утверждения: верно ли, что А > В (числовые значения величин А и В вводятся с клавиатуры). Программа на языке Паскаль может быть такой:

Program TRU РА 1 ;

Var А, В: Rea1;

Z : Воо1еап;

Begin

        Write ( ' Введите число           )

Read1n (А) ;

        Write ( ' Введите число           )

Read1n (В) ;

Write1n ( 'А>В? ' End.

После запуска программы введем числа 5 (оно будет передано переменной А) и З (передается переменной В). Результат работы программы:

А>В? True (действительно, 5 > З — истинное неравенство).

Если ввести числа 0 и 4,8, результат будет таким:

А>В? Fa1se

Пример 2, Составить программу проверки: правильно ли пользователь даст ответ на вопрос: «Когда был основан город Минск?» Программа на языке Паскаль может быть такой:

            Program           FA2;

Var G: Integer; Z : Воо1еап;

Begin

Write1n ( ' Когда был основан город Минск? ' ) • Read1n (G) ,

Write1n (Z) , End.

Выражение называется логическим, если результатом его вычисления является логическое значение: TRUE или FALSE.


Логические выражения строятся с помощью допустимых операндов и логических операций AND (И), 0R (ИЛИ), NOT (НЕ). Примеры логических выражений: (a>b) and (Ос) , ( ><<=1) or (05) апа (02) ; апа (Х+2<З) ; пое (a=b) . Операции сравнения имеют низший приоритет по сравнению с другими операциями, поэтому отношения в логических выражениях заключают в скобки.

Ниже записаны логические операции от высшего приоритета к низшему (операции высшего приоритета выполняются в первую очередь):

Операция

Действие

ХОТ

Отрицание, или логическое НЕ

AND

Логическое умножение, или логическое И

 

Логическое сложение, или логическое ИЛИ

Результаты выполнения логических операций (Т — истина, F — ложь) приведены в следующей таблице:

х

 

 

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

NOT Х

 

 

 

т

 

 

т

т

 

 

 

 

 

т

 

 

т

 

 

т

 

 

 

 

 

 

ст к

Пример З. Определить порядок вычисления значения логического выражения and

Сначала вычисляется значение выражения 4 * Х- 1, затем оно сравнивается с числом 0 и определяется истинность условия 4*><-1>0; аналогично для логического выражения      затем вычисляется значение всего выражения в зависимости от значений каждого выражения:

х

 

 

 

 and (х+2<3)

5

 

Тгие

False

Тме and False False

0.5

l>0

Тгие

2.5<3 тме

Тгие and Трие Тгие

Пример 4. Написать программу, проверяюшдую, верно ли, что человек, возраст которого х, является школьником.

Задача сводится к проверке условия 6 < х < 19. Программа на языке Паскаль может быть записана следующим образом:

Program LOGIST;

Var х : Byte;

L, P, Z : Воо1еап;

Begin

Write ( ' Возраст=' ) ;

Read1n (х) ;

 

 and («=19) ;

Write1n ( ' Это школьник? '       End.

Результаты работы программы после двух запусков:

Возраст=З4

Это школьник? Fa1se

Возраст=15

Это школьник? True

Упражнения

1.      Запишите выражение средствами языка Паскаль:

        Ь        12              

2.      Напишите программу, проверяющую истинность утверждения:

а) введенный с клавиатуры год относится к ХМ в.;

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

*в) введенное число является решением неравенства х) — 4 > 0;

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

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

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

В языке Паскаль существуют две формы записи команды ветвления: сокращенная Р ТНЕIЧ S; (рис. 3.20, а) и полная Р THEN S1 ELSE S2; (рис. 3.20, б).

Рис. 3.20

Здесь Р — условие разветвления (логическое выражение или выражение отношения), S, Sl, S2 — выполняемые операторы.

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

Примеры простых условий: a>b, 5+х=з, sqrt (х) <=25. Примеры составных условий:

(х+у=5) and (2*x*sin (х) <5 . 5)

(«у) or not (y<z)

Порядок выполнения операторов приводится на рисунке 3.21. Так, в сокращенной конструкции, если условие Р истинно, выполняется оператор S, а затем оператор, слещлощий за оператором IF.

Если по одной из ветвей после служебных слов ТНЕ>Ј и (или) ELSE требуется выполнить более одного оператора, их ограничивают операторными скобками BEGIN ... END и рассматривают как составной оператор.

Например, в программе, определяющей наибольшее число из двух заданных

чисел:

а, если а > Ь,

х

Ь, если а < Ь, условный оператор будет выглядеть так:

If a>b Then х:=а E1se х:=Ь;

Если требуется определить наибольшее число х из двух заданных чисел а и Ь

и вывести его номер К:

а, если а > Ь,

Ь, если а Ь;

1, если а > Ь,

2, если а < Ь,

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

If a>b Then

Begin х:=а; К :=1;

       End

Begin х:=Ь; К :=2;

End,•

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

Ниже показаны возможные взаимные расположения на числовой прямой точек, соответствующих числам а, Ь, с.

а

 

с

а

с

 

 

а

 

а

Условный оператор может выглядеть следующим образом:

If a>b Then

IF а>с Then х E1se х

If a<b Then

               IF                  Then х E1se х

* Использование логической операции and может сделать наш оператор 60лее компактным:

        1f (a>b) and (Ос) Then х:=а; . . .  

Пример 2. Написать программу, моделирующую работу пожарного датчика в помещении: программа должна выводить сообщение «Пожароопасная ситуация», если температура в комнате превысит 60 о с; если температура не более 60 о с, датчик «молчит».

На языке Паскаль программа решения задачи может выглядеть так:

Program OGON,•

Var Т: Rea1;

Begin

then Write1n ( ' Пожароопасная ситуация ' ) ;

End.

Пример З. Написать программу, которая позволит определить, является ли человек, возраст которого х, школьником.

Задача сводится к проверке условия: 6 19 (сравните с решением примера 4 п. 15.l).

Program Sch001 1 ;

Var Х: Byte;


Begin

Write ( ' возраст=' ) ; Read1n (Х) ;

1f Х >=6 Then

               If                 Тћеп

Write1n ( ' школьник ' ) , End.

* Если использовать логическую операцию and, программа будет выглядеть так:

Program Sch001 2; Var Х: Byte;

Beqin

Write ( ' Возраст=' ) ; Readln (Х) ;

If (Х >=6) and (Х<=19) Then Write1n ( ' школьник ;

End.


Пример 4. Составить программу, которая определит, на какой высоте и на каком расстоянии от места броска окажется через время t с мяч, брошенный под углом ос к горизонту с начальной скоростью м/с (с учетом проверки корректности исходных данных) (см. пример З S Получим программу:

Program BROSOk;

Const 9=9. 8,

Var  Rea1;

Begin

Write ( ' введите скорость ' ) ; Readln (VO) ; Write ( ' введите время ' ) ; Read1n (Ё) ;

Write ( ' введите угол ' ) ; Read1n (a1fa) ;

If (a1fa>0) and (a1fa<=pi/2) and (VO>O) andand

(00 ) Тћеп Begin

( al fa )

(a1fa) *t-g*t*t/2 ; Write1n ( ' х= ' , х) ; tNrite1n ( ' y= ' ' У) ' End; End.

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

             1f (a1fa>O) and (...)           then

                Begin       End

E1se Write1n ( ' Некорректные данные ;

 Пример 5. Написать программу для решения неравенства Ь (а, Ь действительные числа).

Возможны следующие варианты ответа:

1)              х > b/a (при а > 0);

2)              b/a (при а < 0);

З) нет решений (при а = 0, Ь > 0); любое число (при а = 0,

Графическое представление алгоритма решения задачи показано в виде блок-схемы на рисунке 3.22.

 Программа на языке Паскаль может быть такой:

Program Neravenstvo;

Begin

VVrite а=' ) ;Read1n (а) ; Write ( ' b= ' ) ;Read1n (Ь) ;

                1f а        Then

, b/a)

                         E1se If           Т Неп

Write1n ( ' х< ' , b/a)

                                   E1se 1f               Тћеп

Writeln ( ' нет решений ' )

Write1n ( ' х         любое число ' ) ; End.

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

If х >—5 Then

If х<=б Then у:=х*х

E1se у:=х*х*х

E1se у:=х;

Этот фрагмент позволяет вычислить значение у по формуле:

х, если х < — 5, у = х2 , если —5 < х < 6, х з , если х 6. *

1.    Какие значения могут принимать переменные типа ВооЬап?

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

З. Что может использоваться в качестве условия в условном операторе?


Упражнение

Напишите программы решения задач:

а) найти лучший результат в забеге на 100 м трех спортсменов;

б) решить квадратное уравнение ах2 + bx + с = 0 (а 0);

*     в) заданы три действительных числа. Выяснить, могут ли они оказаться длинами сторон некоторого треугольника;

*     г) определить, принадлежит ли точка (х, у) заданной области:

Рис. 3.23

*     1 5.3, Оператор выбора CASE

Оператор выбора (варианта) CASE представляет собой частный случай реализации структуры ВЕТВЛЕНИЕ, когда возникает необходимость выбора одного из нескольких возможных вариантов вычислений в зависимости от значений некоторого выражения (ключа, селектора).

Порядок выполнения оператора CASE сле№ощий•. вычисляется значение выражения К; полученное значение сравнивается со значениями К1, К2, ..., КЛ[; если оно совпадает с одним из этих значений, то управление передается соответствующему оператору и выполнение оператора CASE завершается. Если значение выражения К не совпадает ни с одним из возможных значений, далее все зависит от типа оператора CASE: если он ПОЛНЫЙ (в нем присутствует служебное слово ELSE), то управление передается команде S; в противном случае выполнение оператора завершается.


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

CASE

К2 :

END,•

К выражение, определяющее значение ключа; кт, КМ возможные значения ключа;

Sl, S2, ..., SN, s — выполняемые операторы Рис. 3.24 (простые или составные).

Селектор К представляет собой выражение порядкового типа. К порядковому типу относятся целочисленный, логический и символьный типы. С ПОСЛщПИМ мы познакомимся в 12-м классе.

В языке Паскаль допускается ИСПОЛЬЗОВ?ШИС нескольких возможных значений ключей, разделенных запятой (перечисление значений) или двумя точками  (диапазон значений); например:

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

пусть х заданное натуральное число. Составим выражение сравнения: х mod 7 О. Используем это выражение в качестве селектора; его возможные значения: Тгие, False. Ниже приводятся два варианта использования оператора выбора (в полной и неполной формах):

Program PRIM 1;

     Var х     LongInt;

Begin

Write ( ' Введите натуральное число ' ) ; Read1n (х) ;

         Case х mod 7                                0 ofmod 7                               0 of

True: Write1nTrue : VVrite1n


( ' делится на 7 ' ) ;( ' делится на 7 ' )

False: Write1nWrite1n

( ' не делится на 7 ' ) ( ' не делится на 7 ; End;End; End.

Пример 2. Составить программу, которая по номеру дня недели определит его название.

При написании программы на языке Паскаль можно использовать условный оператор IF:

If Num=1 Then

Write1n ( ' Понедельник ' )

E1se if Num=2 Then

Write1n ( ' Вторник ' )

E1se -if Num=3 Then

Write1n ( ' Среда ' )

E1se -if Nurn=4 Тћеп

Write1n ( ' Четверг ' )

E1se if Num=5 Then

Write1n ( ' Пятница ' )

E1se if Num=6 1'hen

Writeln ( ' Суббота

E1se if Num=7 then

Write1n ( ' Воскресенье ' )

Else

INrite1n ( ' Это не номер дня недели ' ) ,

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

Program Day;

Var Num: Byte;

Begin

Write1n ( ' Введите номер дня недели

Read1n (Num) ;


Num of

1 :

Write1n

( ' Понедельник

;

2 :

Write1n

( ' Вторник ;

 

З :

Write1n

( ' Среда  

 

4 :

Write1n

( ' Четверг 

 

5 :

Write1n

( ' Пятница ' ) ;

 

6:

Write1n

( ' Суббота

 

7 :

Write1n

( Воскресенье )

E1se Write1n ( ' Это не номер дня недели ' ) ; End; End.

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

              Дано: rnonth, year        номера месяца и года.

Найти: kol days — количество дней в этом месяце.

31, если nzonth — или З, или 5, или 7, или 8, или 10, или 12,

30, если rnonth — 4 или 6, или 9, или l l Связь: КЫ days

                                                                  29, если month = 2 и year              високосный,

28, если month — 2 и year — невисокосный,

ст уктура

year високосный, если year делится без остатка на 4, кроме тех, которые делятся на 100 и не делятся на 400. Например, 1900 год невисокосный, 2000 год високосный.

Будем считать, что данные корректны.

Program Days;

Var Year: Integer; month, Ко 1 days : Byte; Sto: Воо1еап;

Begin

Write ( ' Введите номер месяца

Read1n (month) ; Case month of

Кош

Ко 1 days :

            2                                    Begin                   { февраль }

Write ( ' Введите номер года ) ;

Read1n (Year) ;

Sto:=(Year mod

-if ( (Sto=True) and (Year mod 400

( (Sto=Fa1se) and (Year mod 4=0) ) Then

Ко 1 days :=29

E1se Ко 1 days

End;

End;

Write1n (Ко 1 days) ; End.

1. Какова структура условного оператора? * Оператора выбора?

2. Каков порядок выполнения условного оператора? * Оператора выбора?

Упражнение

Напишите программы решения следующих задач:

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

б) программа предлагает ввести число К полных лет человека (от до 120) и выводит фразу: «Вам К лет». Например, при К = З фраза будет такой: «Вам три года», при К = 18 «Вам 18 лет», при К = lOl «Вам 101 год»;

в) программа предлагает ввести номер года и выводит в римской системе нумерации век, к которому относится заданный год;

г) программа предлагает ввести текущее время и выводит период суток (день, ночь, утро, вечер);

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

Сумма очков, набранных за неделю

Степень физической

подготовленности

Юноша

Девушка

не менее 75

не менее 65

Превосходная

 

 

Отличная

 

 

Хорошая

 

 

Удовлетворительная

 

8—15

Плохая

Меньше 10

Меньше 8

Очень плохая


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

ё 1 Б. Алгоритмическая структура ПОВТОРЕНИЕ

1 Б. 1 . Цикл с предусловием WHILE

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


составлении программ на языке Паскаль повторяющиеся действия можно реализовать с помощью операторов цикла. Одним из них является цикл Whi1e : Whi1e Р do S ; .

Его принято называть «цикл с предусловием», так как проверка условия выполнения цикла осуществляется до выполнения операторов, входящих в состав тела цикла.

В общем виде графически работа оператора представлена на рисунке 3.25. Здесь Р — логическое выражение (условие выполнения цикла); S — оператор (простой или составной), который выполняется, если Р истинно,            тело цикла. Использование цикла WHILE оправдано, когда коли-

Рис. 3.25        чество повторений• операторов тела цикла заранее неизвест-


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

Например, согласно фрагменту программы

Read1n (К) ;

Begin

Write1n ( ' Делаи

Тело цикла к : 4+1; End;

на экран компьютера при К = З будет выведено:

Делай З

Делай 4

Делай 5

При К = 5 тело цикла будет выполняться один раз, а при К = 10 (К> 5) — ни одного раза.

Пример 1. Написать программу нахождения первой (старшей) цифры заданного натурального числа п.


Идея алгоритма основана на последовательном делении на 10 числа п и получаемых частных от деления (рис. 3.26); процесс деления закончится, когда будет получено частное, меньшее 10.

На языке Паскаль программа может выглядеть так:

Program ОТЧЕ;                                                                     32395 10

3239 10

323 10

3

      Var п: LongInt;      { заданное число}

                  С : LongInt;          {искомая цифра)

Begin

Write ( ' n= ' ) ; Read1n (п) ;

Рис. 3.26

Whi1e С>9 do С:=С div 10;

Write1n ( ' Первая цифра=' , С)

End.

Анализируя программу, можно заметить, что тело цикла может выполняться различное количество раз: ни одного (например, при вводе чисел 2, 8 или другого, не большего 9), (для двузначных чисел), 2 (для трехзначных) и т. д. Использование цикла Whi1e в данном случае вполне уместно.

4. ЗаК. 170.

Переменной х вначале присваивается значение 1. Так как условие 1 2 истинно, выполняется тело цикла: вычисляется и выводится на экран значение у, значение

Рис. 3.27 переменной х увеличивается на 0,1. Условие 2 истинно, поэтому выполняется тело цикла для значения х = 1,1; х становится равным 1,2; и т. д. Последний раз тело цикла выполнится при х— 2. Затем значение переменной х становится равным 2,1; условие 2,1 < 2 ложно, выполнение цикла завершается.

и Обратите внимание на то, что на экран не выводится значение функции в последней точке х = 2. Это связано с особенностью представления числовой информации (в частности, вещественных чисел) в памяти компьютера. Для получения требуемого вывода рекоменщется записать в заголовке цикла условие в виде: Whi1e x<=b+h/2 do где h — дробный шаг изменения значения х (в данном случае условие: х<=2 . 05).

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

Пусть п количество купленных конфет, которые необходимо разделить на З.

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

Будем считать, что данные корректны: п > 0. Так как дети не умеют делить, предложим им раскладывать конфеты в три кучки, добавляя в каждую по очереди по одной конфете (количество конфет при этом будет уменьшаться на З). Если после очередного этапа раскладывания не останется ни одной конфеты, значит, деление возможно, если кому-то не хватило конфеты — невозможно.

Запишем программу на языке Паскаль. Здесь тело цикла содержит единственную команду п : =п-З:

Program VkUSNO,•

Var п : 1nteger;

Begin

Write ( ' Число конфет=' )

Read1n (п) ;

Whi1e п>0 do п:=п—З;

-if     Then Write ( ' можно E1se Write ( ' нельзя

Write1n ( ' разделить ;

End.

Пример 4. Имеется фрагмент программы суммирования квадратов десяти последовательных натуральных чисел (рис. 3.28), в котором Женя допустил ошибки. При запуске программа зависает, и Евгений вынужден прерывать ее работу принудительно (Ctrl + ВгеаК). Разобраться в причинах зависания.

do

Write1n ( S ) ;

Рис. 3.28

Анализ 1. Зависание программы свидетельствует о наличии так называемого «зацикливания»: мы имеем дело с бесконечным циклом, в котором условие выхода из цикла, в данном случае п > 10, не наступает, пока не будет выполнено принудительное завершение работы программы. Проследим изменение значений переменной п в заголовке цикла. Первоначально п = 1. Условие 1<=10 истинно, поэтому происходит вхождение в цикл и выполняется команда присваивания S :=S+k;. Значение п не изменяется, и компьютер постоянно проверяет справедливость истинного условия 1<=10. Итак, первая ошибка связана с неправильной организацией работы счетчика п: автор задал начальное и конечное значения, а значение шага не определил.

Устранение ошибки 1. Добавим в тело цикла команду присваивания для увеличения значения п на 1: Это приведет к необходимости организации составного оператора Beqin End (рис. 3.29). После внесения изменений и запуска программы зацикливание не наблюдается, однако на экран выводится неверный результат (число О).

Whi1e

Begin

п : =n+1;

End;

Write1n ( S ) ;

do

Рис. 3.29


Анализ 2. Обратим внимание, как осуществляется суммирование. Вначале S = 0 и затем в цикле должна накапливаться сумма путем добавления квадратов чисел 1, 2 10. Запись команды S :=S+k; говорит о том, что в переменной S накапливаются значения переменной К, которая не задается и не изменяется. Сами суммируемые числа обозначены в программе переменной п, которую и слещет записать в теле цикла вместо К.

Устранение ошибки 2. Заменим команду S :=S+k; на S :=S+n; (рис. 3.30).

Whi1e                  do

Begin

End;

Write1n ( S ) ;

Рис. 3.30

Анализ З. В программе есть еще одна ошибка, связанная с несоответствием алгоритма условию задачи: программа вычисляет сумму десяти последовательных  чисел вместо суммы их квадратов.


    Устранение ошибки З. Заменим команду S :=S+n; на S :          (рис. З. 31 ).

 

Whi1e п<=10 do Begin

End,• te1n ( S ) ;

Рис. 3.31

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

Этот фрагмент может быть таким:

присвоим логической переменной Р значе— ние Fa1se: нужное условие не выполнено)

Whi1e P=Fa1se do пока не выполнено нужное условие }

      Begin                         { будем повторять ввод}


Write1n ( ' Введите число

Read1n (А) ,

If (А>О) and (A<pi/2) Then

                        { условие выполнено }

End;

Такую конструкцию удобно использовать, например, для контроля ввода исходных данных. *

Упражнения

1. Определите, сколько раз будет выполняться тело цикла:

Whi1e                do

       Whi1e             

   do

     Whi1e

do

Begin

Write1n (i) ;

Begin

 

Begin

 

а

 

End;                                      End;

End;

2.

Напишите программы решения СЛФУОЩИХ задач:

 

а) найти сумму цифр заданного натурального числа;

б) определить количество цифр заданного натурального числа;

в) вычислить сумму + 1/2+ 1/3+ ... + 1 /п (значение п вводится с клавиатуры);

          г) вычислить значения функций у = sin х и у = cos х на отрезке        Ц с шагом

0,1. Результат вывести в таблицу вида

подсчитать количество ковриков квадратной формы, которые понадобятся, чтобы покрыть ими пол комнаты пряМОУГОЛЬНОЙ формы (размеры комнаты вводятся с клавиатуры). Например, если

1 6.2. Цикл с параметром РОЯ

Для организации циклических действий в программах можно использовать оператор FOR.


Использование цикла FOR оправдано, когда количество повторений цикла заранее (т. е. еще до начала выполнения цикла) известно.

В общем виде графически работа оператора представлена на рисунке 3.33

Форма записи этого оператора такова:

EOR  S; или

Рис. 3.33

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

DOWNTO — служебное слово, определяющее шаг изменения параметра цикла  равным —1;

S — оператор (простой или составной) — тело цикла; — составной символ (имеет смысл «от»).

щ Переменная должна быть порядкового типа; нако КОП    выражения, совместимые по типу с переменной 1.

E'OR — оператор цикла с параметром (шагом). Здесь тело цикла повторяется для всех значений параметра 1, определенного в границах [1нач 1 кон] (отсюда и название цикла). Порядок его выполнения: вычисляются значения выражений 1нач кон '• параметр цикла принимает последовательно все значения от начального до конечного; для каждого из них выполняется тело цикла.

Служебное слово то в записи оператора цикла предполагает, что КОН ' при этом значение параметра цикла на каждом шаге увеличивается на 1. Служебное слово DOWNTO предполагает, что > и значение параметра уменьшается на 1. При нарушении этих условий цикл выполняться не будет.

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

Пример 1. Смоделировать работу сберегательного банка. Известно, что банк ежемесячно начисляет Р % на сумму вклада, причем начиная со второго месяца проценты начисляются на накопленную сумму с учетом процентов. Написать программу вычисления денежной суммы, которая окажется на счету по истечении года (первоначальная сумма вводится с клавиатуры). Считать, что данные корректны.

Дано: S — первоначальная сумма,


Р — ежемесячная процентная ставка.

Найти: Sl, S2, S — сумма на счету в конце 1-го, 2-го, 12-го месяцев.

               Связь: Sn = S100),                      где п = 1, 2, З,      12.

        При: S > 0; З        < 50. Будем считать, что данные корректны.

МетоД: Первоначально подставим в правую часть формулы значение S и найдем Sl (сумму по истечении одного месяца). При подстановке Sl в правую часть формулы найдем значение (сумму по истечении двух месяцев) и т. д. Такие действия проделаем 12 раз. Для подсчета количества прошедших месяцев введем переменную g.

Анализ алгоритма свидетельствует о возможности его реализации с помощью цикла E'OR (в алгоритме присутствует целочйеленная переменная g, для которой известны начальное значение 1, конечное 12, шаг изменения 1).

Графическое представление алгоритма решения задачи показано на рисунке 3.34.

Программа на языке Паскаль может быть такой:

Program Priby1;

Var S : Rea1;

P, g: Integer;

(1+P/100) ;

Write1n (g, End,•

End.

Пример 2. Составить программу отсчета времени, оставшегося до начала спектакля: программа должна предложить ввести оставшееся время (в секундах) и выводить на экран отсчет времени в обратном порядке. Когда отсчет окажется равным нулю, программа должна вывести текст «Начало спектакля. Вход воспрещен!!!» Программа на языке Паскаль может быть такой:

       Program Nacha10;                                                                    Рис. 3.34

Uses CRT;

Var T , S : 1nteger;

Begin

Write ( ' Время до начала

Read1n (Т) ;

            For S           downto 0 do

Begin

C1rScr; GotoXY (40, 10) ;

            Write         De1ay (1000) ;

End;

GotoXY (35, 15) ; TextC010r (4) ; Write1n ( ' Начало спектакля

Write1n ( ' Вход воспрещен! ! '

End.

Пример З. Известен возраст каждого конкурсанта фестиваля «Славянский базар». Составить программу, определяюшую средний возраст конкурсантов.

Пусть возраст конкурсантов задается как число полных лет. Введем обозначения: К — общее количество конкурсантов, — возраст очередного конкурсанта,  S — суммарный возраст, SV — средний возраст конкурсантов. Тогда SV —


Найдем вначале суммарный возраст, выполняя постепенное суммирование с переменной S значения возраста очередного конкурсанта. Первоначально S = 0. Переменная S играет роль сумматора, куда по очереди добавляются значения V. Получим программу:

Program FEST;

     Var             : 1nteger;

S : LongInt;

SV: Rea1;

Beqin iNrite ( ' Сколько конкурсантов=' ) ,

Read1n (К) ,

For               to К do

Begin

{ Для каждого конкурсанта }

Read1n (У) ;

(вводим возраст}

                                 {Пока S=0}

                                     {и суммируем его}

End;


End.

При программировании можно выбирать различные варианты алгоритмических структур. Например, вычисление значений функции = sinx на отрезке [0; 2] с шагом 0,1 можно задать такими вариантами записи операторов:

                         while х<=2 . 05 do begin    y:=sin (х) ;    writeln

(х: 0 : 1, у: 5 : 1) ; х:=х+0. 1; end;

2)х:=0; for     to 21 do begin  write1n (х: 0 : 1, у: 5 : 1) ,      . 1; end; for К:=О to 20 do beqin        :—sin (х) ; write1n (х: 0 : 1, у: 5 : 1) ; end;

Упражнение

Напишите программы решения слещлощих задач:

а) вывести на экран квадраты натуральных чисел от до 50;

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

*в) вывести на экран монитора значения выражения 2“, где п = 1, 2, З, 4

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

1 Б.З, Смешанные алгоритмы

Алгоритм, содержащий алгоритмические структуры ВЕТВЛЕНИЕ и ЦИКЛ, называют смешанным. В языке Паскаль тело цикла может содержать любые операторы (как простые, так и структурные). При программировании таких алгоритмов следует следить за сохранением вложенности алгоритмических структур.

*Пример 1. Настя выбрала в магазине открытки двух типов: по цене М р. для поздравления мальчиков и по цепе D р. для поздравления девочек. Всего у Насти R р. Составить программу, которая позволит получить все возможные варианты покупок, где будут истрачены все имеющиеся у Пасти деньги.

Дано: R (р.) — общая денежная сумма;

— стоимости открыток для мальчиков и девочек.

Найти: КМ, kD — количество открыток для мальчиков и девочек соответственно. связь:

МетоД: Будем перебирать значения КМ от 0 (наименьшее количество открыток; все деньги тратятся на открытки для девочек) до (наибольшее количество открыток; все деньги тратятся на покупку открыток для мальчиков). Тогда kD= (R-M*kM) /D. Если Ю) — целое число, получен вариант покупки.


Так как Настя на сумму R может не купить ни одной открытки, введем логическую переменную Yes, которой присвоим значение True, если птупка возможна.

Получим программу:

Program New Year;

Var КМ: Inteqer;

КО: Rea1,•

Yes: Воо№еап;

Beqin

Write ( ' Всего денег= ' ) ; Read1n ( R ) ;

Write1n ( ' стоимости открыток: ' ) ;

Write ( ' для мальчиков ' ) ; Read1n (М) ; Write ( ' для девочек ' ) ; Read1n ( D ) ;

For то R div М do

Begin

: = (R-M*kM) /D;

If kD=Trunc (kD) Тћеп

Begin

If Yes=Fa1se Then

Write1n ( ' Покупка невозможна ' ) ; End. *

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

Пусть Х — заданное число. Трехзначное число С удовлетворяет условию 999.

Будем перебирать все числа, удовлетворяющие этому условию, т. е. искать сумму т + s, где т младшая цифра, равная остатку от деления С на 10,  — старшая цифра, равная целой части от деления С на 100. Если т + s = Х, выведем число С на экран.

Логическая переменная Yes предназначена для отслеживания случая отсутствия искомых чисел.

Получим программу:

Program З;


     Var С,           : Integer;

Yes: Воо1еап;

Begin

Write ( ' Заданное число=' ) Read1n (Х) ;

For с то 999 до

Begin т:=С mod 10; s:=C div 100; If m+s=X Then

Begin

Yes Write1n (С) ,

End;

End;

If Yes=Fa1se Then

Write1n ( ' Таких чисел нет ' ) ,

End .


Program Tab1ica;

Var х, у: byte;

Begin

                For х           to 9 do

{ 1—й сомножитель }

Begin

For у:=1 to 9 do вложенныйвнешний

{ 2—й сомножитель }

циклцикл

Write (х * у: З) ;

{вывод х*у}


Write1n;

Лк переход на новую строку} End; End.

 

2

з

4

5

6

7

8

9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 3.36

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

Будем рассматривать искомые числа в виде совокупности цифр ab и, перебирая их различные возможные значения, формировать число х = 10a + Ь, а также сумму цифр S = а + Ь. Количество искомых чисел обозначим К.

фафическое представление алгоритма решения задачи показано в виде блок-схемы на рисунке 3.37. Получим программу:

Program Liki;

Var  Byte;

К: Integer;

Begin

старшая цифра,

Ь — младшая цифра }

For а:=1 to 9 do

               For Ь             to 9 do


Begin

двузначное число }

сумма цифр числа }

                     If х mod              then

Begin

{ если число х делится на сумму цифр, считаем его }

{и выводим на экран }

Write (х, '

End,•

End;

{перевод курсора на новую строку)

Write1n;

{ вывод общего количества ЧИСеЛ} Write1n ( ' Всего чисел:

End.                                                                                                                                  Рис. 3.37

* Пример 5. Написать программу решения задачи: «Хозяйство должно разлить весь собранный березовый сок в банки объемом З л, 5 л, 10 л. Определить, можно ли это сделать и сколько банок каждого вида понадобится (считать, что количество банок неограниченно). Получить вариант разлива с наименьшим количеством использованных банок».

                    Дано: (л)         объем собранного сока.

                          Найти: а, Ь, с                количество банок соответственно объемом З л, 5 л, 10 л.

  За + +   = L, Связь:

а + Ь + с min.

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

при: L       целое число. МетоД:

1 . Для получения варианта разлива сока в десятилитровые банки будем перебирать значения переменной z от минимального 0 до максимального Оста нутся не разлитыми P=L — 10z (л) сока, которые сле№т разлить в банки объемом 5 л; для этого будем перебирать значения переменной у от 0 до 5

банки останется х = Р — 5у (л) сока. Пусть t = х Если разлива в трехлитровые

t — целое число, одно из решений задачи получено; его можно вывести на экран компьютера. Факт получения решения будем фиксировать логической переменной Yes, которой присвоим значение True. По значению Yes при завершении работы программы будем судить, требуется ли вывести сообщение «Разлив невозможен».

2. Для получения наилучшего варианта разлива будем сравнивать общее количество использованных банок К = t + ц + z со значением некоторой переменной mif1. Эту переменную будем использовать для хранения наименьшего значения суммы: 171in= К, если справедливо неравенство: К< тЈп. Одновременно запомним в переменных а, Ь, с соответствующие значения t, у, 2. Первоначально будем полагать значение min равным достаточно большому целому числу (MaxInt).

Получим слещтощую программу:

Program Ras1iv;

Var  1nteger; х З : Rea1;

Yes: Воо1еап;

Begin

Write ( ' Всего сока=' )

Read1n (Ь) ;

            For                То Р div 5 do

Begin х:=Р—5*у; х З :=х/З; (х З) ,

If x3=t Then

Begin

Yes :=True;

INrite1n (t

К: =t+y+z;

1f k<min Then

Begin min :=К;

Ь:=у; c:=z;

End;

End,•

End,•

End; Write1n;


If Yes=Fa1se Then

Write1n ( ' Разлив невозможен ' )

E1se INrite1n (а, ' , ' , Ь,

End. *

1. Что такое «условный оператор» и как он применяется?

2. В каких случаях желательно использовать цикл For? While?

Упражнения

1. Напишите программу проверки, является ли четной первая цифра заданного натурального числа.

* 2. Напишите программу, проверяющю, хорошо ли пользователь умеет складывать в уме числа. Программа должна 10 раз запросить два числа (слагаемых); вывести их на экран; предложить ввести сумму этих чисел; проверить, правильна ли эта сумма; вывести на экран компьютера соответствующее сообщение («Правильно», «Неправильно»); вывести количество правильных и неправильных ответов.

З. Напишите программу, которая среди двузначных чисел найдет все числа, делящиеся на число, вводимое с клавиатуры.

4. Пусть натуральное число является «счастливым», если оно делится на 7. По лучите на заданном числовом промежутке [А; В] все «счастливые» натуральные числа (значения А и В вводятся с клавиатуры).

Ч. Известны результаты соревнования по прыжкам в высоту п учеников. Найдите самый лучший результат.

ё 17. Использование алгоритмических структур в графике   

17.1. Графические построения

При построении графических изображений мы использовали только одну из известных нам алгоритмических структур — СЛЕДОВАНИЕ. Освоение других структур позволяет использовать их для получения сложных графических изображений.

Рассматривая некоторое изображение в виде совокупности одноименных объектов (точек, отрезков и т. д. ), можно прийти к пониманию возможности использова ния алгоритмической структуры ПОВТОРЕНИЕ для получения всего изображения. Пример 1 . Написать программу получения изображения горизонтального отрезка с началом в точке (0, 240).


Будем рассматривать отрезок как совокупность точек и использовать для получения его изображения процещру PutPixe1. Поместим ее в тело цикла с параметром For. Таким образом, получим изображение 640 точек с координатами (К, 240) при К = 0, 1, 2, З, 639; в результате соседние пиксели сольются в горизонтальный отрезок.

Получим следующую программу:

Program РИТ LINE;

Uses Graph;

Var а, Ь, К: Integer;

Begin         о        100   500   639 a:=Detect; InitGraph (а, Ь,       50

90

{ горизонтальная прямая

                For              То 639 do

PutPixe1 (К, 240, 14) ;

{14 — желтый цвет} 290 • Read1n; C10seGraph;

End.

Пример 2. Написать программу полу-

479 чения изображения семи параллельных отрезков равной длины (рис. 3.38). Рис. 3.38


Требуемое изображение можно рассматривать как совокупность отрезков. Концы отрезков: (100, у), (500, у), где у = 50, 90, 290, значение у изменяется с шагом 40. Таким образом, можно организовать цикл Whi1e с условием выполнения цикла у 290. В цикле будем использовать процедуру вывода отрезка прямой и оператор изменения значения у на 40 (величину шага). Эта идея реализована в программе LINE7 1.

Program LINE7 1;

Uses Graph;

Var а, Ь, у: 1nteger;

Begin а : =Detect; InitGraph (а, Ь,

Whi1e у<=29О Do

Begin

Line (100, у, 500, у) ;

End;


Read1n; C10seGraph; End.

При решении этой задачи можно также использовать цикл с параметром For, где параметр цикла (например, переменная К) указывает количество полученных изображений отрезка: К = 1, 2 7. Тело цикла имеет такой же вид, как и в про грамме LINE7 1. Данная идея реализована в программе LINE7 2.

Proqram LINE7 2;

Uses Graph;

Var а, Ь, К, у: 1nteger;

Begin a:=Detect; InitGraph (а, Ь,

For К :=1 €0 7 do

Begin

Line (100, у, 500, у) ;

End;

Read1n; C10seGraph; End.

Использование счетчика случайных чисел позволяет получать случайно расположенные на экране изображения. Покажем это на примере.

Пример З. Составить программу вывода на экран заданного количества случайно расположенных точек. Программа должна:

1 ) предложить ввести количество требуемых точек (N);

2) случайным образом сформировать координаты точки 0 х 639, 479 и цвет точки 15;

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

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

Программа на языке Паскаль может выглядеть следующим образом:

Proqram STARS; {Звездное небо}

Uses Crt, Graph;

Var

Begin

C1rScr;


Write ( ' Количество точек=' ) ;

Read1n (Н) ; Randomi ze ; a:=Detect; InitGraph (а, Ь, ” For   то      do

Begin

(640) ; (480) ;

(15) +1; PutPixe1 (х, у, С) ;

De1ay (1000) ;

End;

Read1n; C10seGraph; End.

Пример 4. Написать программу закраски прямоугольника различными цветами: смена цвета должна осуществляться после нажатия клавиши El]ter.

Пример основан на ВЫПОЛНеНИИ многократных действий: получение изображения прямоугольника, заполненного некоторым цветом.

Пусть i номер цвета заполнения; l, 2, 15. Таким образом, уместно использование цикла For. В цикле следует задать стиль заполнения области ( 1 — СПЛОШНОЙ текущий цвет) и изобразить закрашенный прямоугольник, например, с диагональными точками (220, 200), (450, 300).

Получим программу:

Program BAR_16;

Uses Graph;

      Var              Integer;

Begin а : =Detect; InitGraph (а, Ь

        For              То 15 do

Begin

SetFi11Sty1e (1, 1) ; Bar (220, 200, 450, 300) ;

Read1n;

End;

C10seGraph;

End.


Возможность выбора того или иного изображения для построения, представленная в алгоритме (и соответственно в программе) в виде некоторой вариативности, обеспечивается использованием алгоритмической структуры ВЕТВЛЕНИЕ.

Пример 5. Написать программу, которая по желанию пользователя выведет на экран изображение треугольника или прямоугольника.

Пусть Р — переменная, по значению которой пользователь будет принимать решение о выводе требуемого изображения: треугольника (при Р = 1) или пря- моугольиика (при Р *

Будем получать изображение треугольника с вершинами в точках (240, 70), (400, 370), (180, 300) и изображение пря-

МОУГОЛЬНИКа с вершинами в диагональных 0 180 240 з о 400 480 639 точках (240, 70) и (480, 300) (рис. 3.39).

На языке Паскаль получим такую программу:

Program TRE PR;

Uses Graph;

Var а, Ь: Integer;P: Byte;

Begin

Write1n ( ' Сделайте выбор:479

        Write1n ( ' 1                     треугольникРис. 3.39

Write1n прямоугольник ' ) , Read1n (Р) ; а : =Detect;

1nitGraph (а,

1f Р=1 1'hen

Begin

Line (240, 70, 400, 370') ;

Line (400, 370, 180, 300) ;

Line (180, 300, 240, 70) ;

End

E1se Rectang1e (240, 70, 480, 300) ; Read1n; C10seGraph; End.

Упражнения

1.      Напишите программы получения изображений:

а) десяти параллельных вертикальных отрезков одинаковой длины;


* б) случайного количества случайно расположенных окружностей (треугольников, отрезков).

2.      Напишите программу закраски произвольного треугольника различными цветами (смена цвета должна осуществляться после нажатия клавиши Enter).

*З. Напишите программу, которая по желанию пользователя выведет на экран изображение треугольника (равнобедренного, равностороннего или разностороннего), квадрата, прямоугольника, параллелограмма или ромба.

1 7.2. Программирование движущихся объектов

Рассмотрим два способа решения задач моделирования движений средствами языка программирования:

1.    «Нарисуй сотри — и нарисуй в новом месте». Этот способ реализовать легко: нужно организовать цикл, задав координаты для перемещения объекта в требуемом направлении; в теле цикла нужно предусмотреть очистку экрана, изображение объекта в новом месте и приостановку выполнения программы.

2.    «Нарисуй закрась цветом фона и нарисуй в новом месте». Здесь объект прорисовывается на старом месте дважды: вначале требуемым цветом, а затем цветом фона.


TIpHMep l . HanucaTb ruporpaMMY nepeMe1ueHHfl KpacHoro KBaAparra 110 qepH0MY


9KpaHY CJ1eBa HanpaB0.

Cnocoõ 1

Program DVIG 1;

Uses Crt, Graph;

Var a, b, x: Integer;

Begin a : =Detect;

InitGraph (a, b

For x:=0 to 639 do

Begin

Set Fill Style (1, 4) ;

Bar (x,

Delay (1000) ;

ClearDevice;

End;

Readln;

CloseGraph; End.

Cnocoó 2

Program DVIG 2;

Uses Crt, Graph;

Var a, b, x: Integer;

Begin a : =Detect;

InitGraph (a, b,

      For x    to 639 do

Begin


Set Fill Style (1, 4) ;

Bar (x, 200, x+10,210) ;

Delay (1000) ;

 Set Fill Style (l, 0) ;

Bar (x,

End;

Read In; CloseGraph; End.

{ RpacHb1ñ }

{ or-ll.,1cTKa 9KpaHa }

{ Rpa CHb11h }

{ qepHb1ÿ1 }


*Если завершение перемещения объекта нужно связать с действиями пользователя (например, с нажатием на клавишу), удобно использовать функцию keyPressed мощля Crt. Функция возвращает значение TRUE, если нажата какая-либо клавиша: Whi1e пое keyPressed Do ...; (пока не нажата клавиша, делать ...).

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

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

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

Программа на языке Паскаль может выглядеть следующим образом:

Program PADENIE;


               Uses Crt, Graph;    

Const R=10; х=З20;

Var а, Ь, у, dy: Integer;

Begin а : =Detect ; InitGraph (а, Ь,

Whi1e not keyPressed do

                 Begin          

                SetFi11Sty1e (1, 4 ) ;         { красный }

PieS1ice (х, у, 0, 360, R ) •

De1ay (100) ;

SetFi11Sty1e (1, 0) ;    { черный } PieS1ice  ; у: =y +d y;

                        If (у=64 0— R ) or            R ) Then dy

End;

                      C10seGraph;

End. *

Упражнения

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

2.               Примените наиболее понятный Вам метод для моделирования:

а) горизонтального перемещения отрезка;

б) вертикального падения ТСНПИСНОГО мячика.

* 17.3. Решение практических задач, Деловая графика

С целью автоматизации построения различных видов графиков и диаграмм, которые представляют интерес для коммерческих пользователей, разрабатываются системы деловой графики, представляющие собой технологию создания изображений с сопровождающим их текстом. Программы деловой графики могут входить в интегрированные программные пакеты (например, в Microsoft Excel), а могут использоваться и самостоятельно (PowerPoint, пакет «Галактика»).


Рассмотрим примеры решения практических задач с использованием графи- ЧеСКИХ возможностей языка программирования Паскаль.

Пример 1 . Магазин канцелярских товаров за день продал известное количество тетрадей, карандашей и ручек. Построить круговую диаграмму, позволяющую определить, какой товар пользовался в течение дня наибольшим спросом. пусть Т, К, R количество проданных тетрадей, карандашей и ручек соответственно. Суммарное количество проданных товаров составляст S = Т + R + R единиц товара. Тогда на круге, который составляет 360 гра-

360 дусов, па одну единицу товара приходится g — S градусов, на проданные тетради КУТ = g*T градусов, па карандаши  градусов, на ручКИ остальные. Таким образом, для построения диаграммы нужно разбить круг па три сектора в соответствии с произведенными расчетами. Rо радиус окружности, на которой будем выполнять построения.

Получим следующую программу:

Proqram MAGAZIN,•

Uses Crt, Graph;

       Const Ro=100 ;                                                    {радиус окружности}

Var а, ь, Т, КД, S , gT, gk: Integer;

Begin

C1rScr; GotoXY (35, 5) ;

Write1n ( ' сколько продано тетрадей, карандашей, РУчек? ' ) •

GotoXY (45, 6 ) ; Read1n (Т, КД) ;

a:=Detect; InitGraph (а, Ь, ' SetFi11Sty1e (1, 14) ;{ желтый }

PieS1ice (300, 200, О, ,

Bar (450, 150, 500, 200) ;

0utTextXY (510, 170, ' тетради ' ) ;

             SetFi11Sty1e (1, 2) ;                            { зеленый }

PieS1ice (300, 200, gT, gT+gk, Ro) ;

Ваш- (450,  ;

0utTextXY (510, 250, ' карандаши ' ) ,

             SetFi11Sty1e (1, 4) ;                            { красный }

PieS1ice (300, 200, gT+gk, 360, Ro) ; (450, 310, 500, 360) ;


0utTextXY (510, 330, ' ручки ' ) ; Read1n; C10seGraph;

End.

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

При начислении простых процентов будем пользоваться формулой Sn = Sn + S Р

а при начислении сложных процентов - формулой sn = sn l  100)

р

           где So      первоначальная сумма, р — ежемесячная процентная ставка.

Будем изображать результаты расчетов в виде столбчатых диаграмм прямоугольников (для простых процентов желтого цвета, а для сложных зеленого цвета). В программе будем использовать одинаковую процентную ставку Р 0/0 по каждому виду вклада и проследим перспективу роста вклада на один год (12 месяцев).

Программа будет такой:

Program Pribi1;

Uses Crt, Graph;

     Const К=12;                                  {12 месяцев}

Р=ЗО;

Var S, SO, Sk: Rea1;

1nteger;

Beqin

C1rScr; GotoXY (10, 3) ;

Write ( ' Начальная сумма

GotoXY (40, 3) ;

Read1n (М) ;

1 f

{ масштаб }


a:=Detect; InitGraph (а, Ь, C1earDevice ;

         For т:=1 to К do                      {т—номер месяца}

Begin

        SetFi11Sty1e (1, 14) ;  { желтый }

Bar (h, 400—Round КБ) , h+10, 400) ; (1+P/100) ;

        SetFi11Sty1e (1, 2) ;    { зеле ный }

Bar (й, 400-Round (Х) , h+10, 400) ;


End;

ReadIn;

C10seGraph; End.

Па рисунке 3.40 приводятся результаты работы программы Pribi1 для

000 000 р.

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

Пример З. Написать программу построения графика функции у = ах + Ь. Решение этой задачи распадается на следующие этапы:

          получение изображения системы координат на экране (рис. 3.41 );             выбор на осях единиц масштаба и градуирование осей с указанием предельных (наибольшего и наименьшего) значений аргумента и результата;    вычисление значений функции у на отрезке [хmin' • х тах] и получение координат точек графика (х, у); преобразование точек графика (х, у) в систему координат экрана (х1,   вывод точек графика на экран.

Этап 1. 1) Пусть точка экрана (320, 240) соответствует началу системы координат. Тогда для получения изображения оси абсцисс достаточно провести отрезок через точки (О, 240) и (639, 240), оси ординат через точки (320, О) и (320, 479).


2) Укажем направление оси абсцисс ОХ путем соединения точки (639, 240) и точек (635, 235) и (635, 245); направление оси ординат ОУ укажем, соединив точку (320, 0) с точками (315, 5) и (325, 5).

З) Укажем начало координат путем вывода текста «О» в точку (300, 250) подпишем оси координат: «Х» в точке (625, 225) и «У» в точке (330, 5).

Этап 2. Выберем масштаб по оси ОХ равным восьми точкам (пикселям) экрана. Так как общее количество точек экрана по оси ОХ равно 640, то мы можем пометить на этой оси 80 точек: будем делать это с помощью вертикальных отрезков длиной 4 пикселя. Предельные значения аргумента обозначим путем


 

 

о

х

Х

вывода на экран текста: «—39» возле крайней точки слева вдоль оси ОХ и «39» — возле крайней точки справа. Таким образом х -39, - 39.

Масштаб по оси ОУ примем равным шести пикселям. Пометим 80 точек на этой оси горизонтальными отрезками длиной 6 пикселей. Выделим путем вывода текста «—39» и «39» граничные точки, соответствующие наименьшему и наибольшему значениям функции в об-

                                           Рис. 3.41                                      мСТИ экрана.

Этап З. Будем перебирать значения аргумента от —39 до 39 с шагом 0,1, вычислять значения функции             ах,2 + Ь.

Этап 4. Полученные координаты точки графика функции (Ь, И) слещет преобразовать в координаты точки (Ч, щ) относительно координат экрана, смещая значения и относительно начала координат (320, 240) с учетом масштаба по каждой оси:

При реализации описанного алгоритма на языке Паскаль следует выполнить правильный выбор типов данных. Так, например, переменные х2, — вещественного типа, х 1 , у 1 целого типа. Получим программу:

Program LINE АХВ,•

Uses Graph;

Var  Integer; х 2, у 2, а, Ь: Rea1;

BEGIN

Write1n ( ' Построение графика функции y=ax+b ' )


Write ( ' ) Read1n (а) ;

Write ( 'b=' ) Read1n (Ь) ; т : =Detect; InitGraph (т п

Line (0, 240, 639, 240) ;

[Ось  

 

Line (320, О, 320, 479) ;

{0сь 0У}

 

Line (639, 240, 635, 235) ;

{ Стрелка \ для

оси ОХ}

Line (639, 240, 635, 245) ;

(Стрелка / для

оси ох }

0utTextXY (625, 225, ' х ' )

{ Вывод текста     

Line (320, О, 315, 5) ;

{ Стрелка / для

оси ОУ}

Line (320, О, 325, 5) ;

{ Стрелка \ для

оси ОУ}

0utTextXY (330, 5, ' У ' )

{ Вывод текста

0utTextXY (300, 250,    

Вывод текста

{8 — масштаб по оси ОХ}

Whi1e    

{ Градуирование оси     

Begin

                   For Уто 2            Putpixe1 (Х, 240+У, 7) ;

Begin

For Х:=-З то з Do Putpixe1 (320+Х,У, 7) ;

End;

{ Вывод по оси ОХ предельных значений аргумента }

0utTextXY (8, 250, ' -39 ' ) ;

OutTextXY (620, 250, ' 39 ' ) ;

{ вывод по оси ОУ предель ных значений функции

0utTextXY (290, 470, ' -39 ' ) ; 0utTextXY (295, 6, ' 39 ' ) ; х2 : =-39;

Whi1e  

{ (х 2, у2)

точка урафика

Begin

функции }

 

у2 :=a*x2+b; х1 .•-Round (х2*8+320) ;точка графика } у 1 :=Round (240—6*у2) , в системе координат}


Putpixe1 (х 1 , у 1 , 7) ;  { экрана } х 2 :=х2+0 . 1 ;

End;

Read1n;

C10seGraph; End.

В результате выполнения программы при а = —2, Ь = 7 получится слещющий график (рис. 3.42).

Упражнение

Семейный бюджет Даниила на октябрь составил Х р. Статьи расходов за месяц слещющие: К (р.) квартплата, Р (р.) питание членов семьи, U(p.) культурная программа, R (р.) прочие расходы. Неиспользованная сумма — лк (р.).

Изобразите расходы семьи в виде диаграммы:

а) круговой;

б) столбчатой.


* ё В. Подпрограммы пользователя


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

Вы уже знакомы с некоторыми стандартными подпрограммами языка Паскалы Существует возможность создания подпрограмм самим программистом. Такие подпрограммы называют подпрограммами пользователя.

1 8.1 . Описание подпрограмм пользователя

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


При первоначальном ознакомлении со структурой программы на языке Паскаль в S 9 было отмечено, что данная структура не является полной. Мы рке расширяли ее при изучении графических возможностей языка. И вновь дополнение: в конце описательной части даеТся описание используемых в программе подпрограмм пользователя. Уточненная структура программы на языке Паскаль с учетом описания подпрограмм пользователя имеет вид, показанный на рисунке 3.43. Подпрограммы пользователя бывают двух видов: процедуры и функции.

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

Имя процедуры — уникальный идентификатор.

Параметры-аргументы (их называют параметрами-значениями) описываются так: Аргумент тип ; . Их значения задаются на входе в процедуру.

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

Procedure PRIMA (Х:

Var P:Rea1;Var К: Integer) ;

подразумевается, что в процедуре используются два входных параметра (параметра-значения): Х целого типа и А вещественного типа; в результате выполнения процедуры бущт получены значения двух переменных (параметров-переменных): Р вещественного типа и К целого типа.


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

Procedure Имя процедуры;

Здесь формальные параметры отсутствуют. Например,

Procedure Print;

Begin

Write1n ( '

End;

Обращение к процедуре (вызов) осуществляется путем указания ее имени и списка фактических параметров:

Имя процедуры (список фактических параметров) ,

Фактические параметры это конкретные величины, подставляемые вместо формальных параметров.

Процедура вызывается как отдельный оператор.

При использовании процещры необходимо следовать определенным требованиям:

1.                 Количество фактических параметров должно совпадать с количеством формальных параметров в описании процедуры.

2.                 Порядок записи фактических параметров должен соответствовать порядку записи формальных параметров.

З. Типы фактических и формальных параметров-переменных должны совпадать. Типы фактических и формальных параметров-значений должны быть совместимыми.

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

Примеры обращения к процещре PRIMA:

PRIMA (100,

PRIMA (V, Ъ, (3, КОИ ;

S*S, FACT, Т) ;


PRIMA(N div 2, OPEL, RENAULT, MARkA) ;

Фактические параметры-значения V, должны быть описаны в программе как целые; L, S, 0PEL как целые или вещественные (Byte, Word, Integer, LongInt, Rea1); фактические параметры-переменные У, G, FACT, RENAULT как вещественные (Rea1); М, kOL, Т, МАМА — как целые (Integer).

Схема обращения к процещре PRIMA представлена на рисунке 3.45.

О Из основной программы в процедуру передаются значения параметровзначений и параметров-переменных. Например, при обращении PRIMA (100,

—1 . З, У, М) ; выполняется присваивание:  А :=—1 . З; Р:=У; К:=М;

(Э Выполняются операторы, входящие в состав тела процедуры (для нашего примера в процедуре формируются значения переменных Р, К).

Э Полученные значения параметров-результатов передаются в основную программу соответствующим переменным. В нашем случае выполняется присваивание: У:=Р; М:=К;

О Продолжается выполнение основной программы.

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


Var Y:Rea1; М: Inteqer;

Описание процедуры

Procedure PRIMA (Х: Inteqer; A:Rea1; Var P:Rea1; Var k:Integer) ;

-0

Begin

К : = . . . , end;

                                     ело о н с            т— О ГР аММЫ

Begin

О

End.

Рис. 3.45

Дано: Sl , Pl — площадь и периметр первого участка, S2 , Р2 — площадь и периметр второго участка. Найти: щ , bl — длины границ первого участка, , b2 — длины границ второго участка.


Связь: Для участка прямоугольной формы с площадью S и периметром Р числовые значения длин границ а и Ь определяются из системы

2

которая сводится к решению квадратного уравнения х 2 при: 4

Как видно, решение задачи сводится к двукратному вычислению корней квадратного уравнения. Входные данные: S, Р — площадь и периметр прямоугольника (вещественные числа). Так как в качестве результатов будут получены значения двух переменных (а, Ь — длины сторон прямоугольника, вещественные числа), возможно использование процещ'ры пользователя.

О 5. ЗаК. 170.

фафическое представление алгоритма решения задачи показано в виде блоксхемы на рисунке 3.46.

Программа будет такой:

Program OGRADA;

Var S1, Rea1 ;

У: Воо1еап;

{ Описание процедуры}


Procedure ST (S, P: Rea1; Var а, Ь:

Var У: Воо1еап) ,

Var d: Rea1;

Begin

If d>=0 Then

Begin d:=sqrt (d) ;

End;

{Основная программа }

Begin

Write ( ' S1 Р1=' ) ; Read1n (S1, P1) ; Write ( ' S2 Р2=' ) ; Read1n (S2, Р 2) ;

If Y=True Then Begin

If Y=True Then

Write1n (а 1 : 7 : 1 , End,• End.

Упражнение


Напишите программу определения наибольшего числа среди четырех заданных чисел.

1 8.3. Функции

Описание функций пользователя имеет вид, показанный на рисунке 3.47.

В заголовке функции формальные параметры могут отсутствовать.

Параметры-значения (аргументы) описываются так же, как и в процедуре: Аргумент : тип; . Их значения задаются на входе в функцию.

Результирующей переменной является идентификатор имя функции. Тип значения, присваиваемого идентификатору функции, называют типом функции (он указывается в конце заголовка функции после символа «:» )

Например, в заголовке функции

Function FUNC (Х: Integer; А: Rea1)   Integer; подразумевается, что в процедуре-функции используются два входных параметра (параметры-значения): Х целого типа и А вещественного типа; в результате ее выполнения будет получено значение переменной FUNC (параметр-переменная) целого типа. Само значение результата FUNC формируется в теле функции с помощью оператора присваивания.


Рис. 3.47

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

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

Примеры обращения к функции FUNC:

1 . 3 ) ;


(FUNC (v, Ы ) ;

(0, S*S) +FUNC (К, 2) ;

Write (FUNC (М div 2, 1nfo)

Переменные К, У, ГЫ должны быть описаны в программе как целые (Inteqer, Byte и др.), М, Р, L, S, 1пГо — как целые или вещественные. Схема ВЫПОЛНеНИЯ функции пользователя дана на рисунке 3.48.

О Из основной программы в функцию перелаются значения параметров-аргументов. Например, при обращении  (5, — 1.3); выполняется присваивание: х •.=5; А . З;

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

 Э Полученное значение параметра-результата передается в основную программу в вызывающее выражение (это значение передается переменной М). О Продолжается выполнение основћой программы.

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

Дано: а, Ь, с, d, е, Г, g —- длины границ участков.

Найти: S — суммарная площадь участков.

Связь: S = Sl + S2 + S3 , где Sl, S2, S3 — площади участков.

Как видно из рисунка, решение задачи сводится к вычислению площадей треугольников по формуле Герона. Имеет смысл вычисление площади оформить в виде подпрограммы пользователя. Входные данные для подпрограммы: х, у, z



длины сторон треугольника, результат

x+b.'+z Так как результатом выполнения под2 программы является единственное значение (площадь), относящееся к простому типу, будем использовать функцико пользователя.

фафическое представление алгоритма решения задачи показано в виде блок-схемы на рисунке 3.50. Рис. 3.49 Программа будет такой:

Program P10sha;

Var а, Ь, с, d, e, f, g,

Rea1 ;

Function РЕ (х, y, z : Rea1) : Var Р: Rea1;

Begin

Р:= (x+y+z) / 2;

PL:=sqrt (Р* (2—х) * (Р— End;

Begin

Write1n

( ' Введите длины границ участков ' ) , Read1n (а, Ь, с, d, е, f, g) ;

Ь, f) +PL (f, с, з)

134

 

Глава З. Основы программирования

 

S : =S1+S2+S3;

Write1n ( S : 0 :2) ; End.

Упражнение

Напишите программы решения С.ЛЏУОЩИХ задач: а) случайным образом задаются координаты трех точек на плоскости. Требуется определить: образуют ли они треугольник, и если образуют, то его тип (равнобедренный, равносторонний, разносторонний);   Рис. 3.50

б) для заданных вещественных чисел х и у необходимо вычислить тах(х, у) + тах(х + у, х — у), где тах(а, Ь) наибольшее значение чисел

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


ё 19. Системы управления базами данных

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

Из курса информатики вам уже известны эти понятия.

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

Под системой управления базами данных (СУБД) понимается совокупность программных и языковых средств, предназначенных для создания и обработки баз данных.

СУБД и БД применяются во всех сферах деятельности человека для обработки и хранения информации.


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

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

В современных поликлиниках и больницах используются СУБД для создания и обработки баз данных, описывающих истории болезней пациентов, результаты проведенных исследований состояния их здоровья.

В настоящее время разработано около сотни разных СУБД.

Нам предстоит познакомиться с возможностями СУБД Access, которая предназначена для работы с реляционной моделью организации данных (от английского relation — отношение). В реляционной модели данные организованы в виде совокупности таблиц, между которыми устанавливаются связи. Назначение таких связей и порядок их задания мы рассмотрим в дальнейшем в S 22.

Реляционная модель баз данных была предложена в конце 60-х годов ХХ в. Эдгаром Коддом.

Первая версия СУБД Access была создана в начале 90-х годов ХХ в.

Каждая таблица состоит из записей и полей, например таблица «Товар» базы данных «Магазин» (рис. 4.1

 Запись представляет собой строку таблицы базы данных, а поле это столбец такой таблицы.

Для описания поля используются следующие характеристики: имя, тип, размер, формат данных поля.

В таблице «Товар» представлены шесть полей и пять записей. Каждое поле имеет свое имя, в нем хранятся данные определенного типа.

Поле Количество содержит числовые данные.

Поля Группа товара и Наименование товара являются текстовыми дан-

ными.


Поле Цена является денежным типом данных и содержит цену товара в белорусских рублях.

Поле Дата поступления содержит информацию о дате поступления товара в магазин.

Поле Остаток является логическим типом данных и принимает значение Да (Истина), если товар присутствует на складе магазина, Нет (Ложь) товар не присутствует.

Более полное описание типов полей рассмотрим в S 21.

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

1.    Что называют базами данных?

2.    Какие системы называют системами управления базами данных?

з. Что называют записью и полем в таблице базы данных?

4. Как описывается поле в таблице базы данных?

                                              20. Основные элементы инте ейса СУБ Access                                         137

ё 20. Основные элементы интерфейса СУБД Access

СУБД Access после ее установки может загружаться с Рабочего стола двойным щелчком левой клавишей мыши по ярлыку или через систему меню: кнопка Пуск —» Программы Microsoft office Microsoft Access.

После запуска СУБД Access откроем базу данных. Для этого выполним цепочку команд: Файл Открыть в окне Открытие файла базы данных укажем файл базы данных, например Магазин.тс№ Открыть. Основные элементы интерфейса окна показаны на рисунке 4.2.

На панели Стандартная размещаются основные инструменты, используемые при работе с базой данных. Часть инструментов этой панели аналогична панели Стандартная текстового редактора Word, а вторая часть предназначена для работы с базой данных. Применение этих инструментов мы рассмотрим в дальнейшем.

В окне База данных расположены ее объекты: Таблицы, Запросы, Формы, Отчеты и др. Все эти объекты, если они создавались, хранятся в общем файле базы данных на диске с расширением .mdb. При работе с каждым из объектов они имеют свое окно, как показано на рисунке 4.2.

Панель Стандартная


—рщор

                                                                  загроса в режае                                                                         _уфлн

мастера

12,02Т7

Окно Форма

Объекты базы данных

            На1ИёКђ%НЊтава                                                                                       ТАТ

121 зозхо

            Сапоги женские                                                                                            \фоствм мутие                75 оо№.                     Окно Отчет

Туфли женские

                                   Окно Запрос          сати                госр,

Рис. 4.2

                 Рассмотрим назначение каждого объекта.          

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

Запросы предоставляют возможность отобрать данные из таблиц на основании определенных условий.

Формы отображают данные из таблиц или запросов. С помощью форм удобно вводить данные в таблицы.

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

1.    Как загрузить СУБД Access и открыть готовую базу данных?

2.    Перечислите основные элементы интерфейса СУБД.

З. Какие объекты присутствуют в окне База данных?

138

 

Глава 4. Технология обработки информации в СУБД

4. для чего предназначен объект Таблица?

ё , Создание таблицы базы данных

21 .1 . Проектирование баз денных

Изучение возможностей СУБД Access начнем с проектирования базы данных. Таблица является основным объектом базы данных. База данных может содержать одну или несколько связанных таблиц в зависимости от требований, предъявляемых разработчиком. На основании таблиц создаются остальные объекты базы данных.

Пример. Необходимо спроектировать базу данных «Библиотека дисков» (файл Library_disk.mdb), содержащую сведения об использовании СГ) и DVD дисков из личной библиотеки пользователя.

Основной задачей использования базы данных «Библиотека дисков» является отслеживание выдачи дисков всем желающим клиентам.

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

Имя поля

Тип данных

 

Фамилия

Текстовый

Сведения о клиентах

Имя

Текстовый

Адрес

Текстовый

Телефон

Текстовый

Электронная почта

Текстовый

Название диска

Текстовый

Сведения о дисках

Тип диска

Текстовый

Стоимость диска

Денежный

Дата выдачи

Дата/время

Сведения о выдаче дисков

Отметка о возврате

Логический

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

Для повышения эффективности при работе с создаваемой базой данных необходимо выполнить процесс нормализации.


Для этого разделим одну таблицу на три: «Клиенты», «Диски», «Выдача дисков».

            Опишем структуру каждой таблицы.                                                  Таблица «Клиенты»

Имя поля

Тип данных

Имя поля

Тип данных

Код клиента

Счетчик

Адрес

Текстовый

Фамилия

Текстовый

Телефон

Текстовый

Имя

Текстовый

Электронная почта

Текстовый

Таблица «Д,иски»

Имя поля

Тип данных

Имя поля

Тип данных

Код диска

Счетчик

Тип диска

Текстовый

Названиедиска

Текстовый

Стоимость диска

Денежный

Таблица «Выдача дисков»

Имя поля

Тип данных

Имя поля

Тип данных

Код выдачи

Счетчик

Дата выдачи

Дата/время

Код клиента

Числовой

Отметка о возврате

Логический

Код диска

Числовой

 

 

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

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


Поля Код клиента, Код Диска в дальнейшем будут использованы для установки связей между таблицами, которые мы рассмотрим позже в S 22.

Перед началом создания таблиц необходимо с помощью цепочки команд в СУБД Access создать новую базу данных: Файл Создать Новая база данных в окне Файл новой базы данных указать имя файла базы, например Library disk Открыть.

Создание таблицы логически разделяется на два этапа:

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

 СУБД Access позволяет создавать структуру таблицы тремя способами в режиме Конструктора, Мастера или Таблицы (путем ввода данных) (рис. 4.3).

Рассмотрим работу режимов Мастер и Конструктор. В режиме Таблицы ввод данных производится в пустую таблипу.

 

маа

 

 

 

• ОЕКрыть К КонструкторА3Создатц Х

 

 

Объекты

Создание таблицы в режиме конструктор

Создание таблицы с помощью мастера Создание таблицы путем ввода данных

 

Рис. 4.3

21 Е, Создание структуры таблицы в режиме Мастера

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

Пример. Создать в режиме Мастера структуру таблицы «Клиенты». Для выполнения этого задания необходимо:

1.    Выбрать объект Таблицы в окне База данных и щелкнуть два раза левой клавишей мыши по тексту Создание таблицы с помощью мастера.

2.    Выбрать образец таблицы «Клиенты», образцы полей перенести с помощью стрелок из окна Образцы полей в окно Поля новой таблицы, как показано на рисунке 4.4. Имя перенесенного поля может быть изменено с помощью кнопки Переименовать поле

Создание таблиц выберите образцы таблиц для применения при создании смственной таблицы

S 21. Создание таблицы базы данных

 

141

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

Эдедовые

 

Пбразцы полей{

Доля новой таблщы:

ОЛизные

 

, АдресВыг-тввпенияСч

КодКлиента Пая

офазцы таблиц:

 

Город

Фамилия

 

 

ОбластьКрайРеспублу

Адрес

Слисок рассылки

Почтовыйиндекс

Телефон

Контакты

 

страна$регион

?Эпект онндя почта

Клиенты

 

ДолжностьПолучател

 

Сотрудники

 

НомерТелефона

 

Товары

 

внутренний

 

Заказы

 

 

Переименовать поле...

рис. 4.4

З. Щелкнуть левой клавишей мыши по кнопке Далее —» задать имя таблицы, например «Клиенты», и установить флажок Пользователь определяет ключ самостоятельно выбрать поле с уникальными для каждой записи данными, для нашего примера это КодКлиента Готово. В результате откроется окно сформированной таблицы «Клиенты», которую можно заполнять информацией (рис. 4.5).

НТн : таб;шџа

                              КодКлиента                                                     Адрес          Телефоњ

СчетчИК“

Рис. 4.5

Е Клиенты : таблица

 

 

 

 

 

ПОЛЯ

Лип данных

 

мя

Счетчик

Текстовый

 

МИЛИЯ

Текстовый

 

Текстовый

Ключевое поле

 

Текстовый Текстовый

Созданная Мастером структура таблицы «Клиенты» представлена на рисунке 4.6.

Желательно, чтобы каждая таблица имела ключ одно или несколько полей, содержимое которых уникально для каждой записи. В случае отсутствия ключевого поля затрудняется поиск записей в таблице, Рис. 4.6 так как в ней могут встречаться клиенты с одинаковыми фамилиями, адресами и даже телефонными номерами. Для таблицы «Клиенты» таким полем является КодКлиента. Тип данных этого поля Счетчик. В нашей таблице каждый клиент будет иметь уникальный номер, и никакие две записи в этой таблице не будут одинаковыми.

Мастер определяет тип данных полей самостоятельно в зависимости от названия без предварительного определения этих типов пользователем. В дальнейшем в режиме Конструктора тип поля может быть изменен.

21 З. Создание структуры таблицы в режиме Конструктора


142

 

Глава 4. Технология обработки информации в СУБД

Е ДИСКИ : таблица

 

 

 

 

 

Иня поля-

Тйп даНных-

 

Ко иска                                             Счетчик

Название иска                 Текстовый

Тип диска                        текстовый

Стоимость диска

 

 

 

Текстовый

Свой:тва по поле МЕМО

 

 

 

 

ЧИСЛОВОЙ ата в емя

Общие

Формат поля

Число десятичных

Маска ввода

Подпись

Значение по

Условие на

Подстано знаков

умолчанию значение

Счетчик

Логический Поле объекта 0L гиперссылка Мастер подста

сообщение об ошибке Обязательнее поле .

Индексированное поле

Смарт-теги

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

Пример. Создать с помощью Конструктора таблику «Диски» , которая должна содержать четыре поля, для каждого поля требуется ввести имя, тип данных и в нижней части окна определить свойства поля, как показано на рисунке 4.7.

При вводе типов данных и свойств полей пользователю необходимо использовать раскрывающиеся списки (см. рис. 4.7).

В таблице «Диски» ключевым полем является Код диска. Чтобы это поле ста- Рис. 4.7


S 21 . Создание

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

СУБД Access допускает использование различных типов данных. Основные типы данных и их описание приведены в следующей таблице.

Тип данных

Описание типа данных

Числовой

Содержит произвольные числовые значения

Текстовый

Текстовые, числовые данные, не требующие вычислений. Длина поля не превосходит 255 символов

поле МЕМО

Текстовые данные большого объема. Длина поля не превосходит 65 535 символов

Дата/время

Представление даты и времени в различных форматах

Денежный

Числовые денежные значения

ЛОГИЧеСКИЙ

Логические значения

Птерссылка

Ссылка на некоторый документ или файл

Объект 0LE

Документы различных типов, подготовленные в Word, Excel, точечные рисунки и др.

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

После завершения описания таблицы она сохраняется с помощью цепочки команд: Файл Сохранить как —» указать имя таблицы, например Диски ок. Созданные в Мастере таблица «Клиенты» и в Конструкторе таблица «Диски» добавляются в окно Базы данных.

А. Ввод и редактирование данных в таблице       

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

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

144

 

Глава 4.Технология обработки информации в СУБД

 

Клиенты : таблица

 

 

 

 

 

 

 

 

 

 

 

 

 

*тећёфан

 

ЭЈте1бронная• ПОЧТЕ

 

 

 

Т: Сидоров

3' Титов

4 Смирнов

5 Иванов

С ЧЕТЫ И

: Вася           ул . Плеханова, д. 20           2954321

Валя л. Васнецова, д.З, кв.89 2961736 Алексей ; ул . Жилуновича, д.б 2474331 Александр ул. Ванеева, д.б, кв. 5 2912345

Павел        * УЛ. Кошевого, д. 13, кв.5  2916754

Sidor@tut.by sim@mail.ru lTitov@tut.by imal@tut.by

 

 

 

 

 

 

 

Рис. 4.8

рованию аналогичны заполнению и редактированию данных в таблице текстового редактора Word (рис. 4.8).

Ж

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

одновременно их необходимо вначале выделить, а затем выполнить последовательность действий, описанных выше.

Добавление записей в таблрщ осуществляется в режиме Таблица. При этом новая запись добавляется в конец таблицы.

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

1.    Как создать структуру таблицы в режиме Мастера?

2.    Можно -ли изменить имя поля в режиме Мастера?

З. Как создать структуру таблицы в режиме Конструктора?

4.     Что понимается под ключевым полем в таблице? для чего применяется ключевое поле?

5.     Какие типы данных допускается использовать в СУБД Access?

6.     Как записи добавляются в таблицу и удаляются из нее?

Упражнения

1 . Создайте однотабличную базу

Страны 2002 : таблица

 

данных «Страны», которая со-

 

Тт: данњк

 

держит таблицу «Страны 2002».

Ст ана

_.Дещ№ьй

 

Для этого:

Столи а

Текстовьй

 

 

Население

Числовой

 

а) Опишите структуру таблицы

Пло а ь кв км

ЧИСЛОВОЙ

 

(рис. 4.9).

язык

Текстовый

 

б) Введите в таблицу данные

Часть света

Текстхьй

 

(рис. 4.10).

 

Рис. 4 9

 

 

                                                                  21. Соз ание               ы

 

 

страны 2002 : таблица

 

 

*НаселеАие:

 

частьђевега-

 

Австралия           Канберра

19500000

7687000 Английский

1 Австралия и Океания

 

Австрия              Вена

8100000

83800 Немецкий

Европа

 

Алжир                           Алжир

31400000

2382000 Арабский

А руч.,___

 

Аргентина          Буэнос-Айрес

37900000

2767000 Испанский

Южная Амерща_

 

Беларусь             Минск

9900000

207600 Белорусский, русский

Евррра

 

Бразилия             Бразилия

174700000

8512000 Португальский

Южная Амерщ?__

 

Великобритания Лондон

59700000

244100 Английский

 

 

Вьетнам             Ханой

80200000

329600 Вьетнамский

Азия

 

Египет                         ' Каир

70300000

1002000 Арабский

Африка

 

Индия                             дели

849600000

3288000 Хинди

Азия

 

Канада                 Опава

31300000

9976000 Английский, французский : Северная Америка

 

Китай                             Пекин

12944000

9561000 Китайский                                          Азия

 

Люксембург               , Люксембург

400000

2600 Немецкий, французский ; Европа

 

Польша               Варшава

38500000

    312700 Польский                     * Европа

 

Россия                Москва

148600000

17075400 Русский                          Европа, Азия

 

США                              Вашингтон

288500000

9364000 Английский                   Северная Америка ,

 

Тунис                            Тунис

9700000

    164000 Арабский                       Африка

 

Украина              Киев

48700000

   603700 Украинский                     Европа

Рис. 4.10 2. Создайте базу данных «Библиотека дисков» (файл Library disk.mdb), содержащло три таблицы «Клиенты», «Диски», «Выдача дисков», как показано на рисунке 4.11, а, б, в.

Клие НТЬ} : таблица

 

 

 

 

 

 

Фамилия

Имя

Адрес

ТеЛефон

 

 

Т Сидоров Вася ул . Плеханова, д. 20 2! Симончик Валя ул. Васнецова, д.З, кв.89

                З! Титов        Алексей       ; ул Жилуновича, д.б

2954321

2961736

2474331

2912345

2916754

 

 

 

4 Смирнов        Александр сул . Ванеева, д.б, кв. 5

5 Иванов           Павел     удцошевого, д. 13, кв.5

 

 

Счетчи

 

Запись; Й

 

 

 

а

Диски : таблица

 

 

 

 

 

 

 

 

 

 

1

Комплект словарей          1 CD-R

15 ООО.ООр.

 

 

2

Текстовые редакторы

CD-R

10 ООО.ООр.

 

 

З

Пираты Карибского моря

DVD

18 ООО.ООр.

 

4

Валерий Меладзе

DVD

7 ООО.ООр.

 

 

5

Группа Сябры

DVD

6 ООО.ООр.

 

 

6

Дима Колдун

DVD

9 ООО.ООр.

 

Счетчик

 

 

 

Запись:

 

 

 

 

 

 

 

Рис. 4.11, а, б


ё 22. Связывание таблиц базы данных

Установление связей в СУБД Access дает возможность автоматически соединять данные из разных таблиц.

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

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

Пример. Установить связь между двумя таблицами «Покупатель» и «Закав базе данных Trade.mdb. Структура каждой таблицы представлена на рисунке 4.12.


В таблице «Покупатель» ключевым полем является поле Код покупателя. Данное поле является счетчиком и содержит уникальные значения для каждой записи этой таблицы. Поле данной таблицы назовем первичным ключом.

Если каждый покупатель делает только один заказ, то в таблице «Заказы» поле Код покупателя будет содержать неповторяющиеся данные и должно быть определено как ключевое поле. В таблице «Заказы» ключевое поле Код покупателя будем называть внешним ключом .

В этом случае тип связи, установленный между первичным и внешним ключами, называют связью один к одному. Этот тип связи представлен  на рисунке 4.13.

S 22. Связывание

 

Покупатель

1

Заказы

 

Код покупателя

Город

Страна

 

Код покупателя Номер заказа дата заказа Адрес

Рис. 4.13

Если в таблице «Заказы» один покупатель делает несколько заказов, то поле Код покупателя уже не будет уникальным. Получается, что данные в этом поле повторяются многократно. В этом случае ключевым полем с уникальными данными должно быть определено другое поле, например поле Номер заказа. В данном случае тип связи, установленный между одноименными полями Код покупателя в обеих таблицах, называют связью один ко многим, как показано на рисунке 4.14.

Покупатель

 

Заказы

Код покупателя

Город

Страна

 

Код покупателя Номер заказа дата заказа Адрес

Рис. 4.14

Для создания Схемы данных в СУБД Access необходимо выполнить слещющее:

1.    Открыть многотабличную базу данных, для которой лае)КД/ таблицами устанавливаются связи, например базу данных trade.mdb.

2.    Щелкнуть левой клавишей мыши по значку Схема данных или выполнить цепочку команд Сервис Схема данных на панели Стандартная.

З. Выделить первую таблицу, для которой устанавливается связь в окне Добавление таблицы. Для данного примера этодаблица «Покупатель».

4.    Щелкнуть левой клавишей мыши по кнопке Добавить. На экране будет отображена таблица, которую мы добавили.

5.    Выделить таблицу, которую требуется добавить в Схему данных (в нашем случае это таблица «Заказы»), и щелкнуть левой клавишей мыши по кнопке Закрыть.

6.    В окне таблицы «Покупатель» щелкнуть левой клавишей мыши на поле Код покупателя, которое будет использоваться для установки связи, и перетянуть его на совпадающее поле таблицы «Заказы».

Изменение снязеи

                                        Таблица$запрос,                   Саванная таблица$запрос:

ок

                                         Покупатель                       Заказы

Отмена

                                             Ко по ателя                     Ко по пателя

Объминение.. ,

                                               рђеспечение целостности данньк)                                        Цовое,

№скадное обновление связанных полей

Оказадноеудаление связанных записеи

                                                                  Тип отношения:                      ОДИН-50-МНOГИМ

Рис. 4.15

7. В окне Изменение связей установить флажок Обеспечение целостности данных, затем щелкнуть левой клавишей мыши по кнопке ОК (рис. 4.15).

В результате выполненных действий в окне Схема данных два связанных поля соединятся линией, как показано на рисунке 4.14

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

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

1.    для чего необходимо связывать таблицы базы данных?

2.    Какими свойствами должны обладать связываемые поля?

З. Какие типы связей существуют между таблицами?

4. что понимается под схемой базы данных?

Упражнение

В базе данных «Библиотека дисков» свяжите таблицы «Клиенты», «Диски», «Выдача дисков» (см. рис. 4.11

Результат выполнения задания дан на рисунке 4.16.


 

Клиенты

КодКлиента

имя Фамилия Адрес

Телефон электронная почта

 

выдача дисков

Код выдачи КодКлиента Код диска дата выдачи

Отметка о возврате

 

 

Диски

 

код диска Название диска Тип диска стоимость диска

Рис. 4.16

ё 23, Модификация структуры таблицы

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

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

S 23.Модификация структуры таблицы

 

149

В СУБД Access модификация структуры таблицы осуществляется в режиме Конструктора. Для модификации структуры таблицы необходимо:

1.    Открыть базу данных, содержаи.щую таблицу, структуру которой необходимо изменить.

2.    Щелкнуть левой клавишей мыши по нужной таблице в окне База данных. З. Щелкнуть левой клавишей мыши по КОНСТРУКТОР чтобы открыть описание структуры таблицы в режиме Конструктора.

Пример. Модифицировать структуру таблицы «Страны 2002» в режиме Конструктора, представленную на рисунке 4.17, в структуру, показанную на рисунке 4.18.

 

Страны 2002 : таблица

 

 

 

 

 

Страны 2002 : таблица

 

 

 

 

имя поля-

 

 

Имялоля

Типданных

 

 

Текстовый

Столица                            Текстовый

Население                         Числовой

              (кв км             _}Ущовой

Язык                                 Текстовый

 

Текстовый

Столица                            Текстовый

Население              ; числовой Пдрщед» (квзу)_    , числовой плотность населения -—[Уисловрй

 

 

 

 

 


         Часть света                                                                       Язык

Рис. 4.17                                                                          Рис. 4.18

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

Для удаления поля в режиме Конструктора следјет:

1.                    Установить текстовый курсор в удаляемую строку Часть света.

2.                    Щелкнуть левой клавишей мыши по кнопке Удалить строки на панели Стандартная или выполнить щепочку команд меню: Правка —» Удалить строки.  Необходимо помнить, что при удалении поля все содержащиеся в нем данные удаляются.

Для вставки поля в режиме Конструктора требуется:

1.    Установить текстовый курсор в поле строки, над которой будет расположено новое поле. Для нашего примера это будет поле Язык.

2.    Щелкнуть левой клавишей мыши по кнопке Добавить строки на панели Стандартная или выполнить цепочку команд меню: Вставка Строки.

З. После вставки новой (пустой) строки в нее вносятся необходимые данные.


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

1.    Что понимается под модификацией структуры таблицы?

2.    Как изменяются имя, тип, размер, формат данных поля в СУБД Access?

Упражнение

Откройте базуданных «Озера Беларуси», содержащло таблищ «Озера» (рис. 4.19).

Рис. 4.19

В специальном столбце Описание укажите единицы измерения. Модифици- руйте структуру таблицы «Озера»: измените имена полей, добавьте поля Ширина, Длина.

Результат выполнения задания показан на рисунке 4.20.

ё 24. Создание и заполнение формы

24.1. Возможности создания формы в СУБД Access

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


Формы отображают данные из таблиц или запросов и создаются на их основе.

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

СУБД Access позволяет создавать формы- в режиме Мастера и Конструктора.

При подготовке формы необходимо в окне Базы данных выполнить цепочку команд: Формы Создать ;асоздать .

В открывшемся окне Новая форма предлагаются два основных способа: Конструктор и Мастер форм, а также Автоформы в столбец, ленточная, табличная сводная таблица, сводная диаграмма и др., как показано на рисунке 4.21. В окне Новая форма следует выбрать в качестве источника данных нужную таб-


лицу или запрос. Это особенно важно, если форма создается в многотабличной базе данных или в ней уже создано несколько запросов. Быстрое создание форм обеспечивают Мастер форм и Автоформы, однако этот способ не всегда устраивает пользователя и часто ограничивает возможности оформления форм.

24.2. Создание формы в Конструкторе

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

Для создания формы в режиме Конструктора нужно выполнить цепочку команд:

152

 

Глава 4. Технология об аботки ин о мации в СУБ

1.    Выбрать Формы Создать в окне База данных —» указать пункт меню Конструктор в окне Новая форма, а также выбрать источник данных— таблищ, например «Озера», на основании которой строится форма.

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

2.    Перетянуть с помощью мыши из Списка полей в Область данных необходимые поля таблицы, например Название. Если список полей не откроется одновременно с Областью данных, он может быть открыт с помощью специального значка Список полей на панели Стандартная. Этот значок представлен на рисунке 4.22.

При перетягивании каждого поля в Область данных в нем располагаются Надпись (имя) и Текстовое поле (данные

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

Список полей

название

1

Озера

   Название                                                    Надпись                 Текстовое поле

Площадь (кв км)

Макс глубина (м)

      Объем воды (млн куб м)              З

Границы формы

S 24. Создание и заполнение формы

 153

Рис. 4.22

Если элементы Надпись и Текстовое поле не полностью отображаются в форме, например «Объем воды (млн куб. м)», то могут быть изменены их размеры. Пользователь также может изменять положение этих элементов в Области данных и их расположение относительно друг друга. Эти изменения могут быть выполнены с помощью маркеров и мыши после выделения нужных элементов


(рис. 4.23). Работать с элементами Над-

 

пись и Текстовое поле в области данных надо очень аккуратно. При перемещении элементов следует обращать внимание на сетку и линейки по горизонтали

Нё'ЗЂЁАйё

и вертикали.

Сделав щелчок левой клавишей

мыши внутри Надписи, пользователь

 

может отредактировать ее текст.

После завершения переноса полей из Списка полей и завершения их

Название

Маркеры изменения размеров элементов

пользователь может

выбрать

стиль

 

оформления формы.

 

 

Рис. 4.23

размещения с помощью кнопки Автоформат на панели Стандартная Завершение конструирования формы заканчивается ее сохранением.

Формы, созданные в Мастере форм, могут быть изменены в Конструкторе.

1. Для чего создаются и используются формы?

2. Какие способы создания формы предлагает СУБД Access?

Упражнение

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

а) База данных «Озера Беларуси», содержащая таблш-у «Озера» (см. рис. 4.19).

Результат выполнения задания дан на рисунке 4.24.

154

 

Глава 4. Технология обработки информации в СУБД

Рис. 4.24

б) База данных «Страны», содержащая таблицу «Страны 2002» (рис. 4.25).

2- Страны 2002 : таблица

 

 

Страна

зеленце;

-

       Авст алия              * Канбе

19500000

           7687000 Английский                                        Ерзлия и Океания; Точечный ис нок

        Ав ия                     Вена

8100000

                 83800 Неме кий                                  Ев опа                        —Ј-Точечный ис нок

 

31400000$

            2382000 А абский                                                                      ЛочеЧНЫЙ ИС НОК

А гентина _ —-ДЭнос-Ай

37900000

            2767000 Испанский                                  южнаяАме ика             ! Точечный ис нок

       Бела сь               ?Минск

9900000

            207600 Бело                        сский Ев опа                            Почечный ис нок

     Еразилия                 Б илия

174700000

              8512000 По гальский                             Южная Аме ика .                                  нок

Великоб итания Л он

59700000'

244100 Английский

                         Ев опа                                Точечный ис нок

Вьетнам

Ханой

80200000

329600 Вьетнамский

                        Азия                                   Точечный ис нок

Египет

$ Eqytp

70300000

1002000 А абсшй

                       ; А ика                          точечнуђрис нок

Ин ия

ели

849600000

3288000

                        Азия                                   Точечный ис нок

Кана а

Оттава

31300000

9976000 Английски -

анцузсшй                                            ика Точечный ис нок

Китай

(Пекин

12944000004

9561000! Китайский

                        Азия                                   Точечный ис нок

Люксемб

Люксемб г

400000

2600 Неме

ан зский Ев опа                                         Точечный ис нок

Польша

Ба шава

38500000

312700 польстй

                     _l>pppg                              ; Точечный ис нок

Россия

[Москва

148600000.

17075400 Р ссшй

                        : Ев оп Азия                      Точечный ис нок

США

Вашингтон

288500000

9364000 Английстй

Севе ная Аме ика Точечный

Т нис

Л нис

9700000$

164000 А абсюлй

А ика

- украина

Киев

48700000

603700lY аинский

                         Ев опа                             ? Точечный ис нок

ф ан ия

Ла иж

59700000'

551600|Ф ан зский

                       Ев опа                               ! Точечный ис нок

Чили

Сантьяго

1

15600000

75700 Испанский

                       [Южная буерика                Точечный ис нок

4.25


Результат выполнения задания показан на рисунке 4.26.

Рис. 4.26

ё 25. Использование фильтров

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

Для отбора записей таблицы по определенным критериям в СУБД Access используются фильтры. Рассмотрим применение фильтров на конкретной однотабличной учебной базе данных «Яблоки». Таблица этой базы представлена на рисунке 4.27.

Рис. 4.27

СУБД Access предлагает пользователю различные способы фильтрации: по выделенным Данным, по заданному условию и др.

Выполнение фильтрации по выделенным данным рассмотрим на примере.

Пример 1. Отобразить на экране монитора записи таблицы базы данных, которые содержат сведения о яблоках, созревающих в сентябре.

Для выполнения задания необходимо:

1.    Щелкнуть левой клавишей мыши на любой ячейке столбца Период созревания со значением «Сентябрь».

2.    Щелкнуть левой клавишей мыши по кнопке Фильтр по выделенному или выполнить цепочку команд: Записи Фильтр Фильтр по выделенному.

В результате на экране монитора появится окно с таблицей, содержащей все записи, имеющие в поле Период созревания значения «Сентябрь», как показано на рисунке 4.28.

При сохранении полученной таблицы последний установленный фильтр запоминается СУБД Access и потом может быть снова применен.

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

Фильтрацию по заданному условию удобно задавать после сделанного щелчка левой клавишей мыши по кнопке Изменить фильтр на панели Стандартная или выполнив цепочку команд: Записи —» Фильтр —» Изменить фильтр. В итоге откроется окно Фильтр, в котором задаются условия (рис. 4,29).

Фильтрацию данных по заданному условию покажем на примере.

Пример 2. Отобразить на экране монитора записи таблицы базы данных, которые содержат сведения о яблоках, созревающих в сентябре и имеющих массу 120 г. С помощью выпадающих меню в окне Фильтр зададим условие «Масса плода (г) =120 и Период созревания = Сентябрь» (см. рис. 4.29).

                                                                                          Использование фильтров                                   

й Яблоки : таблица

 

 

 

 

 

Со т яблок

Масса плода г

Пе иод$соэ евания

 

Шт и ель

Малиновый

120 Сентябрь

120 Сентяб ь

 

 

Эагжь:              4

 2

Рис. 4.30

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

1.    для чего используются фильтры?

2.    Какие операции фильтрации предлагает пользователю СУБД Access?

Упражнение

Создайте однотабличную базу данных «Аквариумные рыбки». Структура таблицы и ее содержание даны на рисунках 4.31 и 4.32.

В Аквариумные рыбки : таблица

КЛОП,

                            Название рыбки                Текстовый

                                             Место происхождения                 Текстовый

Чисгювой Рис. 4.31

Аквариумные рыбки : таблица

 

 

 

 

название

лаестолроиоКоЖдения

Длина Ксм)

У:

Гамбузия                          ; Южная Аммика                                      5

Плятипецилиус черный : Мексика 4 Зеленый меченосец Мексика 11

Тет а-фон-рио                  Южная AMQY1ka                                    2

Бархатный щрдрдщцус е Южная Америка                                      5

Макропод                            Китай                                                        9

Гурами жемчужный            нандия                                                      10

Лялиус                               Индия                                                       5

Неон                                     Южная Америка                                       4

 

 

 

 

 

 

 

 

 

Рис. 4.32

Выполните отбор нужных записей таблицы, используя:

а) фильтрацию по выделенному «Южная Америка»;

б) фильтрацию по выделенному «Индия»;

в) фильтрацию по условию «Китай» или «Индия»;

г) фильтрацию по условию «Южная Америка» и Длина (см) Я.

158

 

Глава 4. Технология обработки информации в СУБД

ё РБ. Поиск данных с помощью запросов

2Б.1. Запрос на выборку данных по одной таблице

Поиск информации в базах данных выполняется через запросы. С помощью запроса СУБД Access выбирает и отображает записи из таблиц базы данных, которые отвечают заданным условиям.

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

СУБД Access поддерживает создание запросов на выборку с помощью Мастера и Конструктора.

Покажем, как осуществляется поиск информации на примерах создания запросов на основе таблицы «Кольца» базы данных «Украшения из драгоценных металлов», которая представлена на рисунке 4.33.

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

Для создания соответствующего запроса необходимо выполнить следующие действия:

1.    Щелкнуть левой клавишей мыши по кнопке Запросы в окне Базы данных.

2.    Дважды щелкнуть левой клавишей мыши на строке Создание запроса с помощью конструктора или выполнить цепочку Создать —» Конструктор ок.

 

Кольца : таблица

 

 

 

 

 

 

 

Металл;

Проба

Камень

Цена

 

Белое золото

Желтое золото

Белое золото

Серебро

Красное золото

Желтое золото

Cege©po

Красное золото Белое золото К асное золото

Серебро

Серебро

Красное золото

Бриллиант 585 Бриллиант

585Бриллиант

925Гранат

750Сапфо

585 Са пфур_

585 3 Оникс

585 ; Бриллиант

750 Бриллиант

585 Янтарь

925 Гранат

925 Гранат

925 ; Бриллиант

З 060 ООО,ООр.

2 025 ООО,ООр. 1 020 ООО,ООр. 630 ООО,ООр.

1 260 ооо,оо

1 710 ООО,ООр. 900 ООО,ООр. 2 229 ооо,оо . 1 680 ооорор. 468 ооорор. 702 ООО,ООр. 576 ооодр.

6 525 000 оо .

0,00

 

 

 

 

 

 

 

 

 

 

 

 

 

из 13

 

4.33


Поле:

Металл

Камень

 

Имя таблды:

Кольца

Кольца

Кольца.*

Сортировка:

 

 

металл

вывод на экран:

 

 

Проба

Условие отбора:

 

 

Камень

или:

Рис. 4.34


З. В окне Добавление таблицы выбрать таблицу с именем Кольца и щелкнуть левой клавишей мыши по кнопке Добавить.

4. В результате выполненных действий откроется окно Запрос на выборку Конструктора, как показано на рисунке 4.34. В этом окне в строке Поле необходимо щелкнуть левой клавишей мыши по кнопке со стрелкой. Из открывающегося списка требуется последовательно выбирать поля, по которым будет формироваться запрос: Металл, Камень, Цена.

Установка флажка в выбранном столбце строки Вывод на экран позволит вывести на экран монитора информацию, которая содержится в соответствующих полях таблицы (в нашем примере: Металл, Камень, Цена).

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


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

 

Кольца Запрос 1 : запрос на выборку

 

 

 

 

 

Металл:

Камень

 

 

 

Белое золото  ; фщщант Желтое золото ! Бриллиант Белое золото            Бриллиант

Сер&фо                         Г анат

Красное золото                     Сап и

Желтое золото              Сапфир

Серебро                       К)никс

Красное золото филлиант Белое золото Бриллиант

Красное золото                   :Янтарь

Серебро                        Фанат

з 060 ооо,оо 2 025 ооо,оо

1 020 ооо,орр. 630 ООО,ООр.

1 260 ООО,ООр.

1 710 ООО,ООр. 900 ооо,ощр. 2 229 ООО,ООр. 1 680 ооо,оо . 468 ооо,оо .

702 ооо,оор.

 

 

 

 

 

 

 

 

 

Рис. 4.35

В этом примере необходимо выполнить запрос Металл=«Серебро» и Цена > 660 000.

В окне Конструктора запроса в строке Условие отбора сформируем запрос, как показано на рисунке 4.36.

Для формирования данного запроса в Конструкторе необходимо:

1.    В строке Поле щелкнуть левой клавишей мыши по кнопке со стрелкой. Из открывающегося списка последовательно выбрать поля, по которым будет формироваться запрос: Металл, Камень, Цена.

2.    Установить флажок в выбранном столбце строки Вывод на экран. Это позволит вывести на экран монитора информацию, которая содержится в соответствующих полях таблицы базы.

З. Ввести необходимые значения в соответствующем столбце строки Условие отбора, как показано на рисунке 4.36.

В результате выполнения запроса на экране монитора появится временная таблица (рис, 4.37),

Формирование запросов по двум либо нескольким связанным таблицам осуЩССТВЈШСПСЯ аналогично. При этом в строке Имя таблицы необходимо указать таблицы, данные из которых будут использоваться в запросе.

1 . для чего используются запросы?

2. На основе каких объектов СУБД Access формируется запрос?

Упражнения

1 . Откройте таблицу «Страны 2002» базы данных «Страны» (см. рис. 4.25) и создайте запросы по этой таблице:

а) простой запрос, содержащий все записи полей Страна, Столица, Население, Язык;

б) запрос, имеющий записи с полями Страна и млн человек»;

в) запрос с записями Столица и Язык = «арабский».

2. Откройте таблицу «Озера» базы данных «Озера» (см. рис, 4.19) и создайте запросы по этой таблице:

а) простой запрос, содержащий все записи полей Название, Площадь (кв км), Макс глубина (м);

б) запрос, имеющий записи с полями Название, Объем воды (млн куб и Объем воды (млн куб м) < 20.

26. а. Параметрический запрос

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


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

Г1ркпкр. Предположим, что у нас имеется база данных, содержащая таблицу «Водопад», которая представлена на рисунке 4.38. Необходимо осуществить поиск информации, содержащей сведения о всех водопадах конкретной страны.

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

Рис. 4.38      

6. ЗаК. 1 70.

выполнении запроса вводить название страны. Поэтому в строке Условие отбора указывается текст подсказки в квадратных скобках [Введите название страны|, как показано на рисунке 4.39.

При выполнении параметрического запроса открывается специальное окно для ввода названия страны, например «Норвегия» (рис. 4.40).


В результате выполнения запроса па экране монитора появлястся таблица, содержащая сведения о водопадах Норвегии, как представлено па рисунке 4.41.

2Б,З. Вычисления в запросе

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

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

Премер З. В таблице «Водопад» (см. рис. 4.38) определить высоту всех водопадов в километрах.

Для создания такого запроса в строке Поле записывается арифметическое выражение «[Высота  с пояснительным текстом «Высота (км)», как представлено на рисунке 4.42.

После выполнения запроса с выражением на экране монитора появляется таблица, представленная на рисунке 4.43.


При написании выражений пользователь может воспользоваться возможностями окна Построитель выражений, которое открывается после щелчка левой клавишей мыши по кнопке Построить

Запрос1 : запрос на выборку

 

 

 

 

Название водопада

Высота(км)

 

 

Рис. 4.43

1.    для чего используется параметрический запрос?

2.    Могут ли в запросах использоваться вычисления?

Упражнение

Создайте запрос с Выражением на основе таблицы «Кольца» базы данных «Украшения из драгоценных металлов» (см. рис. 4.33). Переведите с помощью Выражения массу бриллиантов из каратов в граммы, как показано в окне Конструктора запросов.

Необходимый запрос показан на рисунке 4.44.

ё 27. Сортировка записей в таблице

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

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

В зависимости от типа данных в поле (числовое, текстовое или др.), определенных для сортировки, все записи в таблице базы данных размещаются: а по величине числа, если тип данных числовой;

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

Записи в таблице базы данных сортируются по значению ключевого поля. Если ключевое поле не задано, то в таблице базы данных записи хранятся в том порядке, в каком они были введены.

СУБД Access предоставляет пользователям возможность сортировать записи в таблице. Для сортировки записей по данным конкретного поля необходимо установить курсор в любую строку соответствующего столбца и сделать щелчок левой клавишей мыши по одной из кнопок на панели Стандартная:

                    Сортировка по возрастанию,  Сортировка по убыванию.


Со ти овка записей в таблице

Города : таблица

Название города

Численность населения            Страна

Дакка

8539500 Бангладеш

Лондон

7393800 Великобритания

дели

10009200 Индия

Джакарта

10810400 Индонезия

Карачи

10272500 Пакистан

Манила

10133200 Филиппины

Мехико

8656800 Мексика

Москва

8376000 Россия

Сеул

11153200 Республика Корея

Рис. 4.45

Продемонстрируем процесс сортировки записей в таблице «Население городов мира», фрагмент которой представлен на рисунке 4.45.

Пример. Отсортировать записи таблицы «Города» по данным поля Название города, расположив записи в алфавитном порядке.

1.                     Щелкнем левой клавишей мыши в любой строке поля Название города.

Я

2.                     Щелкнем левой клавишей мыши по кнопке Сортировка по возрастанию или выполним цепочку команд: Записи Сортировка Сортировка по возрастанию.

Фрагмент результата сортировки представлен на рисунке 4.46

Города : таблица

      Название города Численность населения              Страна

Дакка

8539500 Бангладеш

Дели

10009200 Индия

Джакарта

10810400 Индонезия

Карачи

10272500 Пакистан

Лондон

7393800 Великобритания

Манила

10133200 Филиппины

Мехико

8656800 Мексика

Москва

8376000 Россия

Сеул

11153200 Республика Корея

запись:

и з 15

Рис. 4.46

1.    для чего используется сортировка данных?

2.    Какой процесс называют сортировкой записей таблицы базы данных?

Упражнения

1.      Откройте таблицу «Страны 2002» базы данных «Страны» (см. рис. 4.25) и выполните сортировку записей в этой таблице:

а) расположите записи поля Страна в алфавитном порядке;

б) расположите записи поля Население в порядке возрастания;

в) упорядочьте записи поля Площадь в порядке убывания.

166

 

 

 

 

Глава 4. Технология обработки информации в СУБД

 

 

 

 

 

 

 

 

2.      Создайте базу данных «Реки Беларуси», фрагмент таблицы которой показан на рисунке 4.47:

Рис. 4.47

а) упорядочьте записи поля Длина (км) в порядке возрастания;

б) расположите записи поля КУстота речной сети (км/кв км) в порядке убывания.

ё 28. Создание отчетов

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

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

В отчетах данные представляются в удобном виде. Отчеты выводятся на экран монитора или печатаются на принтере.

S 28. Создание отчетов

 

 

167

СУБД Access предоставляет пользователю несколько способов создания Отчета: Автоотчет, Мастер отчетов и Конструктор. Отчеты являются самостоятельными объектами базы данных и формируются на основании таблиц или запросов. После просмотра полученного отчета он может быть сохранен.

Рассмотрим создание отчета с помощью Мастера на примере многотабличной базы данных «Библиотека дисков».

Примере Создать отчет, содержащий сведения из трех таблиц базы /щННЫХ «Библиотека дисков» (см. рис. 4.1 1). Из таблицы «Клиенты» выбрать фамилию клиента, его имя, телефон, из таблицы «Диски» — название диска, а из таблицы «Выдача дисков» — дату выдачи и отметку о возврате.

Для этого необходимо выполнить следующие действия:

1.    Открыть базу данных «Библиотека дисков» и дважды щелкнуть левой клавишей мыши по надписи Создание отчета с помощью мастера в окне Базы данных.

2.    В окне Создание отчетов, поочередно активизируя название таблиц базы данных в списке Таблицы и запросы, перенести все необходимые поля из окна Доступные поля в окно Выбранные поля, как показано на рисунке 4.48.

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

Создание отчетов

Выберите поля для отчета.

— 32.-.х:в:•:                                           Допускается выбор нескольких табтщ или запросов

[аблицы и запросы

Таблица: Выдача дисков

Д№тупнье ПОЛА!                                      Ьбраеные поля:

Код выдачи         Фамилия : КодКлиента           Имя код иска              Телефон

Название диска дата выдачи

Отметка о возврате

 

Отмена

 

Далее >

готово

Рис. 4.48


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

В результате на экране монитора отображается отчет, фрагмент которого представлен на рисунке 4.49.

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

Подготовка отчета с помощью Конструктора осуществляется несколько иначе. Вначале пользователь может создать и сохранить отчет с помощью Мастера. Затем в окне Конструктора можно изменить расположение элементов в отчете, удалить некоторые элементы, изменить или отредактировать надписи и т. д.

1.    для чего используются отчеты в базах данных?

2.   


Что называют отчетом в базе данных?

З. Какие объекты базы данных являются источниками для создания отчетов?

Упражнение

Откройте таблицу «Страны 2002» базы данных «Страны» (см. рис. 4.25) и создайте отчет в СУБД Access с помощью Мастера.

Результат ВЫПОЛНиИЯ задания показан на рисунке 4.50.

Страны 2002

                                                        Страна                                Население Площадь (кв км)

Австрия

8100000

83855

Беларусь

9900000

207600

Россия

148600000

17075400

Рис. 4.50

ё 29, Основы работы в системе Mathcad

29.1. Основные элементы интерфейса

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


Главное меню Mathcad отличается от аналогичного в Excel лишь двумя специфичными пунктами Math (Математика) и Symb01ics (Символьные операции) очень похожи и панели инструментов Стандартная и Форматирование. Конечно, Mathcad имеет гораздо большие возможности обработки и визуализации данных по сравнению с табличным процессором Excel.

Рис. 5.1

Ввод математических выражений в системе Mathcad напоминает их запись в тетради. Упрощению ввода способствуют шаблоны и специализированные панели инструментов (рис. 5.2).

По мере необходимости они вызываются с помощью меню View (Вид) или панели Math (Математика). Размещение панелей, их форму и размеры можно настраивать.


Панели содержат наиболее часто используемые функции, конструкции и отсутствующие на клавиатуре символы операций. Панель Calculator (Калькулятор) дает возможность вводить простейшие операции: арифметические действия, возведение в степень и извлечение корня, вычисление модуля и тригонометрических функций; панель Calculus (Матанализ) производные, интегралы, суммы, произведения; панель Воо1еап (Логические) логические операции. Панель Graph (Графики) помогает строить разнообразные графики. Многие кнопки панелей прощблированы так называемыми «горячими клавишами», которые подсказываются при подведении курсора к символу на панели (см. рис. 5.2).

29,2. Основы работы в среде Mathcad

Документ Mathcad представляет собой рабочий лист, на котором размещаются блоки трех типов: математические выражения, фрагменты текста и графические области. Текстовые блоки размещаются произвольно. Их часто используют для комментариев. Расположение математических выражений и графических областей определяется порядком исполнения: слева направо, сверху вниз. Блоки можно выделять, перемещать по рабочему листу, копировать в буфер обмена, вставлять в документ. Место ввода очередного блока указывается курсором, который вне блоков имеет вид красного крестика (см. рис. 5.l ).


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

Математические выражения содержат переменные, константы, операторы, функции и управляющие структуры. Имена ( идентификаторы) переменных, констант и функций составляются из букв (латинских или греческих) и цифр. Первым символом должна быть буква. Mathcad различает строчные и прописные буквы: например, by, Ву и ВУ — разные имена.

This variable or function is not defined above.

Переменным до их использования необходимо присвоить значения. В качестве оператора присваивания, как и в языке Паскаль, используется знак «:=», который вводится нажатием клавиши «:» (двоеточие на клавиатуре). Такое присваивание называют локальным, оно действует до нового присваивания. Для вычисления и вывода значения выражения, константы или переменной предназначен знак «=» (равно). Попыт- ка использовать переменную до присваивания значения приводит к ошибке. При этом будет выведено сообщение:

«Переменная или функция не определена» (рис. 5.3).


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

Для глобального присваивания предназначен знак «=» который вводится с панели инструментов Evaluation (Вычисления).

Некоторые переменные (их называют системными или встроенными

Build-In) определены в самой системе, например п = 3,142, g= 9,807 м/с2 , точность TOL. Конечно, их можно переопределить присвоением нового значения, например задать ускорение свободного падения на Луне g= 1 м/с 2 .

Рассмотрим простейшие приемы работы в системе Mathcad.

Ввод и редактирование текстов и математических выражений напоминает аналогичные действия в текстовом редакторе Word.

 В Mathcad дробная часть от целой в десятичной дроби отделяется точкой.  Отсутствующие на клавиатуре символы (например, л) вводятся с панелей  инструментов.

       Пример 1 . Вычислить значение выражения       •

Наберем последовательность символов 1.5*л/7 и завершим ее знаком равно

Щелкнем левой клавишей мыши в любом месте рабочего листа. Получим результат в виде 1.5 • 0.673.

7

Для удаления или замены символа его выделяют формульным курсором с помощью мыши и клавиш управления курсором, при этом выделенный символ находится внутри синего уголка. Направление уголка изменяют клавишей Ins. На группу символов выделение распространяют клавишей Пробел.

Пример 2. Скопировать и отредактировать выражение из примера 1.

Выделим блок с созданным выражением, скопируем в буфер обмена (Ctrl+C), а затем три раза вставим на рабочий лист (Ctrl+V). Перемещая формульный курсор, выполним удаления, вставки и замены символов в КОпИЯХ в соответствии с приведенными образцами:

                                     2.2                          1.2570.46

5

Пример З. Вычислить значения выражений [ а 5 Ь, sin с + tgc при а = 2, Ь = 5, с = п/б.

                 Присвоим значения переменным:                 Ь     5        с :


6

Наберем выражения, вводя символы операций вычисления модуля, возведения в степень, извлечения корня и тригонометрические функции с панелей АНСтрументов, и получим результаты вычислений:

                  la—bl      3         а5 32             = 2.236          3.072           sin(c) + tan(c) —

Пример 4. Ввести и отформатировать текст Простейшие вычисления.

Установим курсор (красный крестик) на свободное место. Введем кавычки «”» и наберем текст Простейшие вычисления. Выделим текст. С помощью панели Форматирование или меню Format (Формат) —» Text (Текст) установим слещющие параметры текста: шрифт Ariaf Суг, курсивный, 12 пт. цвет синий.

1.    Какие типы блоков может содержать документ Mathcad?

2.    Какой вид может принимать курсор?

З. Какой вид принимает курсор в блоке математических выражений?

4. Какие клавиши используются при выделении частей выражения?

Упражнение

Вычислите значение выражения:

                  54 + ЗЗ                                                                            2.72 -0,82

ё 30, Функции. Символьные операции

В математике функцией называют закон, по которому каждому значению х

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


Mathcad предлагает большой набор встроенных функций, вызываемых командой lnsert —» Function (Вставка Функция) или кнопкой f(x) на панели Стандартная.

Можно создавать и собственные функции. Они определяются так: имя (аргументы) : выражение.

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

Пример 1. Определить функции  — 7х fp(x)= f'(x) +5 и вычислить их значения при х = 5 и Ш.

Введем имя и артмент первой функции, знак присваивания и выражение:

f(x) х — 7-х —8

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

                                                    18             х 10               f(x) 22

Во второй функциијп(х) используем МОДУЛЬ, а в третьей fp(x) — производную первой:

                                        fm(x) :=fm(5)                   18                           fm(x) = 22

fp(x) := —f(x) + 5    fp(5) = 8               fp(x) = 18 dx

Шаблон производной • вызывается с панели Calculus (Матанализ).

Пример 2. Определить функцию y(t, х) = А cos (ot — Кх), описывающую зависимость смещения точки волны от времени t и расстояния х до источника. Вычислить ее значения при t=O, х = 0 и х

Переменные А, о и К являются параметрами. Присвоим им значения до задания функции:

Аргументами функции являются переменные t и х. Укажем их в левой части определения функции в скобках. Вычислим значения y(t, х):

                                               y(t,x) := — К•х)           , 0) —          5.403


Система Mathcad позволяет не только производить разнообразные вычисления, но и выполнять символьные операции, результатом которых являются не числа, а формулы. Для символьного преобразования и вывоДа выражений предназначен знак «—» » (стрелка), который вводится с панелей инструментов Evaluation, Symb01ic или комбинацией клавиш Ctrl + . (точка).

Пример З. Вывести формулы производных функций Л х) = х5 и Л х) = х • sin 3х.

     4 Вызовем шаблон производной и введем в него первую функцию:

dx

Вторую функцию сначала определим, а затем введем в шаблон производной:

            —f(x) —» dx

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

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

                                   З       47                                                2

                                   — simplify                                                     +                      simplify —» —4

1767

Преобразование Ехрапс1 (Расширить) используется для раскрытия скобок, разложения по степеням:

         (х + у) expand,x —» х +3•х    + у                        expand,x

Преобразование C011ect (Собрать) позволяет группировать подобные:

                              +2•у •х—х collect,x —> (1 —              +           —

Преобразование Solve (Решить) выражает указанную переменную через другие в виде формулы, т. е. аналитически решает уравнения или неравенства:

            х      4•х+ 1 solve,x         х +7х—3 > 0 solve,x

При использовании преобразований Expand, Collect, Solve необходимо указывать переменную, относительно которой производится операция.


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

1.    Как определяется собственная функция в Mathcad?

2.    Что понимают под символьными операциями?

З. Приведите примеры символьных операций Mathcad.

Упражнения

1.     Определите функцию y(t)=A cos(ot), описывающую смещение точки при колебаниях, и вычислите ее значения при t=O и t= 2. Амплитуда А = 5, частота 0=3.

2.     Определите функции у(х) = хз  5х2 + 12 и z(x) + cos 2х. Вычислите их производные при х = 1 и х = 2.

З. Введите и преобразуйте выражения. Сравните с образцами:

                             8 5 2       11  4

                                            simp1ify —» —•а                                                       + — simplify       

         15                  9                                                                              15112

х

ё 31 . Построение графиков

Средства графического представления функций в системе Mathcad весьма разнообразны. Они выбираются в меню Insert (Вставка) или вызываются кнопкой на панели Graph (фафик) (см. рис. 5.2). Мы ограничимся графиками в прямоугольной (декартовой) системе координат (XY-graph).


Для построения графика зависимости Л х) требуется сначала создать таблицы значений аргумента и функции И Это довольно трудоемкая работа. В Mathcad для этого прещсмотрен особый тип переменной аНЖИOОВаНВ&-1Я переменная, которая представляет собой поименованную последовательность значений: от начального хо до конечного хп с шагом d. Задается эта переменная так: х := хо , xo+d .. хл (первое значение, запятая, второе значение, «..», последнее значение). Символ последовательности «..» вводится нажатием клавиши «;» (точка с запятой). При хо < хп значения возрастают, при хо > хп убывают. При шаге ±l достаточно указать только первое и последнее значения.

                  Пример         Задать и вывести на экран последовательности чисел: х от до

 

-4

-42

-4,5

4.8

 

2

З

4

5

6

7

1

1.5

2

2.5

з

3.5

4

4 с шагом 0,5; ј от 2 до 7 с шагом и z от 0,6 до х—5 с шагом —0,2.

Зададим ранжированные переменные:

х : 1 -5.

Для их вывода будем набирать имя и знак «=». При этом на экране показывается несколько первых значений в форме таблицы. Для просмотра всех значений переменной z щелкнем мышью по таблице и воспользуемся появившейся полосой прокрутки (рис. 5.4).


Ранжированная переменная применяется в качестве аргумента при построении графиков и таблиц значений функций (например, п) на рисунке 5.5).

Пример 2 Построить график функции  12х—5 на промежутке [—4; 4].

 Определим функцию: f(x):=x3—12•x—5. Зададим область определения, используя ранжированную переменную с шагом 0, 1.

Рис.  Укажем мышью (красным крестиком) на предполагаемое мес- то левого верхнего угла будущего графика. Щелкнув по кнопке на панели Graph, вызовем шаблон построения графика в прямоугольной системе координат (рис. 5.6).

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

 Добавим оси, сетку и оцифровку шкал (рис. 5.8). Для этого двойным щелчком левой клавишей мыши по графику или командой Format —» Graph (Формат


 График) вызовем окно форматирования. На вкладке XY-axes (Оси ХУ) снимем автоопределения (Autosca1e и Auto Grid) и установим стиль осей

20

f(x)

-20

-40

х

Рис. 5.6рис. 5 7

                                              f(x)         4

х

5.8

Formatting Currentty Selected .

 

 

Formatting Currently Selected

 

 

Справка

                  Рис. 5.9                                                                           Рис. 5.10

(Axis Style) пересекающиеся (Crossed), сетку (Grid Lines) 4 х 5 и оцифровку шкал (Numbered) (рис. 5.9). На вкладке Traces (Линии) подберем цвет (C010r) и толщину (Weight) линии (рис. 5.10).

Заметим, что график будет построен, даже если не задать область определения функции. В этом случае аргумент по умолчанию изменяется от —10 до 10 с шагом 1.

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


Пример З. Построить на одном шаблоне графики функций A(t) — bt и x(t) (ot). Аргумент изменяется на промежутке [0; 20] с шагом 0,1. Параметры Ь = и о = З.

Присвоим значения параметрам: Ь:=0.4 и о:= З.

 Определим функции: сначала  а затем  Зададим область определения: х:= 0, 0.1 .. 20.

 Вызовем шаблон построения графика и в нижнем черном квадратике введем аргумент t, а в левом через запятую функции A(t), x(t).

 При форматировании графиков (рис. 5.1 1 ) на вкладке Traces подберем цвет и вид второй линии (trase2): вместо dot (точки) установим solid (сплошная).

Исслещйте самостоятельно изменения графиков, задав параметры Ь = 0,3 и

0=5.

Пример 4. На одном шаблоне построить график функции Л х) = —х2 + 2х — З на промежутке [—8; 8] с шагом и касательную к нему в точке а = —2. Исследовать изменения наклона касательной в точках —3; —1 ; 0; 1; 2.

Построение касательной имеет следующие особенности.

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


 Зададим касательную в точке а прямую с угловым коэффициентом К(а).  В шаблон построения графика введем три аргумента х, х, а и три функции: исходную Лх), касательную ta(x) и ординату точки касания f(a) (рис. 5.12).  При форматировании графика на вкладке Trases подберем вид второй линии (trase2) сплошная (solid) и толщину (Weight) 2. Для точки касания (trase3) установим тип (Туре) точки (points) и толщину (Weight) 6.

f(x) :

dx

10

       5.12                                                  х,х,а

Упражнения

1.                 Задайте и выведите на экран последовательности чисел:

                   а) х от —3 до 7 с шагом 0,5;          б) у от 2 до —2 с шагом —0,1.

2.                 Постройте график функции ЛО = sin 7t + sin 8t на промежутке [0; 5], шаг 0,1. З. На одном шаблоне постройте график зависимости координаты точки от времени x(t)=8+ 12t — 2t2 и скорости v(t) — dx на промежутке [0; 5] с шагом 0,1. dt

4. На одном шаблоне постройте график функции Л х) xsin x на промежутке

[0; 12] с шагом 0,1 и касательную к нему в точке а = 5.

                ё 32, Решение уравнений        

На практике Вам неоднократно приходилось решать различные уравнения, например линейные ах + Ь = 0, квадратные ах2 + bx + с = 0, тригонометрические.

Любое уравнение может быть приведено к виду Л х) = 0 в результате переноса всех членов в левую часть. Решить уравнение значит найти такие значения аргумента (корни), которые обращают его в тождество. Формулы для выражения корней в аналитическом виде существуют далеко не для всех уравнений и зачастую весьма громоздки. Поэтому на практике так велика роль вычислительных методов.

При нахождении корней уравнения выделяют два этапа:

                   1 ) отделение корней     поиск промежутков, которым они принадлежат;

                            2) уточнение корней              определение их значений с заданной точностью.

В основе отделения корней лежат следующие положения. Если непрерывная на отрезке [а; Ь] функция Л х) имеет на его концах противоположные знаки, то на этом отрезке находится хотя бы один корень (нуль функции), и график функции пересекает ось Ох. Если при этом функция монотонно возрастает или убывает (знак производной не изменяется), то корень на данном отрезке единственный.

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


Рассмотрим некоторые способы решения уравнений в Mathcad. Начнем с графического, поскольку он позволяет в наиболее простом и наглядном виде отделять и уточнять корни.

Пример 1. Найти корни уравнения х — 4 cos x = 0 графическим способом.

 Определим функцию: f(x):=x—4•cos(x). Построим график функции f(x), взяв сначала широкую область определения, чтобы увидеть особенности графика и обнаружить все корни (рис. 5.13), а затем сузив ее для уточнения корней


 Для определения численных значений корней воспользуемся инструментом Тгасе (Трассировка). Он вызывается щелчком правой клавишей мыши по графику и отображает координаты точек, попадающих на пересечеf(x) := х — х . -10,-9.9 10 х :

х

Рис. 5.13                                                                    Рис. 5.14

ние линий, которые можно перемещать при нажатой левой клавише мыши (рис. 5.15). Для следования по точкам графика необходимо установить флажок Track Data Poik1ts (След точек данных).

Отслеживая в поле Y-va1ue минимальное по модулю значение при переходе функции через нуль, в поле X-value последовательно определим все корни: —3.6;

         5.15                                                      х

растянем с помощью мыши график для удобства наблюдения. Корни будут определены с большей точностью: —3,59; —2,13; 1,25.

Mathcad содержит мощные средства решения уравнений. Некоторые из них собраны в категории Solving (Решения) и вызываются нажатием кнопки ' Лх) на панели Стандартная или командой lnsert Functi011 (Вставка  Функция).

Пример 2. Найти корни уравнения х — 4 cosx=0 с помощью функции root().

 Определим функцию: f(x):=x—4 • cos(x). Графическим способом отделим корни и возьмем их начальные приближения (например, —3,6; —2,1 • 1,3 или даже

 Будем последовательно задавать начальные приближения и применять функцико  х), как показано на рисунке 5.16.

f(x) .

-4

 

-3,595

-2

 

о

1252

2

1252


хroot(f(x) , х) root(f(x) , х) -3.595 root(f(x) , х)

                   х .          root(f(x) , х) —

                       Рис. 5.16                                                                        Рис. 5.17

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

Точность вычислений в Mathcad задается системной переменной TOL (по умолчанию ТОЕ = 0.001). При необходимости требуемое значение может быть присвоено непосредственно на рабочем листе или установлено на вкладке Built-in-Variables (Системные переменные) окна Math 0ptions (Параметры), которое вызывается из меню Math (Математика). Формат отображения результата должен соответствовать установленной точности (по умолчанию: общий, З десятичных знака). Настройки можно сделать в окне Result Format (Формат результата), вызываемом из меню Format (Формат).

Одним из самых мощных инструментов решения уравнений в Mathcad является конструкция Given — find (Дано — найти), которая, как мы увидим в дальнейшем, позволяет решать не только уравнения, но и системы уравнений и неравенств.

-20

10

Given

-3

                                                            5              fmd(x) — -0.891

х

рис. 5 18

Пример З. Найти корни уравнения 7cos(x —1) = Р — З с помощью конструкции Given — find.

          Построим графики функций (рис. 5.18), заданных выражениями в левой и правой частях уравнения, и найдем приближенные значения корней —0,9 и 2,3.

          Зададим начальное приближение первого корня, например —1

          Наберем ключевое слово Given.

          Введем уравнение.


Две его части связаны жирным знаком равно «=», который вводится комбинацией клавиш Ctrl + = и является оператором логического сравнения.

' Применим функцию find(x). Получим значение первого корня —0,891. Задав начальное приближение второго корня, например 2, получим 2,263.

1.    С какой целью используют трассировку графика?

2.    Назовите этапы решения уравнения с помощью функции root(). З. Назовите этапы решения уравнения с помощью конструкции Given —

4. В каких случаях используется знак «=» (жирное равно)?

Упражнение

Найдите корни уравнения графическим способом, уточните корни с помощью функции root() и конструкции Given — find.

а) 2sinx=x2 —1 на промежутке [—2; 21;

б) cos 2х= 5sin(x — 1) на промежутке [0; 101;

в) 3sin х = cos 3х + х на промежутке [—3; 31;

г) cos(X+ 1) = х sinx на промежутке [—2; 2].

ё 33. Операции с векторами и матрицами

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

Матрицей называют поименованную совокупность элементов, которые размещаются в таблице и упорядочены по индексам (номерам строк и столбцов). Элементы матрицы обозначают буквами с двумя индексами щ.. Первый индекс i означает номер строки, в которой расположен элемент, а второй индекс номер столбца.


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

 

Matrix

                                    Рис. 5.19                                                                                        Рис. 5.20

Работа с векторами и матрицами в Mathcad обеспечивается набором встроенных функций (категория Vector and Matrix), а также использованием панели инструментов Matrix (Матрица) (рис. 5.20).

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

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

Пример 1. На тело массой т = 2 кг действуют силы F1 и F2, проекции которых на оси координат —-1 Н,             Н;        7 Н,      = 2 Н. Определить проекции и модуль результирующей силы, а также проекции и модуль ускорения тела.

 Напомним, что проекции результирующего вектора равны сумме проекций слагаемых векторов: Ft.=Fl + F0x; =Fli + (рис. 5.21 ). Модуль вектора равен F = . Ускорение прямо пропорционально действующей на тело силе и обратно пропорционально массе тела.


lnsert Matrix

 

х

                 Рис. 5.21                                                             Рис. 5.22

Решение задачи в Mathcad сводится к ввощ векторов и действиям с

ними.

 Введем векторы F1 и F2. Для этого наберем имя, затем знак операции присваивания «: ». С помощью кнопки панели Матрица или команды lnset-t —» Matrix (Вставка —» Матрица) вызовем окно lnsert Matrix (рис. 5.22).

Укажем число строк (Rows) 2 и столбцов (Columns) 1. Заполним шаблоны проекциями векторов:

-1


6

     Запишем сумму векторов и выведем ее значение.

     Для вычисления модуля вектора используем кнопку 1Х1 панели Матрица.

 Результат несложно проверить расчетом по формуле 6 2 + 8 2 10.  Вектор ускорения получим делением вектора силы на массу:

З т : 2    а

4

        Наконец, применим операцию нахождения модуля к вектору а: а)      5

На практике часто приходится решать уравнения, левая часть которых является многочленом от неизвестного х:

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

Решение таких уравнений в Mathcad сводится к заполнению вектора-столбца  коэффициентами (10, (191, (12, , ан (начиная с ао и включая пули) и применениго функции polyroots(V) из категории Solving (Решения). Достоинство этого способа состоит в том, что он не требует определять начальные приближения неизвестных.

Пример 2 „ Найти корни уравнения хз — 12х+ З = 0.

 Зададим шаблон вектора-столбца V с числом строк 4 (на одну больше степени многочлена). Заполним его коэффициентами щ), щ, (12, .. , а п (начиная с ао = З и включая нуль для отсутствующего а2Х2 ).  Применим функцию polyroots(V)•


-3.583

polyroots (V) = 0.251

3.332

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

33,2. Использование операций с матрицами.

Обработка изображений

Ярким примером применения матричных операций служит обработка растровых изображений. Растровое изображение это совокупность (матрица) пикселей, на КиЩЫЙ из которых в модели RGB отводится 24 бит: по 8 бит на каждый из трех основных цветов (красный, зеленый, синий). Наиболее просто обрабаТЫВШЪ серое изображение с глубиной цвета 8 бит, в котором каждому пикселю соответствует значение яркости от 0 до 255. Эти значения можно загрузить в матрицу и подвергнуть преобразованиям. Например, вырезание части изображения сводится к выделению фрагмента матрицы. Так получают различные графические эффекты.

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

Индексы могут иметь только целочисленные значения и начинаться с нуля или единицы, что задается системной переменной 0RlGlN (по умолчанию ее значение равно нулю). Во многих задачах удобнее, чтобы нумерация индексов начиналась с единицы (как и строк и столбцов матриц). Это значение следует установить в начале работы на вкладке Built-in-Variables (Системные переменные) окна Math 0ptions (Параметры) или присвоить ORIGIN непосредственно на рабочем листе.

Пример З „ Создать матрицу А размером З х 4 (три строки, четыре столбца), элементы которой равны сумме номеров строк и столбцов. Выделить фрагменты размером 2 Х 2 из левого верхнего и правого нижнего углов матрицы.

, Установим ORIGIN = 1.


 Зададим ранжированные переменные i : 1.. 4, поскольку матрица имеет три строки и четыре столбца. Для задания элемента на пересечении Ј-й строки иј-го столбца введем имя матрицы А, с помощью кнопки п панели Матрица введем индексы i, j и присвоим значение Ai,j := i +ј. Выведем результат:

ORIGIN :

 Для выделения фрагмента матрицы используем функцию submatrix из категории Vector and Matrix (Векторы и матрицы). Ее аргументы имя исходной матрицы, индексы первой и последней строк и первого и последнего столбцов выделяемого фрагмента:

2 3 5 6 submatrix(A, 1 , 2, , 2)                submatrix(A , 2 , З , З , 4) — 6 7

Функцию submatrix можно использовать для выделения фрагментов с обратным порядком следования строк (столбцов). Для этого нужно поменять местами аргументы (например, индексы начальной и конечной строк). Так, в примере можно получить такой фрагмент:

 7 submatrix(A,3 , 2,3 , 4) —

5 6


Пример 4. Загрузить изображение timer.bmp. Преобразовать его: получить фрагмент, повернуть на 1800 , отразить зеркально и повернуть на 180 0 фрагмент изображения. Получить негативное и тонированные изображения.            Установим .

 Применим функцию READBMP(”timer.bmp”) из категории lmage Processing (Обработка изображений) для загрузки в матрицу М значений яркости пикселей изображения из файла timer.bmp.

 Для определения ширины и высоты h изображения в пикселях (т. е. количества столбцов и строк матрицы) применим функции c01s и rows из категории Vector апс1 Matrix (Векторы и матрицы) (рис. 5.23).


 Выведем исходное изображение на экран (рис. 5.24). Для этого впишем имя матрицы М в шаблон, который вызовем командой lnsert —» Picture (Вставка —» Изображение) или нажатием кнопки на панели Матрица.  Для преобразования изображения будем выделять фрагменты матриц: submatrix(M, 1, ПО, 10, 60) обрезание справа;

       М2:= submatrix(M, 11, 1, w, 1)      поворот на 180 0 ;

МЗ:= submatrix(M, 80, 10, 10, 90) — вырезание, поворот на 180 0 и зеркаль-

ное отражение.

     Выведем фрагменты изображения (рис. 5.25).

Создадим матрицу фона F с яркостью пикселей, например 20, и матрицу негатива ль (из максимальной яркости 255 вычтем значения для каждого пикселя).

                                                     1..w F1            20                (255 - М)

 Выведем негативное /V и тонированные изображения (рис. 5.26). Эффект тонирования (одноцветной раскраски) изображения получается благодаря выводу матриц изображения и фона в каналы цвета RGB. Для этого в шаблон вы-


ORIGIN 1 м : READBMPCtimer.bmp“)

сок (М)         = 100

 

 

 

h.

rows(M) 11 = по

м

 

мз

 

рис. 5 23

рис. 5 24

рис. 5 25

 

Рис. 5.26

вода изображения вписываются имена трех матриц: для красного, зеленого и синего цветов.

1.    Как вводятся векторы и матрицы в системе Mathcad?

2.    Какие уравнения можно решать с помощью функции polyroots()?

З. Что представляет собой растровое изображение?

4.   Как вывести изображение на экран?

5.   Как выделить фрагмент изображения?

Упражнения

1 . Три вектора заданы проекциями: Д 2; 6; —1), В(б; —2; 5) и C(12; 0; 6). Определите проекции и модули векторов: D = А + В + С; Е = А — В — С.

2. Найдите корни уравнения с помощью функции p01yroots()•


            а) 3х3 +                  б) ХА — 3х3 — 9х2 +        + 8 = 0.

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

4. Выделите два фрагмента изображения из упражнения З. Поверните первый фрагмент на 180 0 , превратите второй фрагмент в негатив. Выведите изображения на экран.

ё 34. Решение систем уравнений и неравенств

В курсе алгебры Вы познакомились с некоторыми способами решения систем уравнений с двумя неизвестными. Решение систем с бОЛЬШИМ кОЛИЧсстВОМ уравнений и неизвестных весьма трудоемко и требует ПРИМСЧНШЯ вычислительной техники.

Рассмотрим сначала решение систем линейных уравнений. Напомним, что решением системы двух линейных уравнений с двумя неизвестными

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

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

Решением этой системы является упорядоченный набор значений неизвестных Х], Х2, хп (обозначаются одной буквой х с индексом, который соответствует номеру неизвестного). Коэффициенты при неизвестных обозначены буквой аij с двумя индексами: первый индекс i соответствует номеру уравнения, а второй номеру неизвестного. Числа в правых частях уравнений обозначены буквой Ь с индексом, соответствующим номеру уравнения.


Символически систему уравнений можно записать в сокращенном виде: АХ=В.

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

                            в-    х-

В математике такие таблицы называют матрицам! (в программировании им соответствуют МаССИВЫ ).

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

 Введем матрицу коэффициентов при неизвестных А и вектор-столбец В правых частей системы уравне- Рис. 5.27 ний. Для этого наберем имя матрицы, затем знак операции присваивания ». В окне lnsert Matrix укажем число строк и столбцов и заполним появившийся шаблон (рис. 5.27). Для вектора В укажем число строк З и число столбцов 1.

      Применив функцию Isolve (А, В), получим решение (рис. 5.28).

0.594

вlsolve(A , В) — 0.176

-0.251

Рис. 5.28


Для решения систем уравнений и неравенств с п неизвестными х], х,2, . х используется рассмотренная ранее конструкция Given — find (Дано — найти). Наибольшая трудность при решении систем нелинейных уравнений состоит в определении начальных приближений. Они должны задаваться до блока решения, который начинается ключевым словом Given (Дано). Внутри блока помещаются уравнения, а также неравенства. Завершает блок решения функция от п аргументов х ). Они перечисляются в том порядке, в котором будут выведены в вектор-столбец решения системы. Подчеркнем, что внутри блока решений используются знаки логического сравнения (<, > Э, жирный знак равно «=» ) которые связывают левые и правые части уравнений и неравенств.

      4 Зриме      Решить систему уравнений

 Зададим начальные приближения (например, 1; 1), которые определим графическим способом (рис. 5.29).  Наберем ключевое слово Given.

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

      Завершив блок функцией find(x,y), получим решение системы (рис. 3.30, а),

                    Рис. 5.29                                                                           х

                         а               у :  1                               у :

                                                 Given                                                     Given

                                                                                                   З                                                                                             З

                                                   2                                                           

 

0.382

 

6nd(x , у) —

 

2.618

 

-0.854

find(x , у)

5.854

Рис. 5.30


 Введем в блок решения неравенство х > 2. Получим второе решение (рис. 5.30, б).  Третье решение (—2; З) получим, задав начальные приближения —2; I либо введя в блок решения неравенство х < —1.

Конструкция Given — find позволяет получать также решение простых алгебраических уравнений и систем (например, линейных, квадратных, кубических) в символьном (аналитическом) виде. В этом случае начальные приближения перед блоком решения не задаются. После символьных решений можно поставить знак вычислений «=» и получить численные решения (рис. 5.31 ).

Given

З

-2 2.618

2

fmd (х , у)

                                                                                                                                                       З        5.854 -0.854

Рис. 5.31


1.    Назовите этапы решения системы п линейных уравнений с п неизвестными.

2.    Назовите этапы решения систем уравнений с помощью конструкции Given — find.

З. Как задается блок решения?

4. Как получить символьное решение системы алгебраических уравнений с помощью конструкции Given — find?

1.      Найдите решения системы ЛИНс*ЙПЫХ уравнений:

                Xl — 3 Х) + 2Х3 + 3Х4 = 2,                                                 + 3х3 2х4

       3х1 -2х2 + 5х3 - 4х4 = 1,      6Xl — 4Х2 + 3х3 -5х4 = 12,

а)б)

           7х1 + 5х2 + 2х3 + 3х4 = з,              3Xl - 7Х9 + 5Х3 - 3Х4 - 5,

                         + 2Х2 - 7Х3 + 2Х4 = 4;                         2Xl + 8Х2

2.     


Найдите решения системы уравнений и неравенств с помощью конструкции Given — find (начальные приближения определите графически):

а)

sin(4x — 1)        1,

б)

sin(5x — 2) = у - 2,

 

х 2 = cosy;

 

х = COSW,

в)

   -2х 2 = у-з,

г)

cos(3x — 1) = у - 1,

 

У - 15х2 - 7;

 

х = tg(y — l);

2,

Д)е)

7. заК. 170.

ё 35. Способы и скорость передачи информации

Человек, животные, технические устройства при передаче и приеме информации вступают в контакт друг с другом. Этот процесс называется коммуникацией. Слово «коммуникация» произошло от латинского comnzunicatio сообЩенше, переДача.

описывают процессы передачи информации от источника к приемнику.

Человек всегда стремился использовать различные способы передачи информации. Среди них выделим основные: механические Движения, звуковые и электромагнитные волны, электрические напряжение и токи, электронные лазерные ПУЧКИ и др.

Синхронизация процессов передачи информации предполагает согласование их во времени.

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

Витая пара состоит из двух или более пар проводов, скрученных друг с другом. Скручивание проводов уменьшает влияние электромагнитных полей на передаваемые сигналы и повышает помехоустойчивость (рис. 6.1). Скорость передачи информации для данного типа кабеля составляет 0,25—1 Мбит/с.

Коаксиальный кабель состоит из центрального изолированного проводника, поверх которого расположен другой проводник, играющий роль экрана. Этот кабель обладает высокой механической прочностью и обеспечивает скорость передачи информации 10—50 Мбит/с (рис. 6.2). В настоящее время он интенсивно заменяется новыми видами связи.

Оптоволоконный кабель представляет собой тонкие стеклянные цилиндры. Скорость передачи информации для такого типа кабеля более 50 Мбит/с (рис. 6.3).

                                                  рис. б 2                                              Рис. 6.3

S 35. Способы и скорость передачи информации

При передаче информации важными являются такие показатели как качество и скорость.

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

Скорость передачи информации в компьютерных сетях во многом зависит от способа подключения к сети Интернет. Среди существующих способов подключения выделим слещющие:

коммутируемый доступ по телефонной линии; беспроводное мобильное соединение (GPRS); доступ по ассиметричной абонентской линии (ADSL); беспроводная цифровая связь (Wi-Fi); доступ по выделенному каналу связи; спутниковый доступ и т. д.

Доступ по телефонной линии (или диалап-соединение от английского dial-up, что означает «набрать номер») нам уже известен. Скорость работы при таком способе невысокая. Она зависит от скорости приема и передачи данных с помощью модема и скорости передачи информации по магистральному каналу связи провайдера. Например, при наличии на компьютере модема, работающего со скоростью 56 Кбит/с, скорость передачи информации по телефонной линии находится в диапазоне от 35 Кбит/с до 45 Кбит/с.

Беспроводное мобильное соединение с помощью специального протокола мобильной связи позволяет обеспечить среднюю скорость передачи данных от 30 Кбит/с до 40 Кбит/с, При таком соединении скорость передачи данных зависит также от типа мобильного телефона.

Доступ по асимметричной абонентской линии является специальным видом подключения к сети Интернет по обычной телефонной линии, но не мешает работе телефона. Такой доступ обеспечивает передачу данных по направлению к пользователю со скоростью до 8 Мбит/с, а от пользователя до 770 Кбит/с, в зависимости от протяженности и качества линии.

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

1. Какие процессы описывают коммуникационные технологии?

2. Какие способы передачи информации вам известны?

З. От чего зависит скорость передачи информации в компьютерной сети?

4. Какие единицы измерения скорости передачи информации используются в компьютерной сети?

ё ЗБ, Службы сети Интернет

ЭБ. 1 . Основные службы сети Интернет и протоколы

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

С назначением и возможностями Всемирной информационной паутины Wide Web — WWW) и электронной почтой (Electronic Mail e-mail) мы уже знакомы. Назначение и возможности ОСТаЛЬНЫХ служб рассмотрим в этом параграфе позже.

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

Важнейшими протоколами сети Интернет являются протоколы ТСРЛР.


Протокол управления передачей ТСР (Transmission Control Protocol) предназначен для установки логического соединения между компьютерами клиентов и сервером, разбивает информацию на пакеты и контролирует доставку этих пакетов в пункты назначения.

Межсетевой Интернет-протокол IP (lnternet Protocol) определяет адресацию при передаче информации и обеспечивает организацию транспортировки этой информации в пункты назначения по определенным маршрутам.

Протоколы TCP/IP тесно взаимосвязаны, поэтому в сети Интернет их объединяют и говорят о едином протоколе TCP/lP.

При работе с веб-страпицами во Всемирной паутине используются протоколы передачи гипертекста НТТР (НурегТех4 “lTansfer Protocol), который определяет формат и порядок обмена сообщениями между клиентом и сервером.

При работе с электронной почтой чаще других ИСПОЛЬЗУЮТСЯ Простой Протокол Передачи электронной почты SMTP (Simple Mail Тгапфг Protocol) и Протокол Почтового отделения РОР (Post ()ffice Protocol).

С помощью протокола SMTP сообщения передаются от рабочего компьютера клиента к серверу провайдера, а также осуществляется передача сообщений между серверами отправителей и получателей.

Протокол РОГ) используется для передачи электронных сообщений из почтовых ящиков клиентов, размещенных на сервере, на их рабочие компьютеры при помощи программ-клиентов.


S 36. Службы

ЗБ.2. Средства обмена информацией в режиме реального времени

К средствам обмена информацией в режиме реального времени относится целая группа программ-мессенДжеров (от английского слова messertger связной, курьер).

Программы-мессенджеры позволяют обмениваться через сеть Интернет текстовыми, голосовыми и даже видеосообщениями.

Известными программами-мессенджерами, которые популярны среди пользователей, являются программы ICQ и Skype.

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

Интернет

 

197

 

 

Для голосового общения в программе Skype пользователю необходимо иметь на своем компьютере средства мультимедиа: звуковую карту, микрофон, колонки или наушники.

Skype* - Создать пользователя

Полное ютя

Выберите Пуре ил;

Перле

Пезтк№ите пералъ

 

                      Эл. адрес              

зто единственный способ восстановить забытый пароль.

Е Дэ, халате уне НПВС<ТИ хеБые предложения ЗУ:уре

                      Горад                        

                                                            в Пуре втузе Т,ртренмы

После установки программы Skype на вашем компьютере необходимо зарегистрироваться в окне Создать пользователя, указав имя, пароль и некоторые сведения о себе (рис. 6.4).

Рис. 6.4

198

Skype №a - aleks_puptsau

 

 

 

МПК; Tsofin                  (В сети) 5КуреУМ чат

 

 

 

Файл                       Дозвонить Чаты аир. Ц!нструменты

4teks_Puptsau

чистррия

добавихь абонента Поиск абинентоа БКуре

Отменить

Позвонить

звонок

                                     имя или                                               с

               В сети                         9 456 039 гюпьзоеатеяей в сети

           добавить “                        • диг•,. азжижнасуи •                          »

горорит;-

Постае,ип наеро ьеосе.',:.

гофри*',

Скайа что ли?

В Минске

этот чат?

'                       А              шрифт                              Л\еКъ _Puptsa(I

     В СУТИ                                                                   тория екг•очена

               Рис. 6.5                                                                               Рис. 6.6

Для добавления контакта с новым абонентом необходимо выполнить в основном окне Skype (рис. 6.5) последовательность действий Инструменты Добавить контакт, а затем в окне Добавить контакт ввести нового абонента и нажать кнопку Поиск.

После этого программа Skype запросит абонента, которого Вы указали, с целью получить разрешение па общение с Вами.

Вызов абонента с компьютера в программе Skype ВЫПО.ЛПЯ€*ТСЯ двойным щелком левой клавишей мыши по необходимому контакту или одинарным щелчком этой клавишей по пиктограмме Позвонить (см. рис. 6.5). У вызываемого абовента появится сообщение о ВЫЗОВС. После завершения разговора необходимо щелкнуть левой клавишей мыши по кнопке Отменить звонок (см. рис. 6.5).

Используя контекстное меню основного окна программы Skype, пользователь может осуществить текстовый диалог (беседу в чате) (рис. 6.6) пункт меню Чаты, выполнить звонок с компьютера на телефон пункт меню Позвонить (см. рис. 6.5) и т. д.

Программа Skype позволяет вести телеконференцию в сети.

Под телековфере;щкей в сети Интернет понимается одновремеппое общение нескольких абонентов с помощью голоса или видео.

Для начала телеконференции в программе Skype необходимо выполнить последовательность действий: Позвонить —» Начать конференц-звонок —» в окне Начать Skype конференц-звонок добавить абонентов для конференции —» Старт (рис. 6.7).

Телеконференция может быть осуществлена сразу с десятью абонентами.

ЗБ.З. Форумы


это сайты для публичного обмена сообщениями между пользователями.

В основу структуры форума положены треды (от английского thread нить). Первое сообщение в треде задает тематику сообщений (тему для обсуждения), например Кроссворд (рис. 6.8). Затем идут первые комментарии к теме обсуждения и последовательность ответов, как показано на рисунке 6.9.

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

Философы

отдельные труппы:                                                                                                                                                 о Кзхдый м•хет поапаеат•сз на атот форум

Пекизть!отреаэктироеать сости

Подписзтьо* нз фрру-м

В данном форуме Вы можете задать любые вопросы преподавателю и студентам Вашей группы по-

материалам kypcat па проблемам, которые у Вас возникают.

По всем техническим вопросам или проблемам обращайтесь к консультанту

                             Обсуждение                                                      Начато                                Группа              Ответы           Последнее сообщение

                                                                                                                                                 Философы                                                           Мзрыа

Кроеевфд                                                                            Денис                                                                                                     Thu 18 ett2007, 17:03

                                                                                                Денис                                     Фяпсафы'                        1                                 Алесь

в Курск

Философы   Марна прббяены.епрв           -                      Boris                        1                      Тое                  05:14

200

 

 

 

 

Глава 6. Коммуникационные технологии

 

 

 

 

 

 

 

 

Рис. 6.8

Отдельные группы:

Кроссёорд

от

Перепутаны понятия “вертикаль" и «горизонталь“

Редактировать Удалить Ответить

Re: Кроссворд ат Ali*and1 тиезаву 18 2007. 16:14

Спасибо эа замечание.

Исправим в ближайшее время.

Пакаээть сообщение-родителя Редактмроеать отделить I Удалить I отеетить

Re: Кроссворд от Марых осКэЬе, 2007. 17:03

Исправила показать сообщение-родитепа Редактировать Отделить Удалить ответить

 

Переместить обсуждение в

Рис. 6.9

ЗБ.4. Новости в сети Интернет

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

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

Например, новости нашей республики мы можем прочитать на сайте Белорусского телеграфного агентства (рис. 6.10).

                                                                                         36. с жбы              Инте нет                                   201

АДРЕСА-

 

 

 

-4

                                                                           .!'7дней:"            рэкономика Бёћа сиц

БЕЛОРУССКОЕТЕЛЕГРАФНОЕ МЕНТСТВО

                                                                                                  И к ть             Быстрый переход по

 

пеЬеход

ФОТОХ

сайтам

Рис. 6.10

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

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

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

Название группы

Содержание темы новостей

Компьютеры (сотр)

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

Отдых (тес)

Отдых, спорт, увлечения

Наука (sci)

Дискуссии, связанные с научной деятельностью

Общество (soc)

Обсуждение социальных и культурологических вопросов

Музыка (music)

Дискуссии на музыкальные темы

Общение (talk)

Обсуждение общих тем

Для чтения электронных сообщений и статей с сервера, обслуживающего сетевые новости, можно использовать программы-браузеры, например Netscape Communicator, или специальные программы для чтения новостей: NewsXpress, For•te Agent и др.

Специальный протокол передачи сетевых новостей NNTP (Net News Transfer Protocol) обеспечивает получение сетевых новостей и возможность помещения информации на доски объявлений сети.

24.07.2007 доступно: телеконференций - 38256, иерархий - 457. Выберите интересующую Вас иерархию телеконференций:

а Русскоязычные иерархии (З)

Рис. 6.11

Поддержку доступа пользователей к сетевым новостям осуществляют специализированные сайты, например сайт Релком.ру (рис. 6.1 1 ).

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

202

 

Глава 6. Коммуникационные технологии

 

 

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

1 . Какие службы сети Интернет Вам известны?

2. Какие функции ВЫПОЛНЯЕТ протокол ТСРЛР?

З. Какие протоколы используются при работе электронной почты?

4.     Какие возможности предоставляют пользователям сети Интернет средства обмена информацией в режиме реального времени?

5.     Что понимается под телеконференцией в сети Интернет?

6.     для чего используются Форумы в сети Интернет?

7.     Какие типы новостей предоставляет сеть Интернет?


ё 37. Телекоммуникации в образовании и культуре

Нам уже известно, что коммуникационные технологии описывают процессы передачи информации.

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

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

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

Белорусские информационные ресурсы в области культуры широко представлены в сети Интернет. Среди них сайты театров, например сайт Национального академического театра им. Я. Купалы (рис. 6.12), сайты музеев и др.


Огромный интерес у пользователей сети Интернет вызывают сайты международных и национальных фестивалей в области литературы, искусства, му-

зыки, народного творчества и др. Большой популярностью

в мире пользует-

НАЦИНМЬНЫ

АКАДЭММЫ

ТИТР мя

ЯНЮ КУПАЛЫ

                                                           НАВМЫ                                                         НАВМЫ                                                                       АФИША

                                                  РЭПЕРТУАР          ГАСТРОШ КУПАЛАУСПГА У ттвЕ

1 20-22 снежня НацыянаЉНЫ акадзмјчны тэатр irvw mki Купалы 2 - Пампчальная мал1тва пстерыя выступЩь з гастролямЈ у Вћьнюсе, Лтва. На сцэне ЛтоУскага З - Каханне у стылј барока ГМЕРЭЯ нацыянальнага драматычнага тэатра КупалаУсК прадстав№ спектакл1 6 - Таполевая завея «Чорная панна НясаЬка» А.Дударава i «СВ.» паводле А.П.Чэхава.

                                                   ГАСЦЯВАЯ                                                                                                                                     7 - Слуга двух гаспадароУ

(камедыя у 2-х дзеях) (П)

СХЕМА ИЛЫ Гастролј праводзяцца пры падтрымцы мистэрства культуры РэспублЈк1 9 - ПаУлЈнка Беларусь, Пасольства Рэспублк Беларусь у штоУскай Рэспублјцы i

ФОРУМ Пасольства Лтвы у Беларр у рамках мерапрыемстваУ да 15-й 15, 16 - Дзе:.ј Ванюшына (П) гадав(ны з дня падпЬання Дагавора аб устанаУленнЈ дыпламатычных 17 - Маэстра

                                                            ТРУПА                        знос1н памЬк Беларуссю i Лтвой i Дагавора аб доУгатэрм№овым 19, 20 - Чорная панна

ММНСТРАЦЫЯ супрацоУн{цтее пам(ж двума нацыянальнымђ тэатрам[ Партнёр 21 - Вольта (П) гастроляУ пјузавод ”АлЈварыя". Дагаворам прадугпеджана арганьацыя 22 - Вечар кантмты абменных гатроляУ, сумесных пастановак спектакляУ, правядзенне 23 - Макбет (П) тэатральных фестываляУ, юбћейных мерапрыемстваУ, запрашэнне 24 - Я не пакјну цябе артыстау на працу, абмен пастановачнымј групамј. 26 - Сымон-музька

27 - МЖНАРОДНЫ ДЗЕНЬ

Рис. 6.12

См. тате Аккредитация прессы Средства массовой информации

Главная

14:32 13/07/2007 «Дайджест» автор: «Гудок»

Контрасты «Славянского базара»

На закрывающемся сегодня фестивале искусств побывал специальный корреспондент «Гудка ».

Уже шестнадцать лет каждый июль в Витебск съезжаются тысячи людей из ближнего и дальнего зарубежья.

Рис. 6.13

ся сайт Международного фестиваля искусств «Славянский базар в Витебске» (рис. 6.13).

204

 

Глава 6. Коммуникационные технологии


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

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

В настоящее время большое распространение в сети получили телекоммуникационные проекты. В основном такие проекты являются учебными.

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

КаАЩЫЙ телекоммуникационный проект создается с определенными целями для решения общих для участников проекта проблем и направлен на достижение совместного результата.

Примером известного учебного проекта является проект «Открытый колледж», который предназначен для расширения и углубления знаний школьников по различным учебным дисциплинам: физика, математика и т. д. (рис. 6. 14)

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

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


Широкое распространение в компьютерной сети получило дистанционное обучение.

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

Наиболее распространенными системами дистанционного обучения являются Moodle, Web Tutor, Stellus и др.

Например, система Moodle это система управления содержимым сайта (Course Management System — CMS), специально разработанная для создания качественных онлайн-курсов преподавателями.


ГРУппы2 Информаиуонные технологии в современном общес№е

                                З Отчет»,                                   4?тенз Информационные технологм)' г еоерекченн•и абцес;ее                                                календарь

п» теме

В»просы

Республшя Белзрусь тейлы инф.рмэтиэзиди обрэз•езняя РЕ

Оценки

З Техническое обеспечение компьютера

                                                                                 Темз 2. Техническое обеспеченме компьютерз                                                                              13

п. теме 2                  20                    21                    22                    23                   22                    3-3

евЕрать к•мпъюгерЭ

Общие

                                                                   4 Системное программное обеспечение компьютера                                                                        События в:урсэ

                                                                                                                                                                                                                            события           

.»етемное преурзимное 05еслечение

ГруппоеыеСобытия по теме З           событВаполна; атела

Рис. 6.15

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


В системе Moodle существуют пять типов пользователей: администраторы, создатели курсов, преподаватели, студенты и гости. Каждый из них имеет определенные права на доступ к ресурсам системы.

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

1.    Какие информационные ресурсы сети Интернет относятся к ресурсам в области образования и культуры?

2.    Что содержат образовательные сайты?

З. Приведите примеры сайтов из области культуры.

4.     Что понимается под учебным телекоммуникационным проектом?

5.     Что представляет собой дистанционное обучение?

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

а) образовательные сайты:

Астрономия

w№v.astroiab.ru

Ресурс об объектах Вселенной

www.astrotop.ru/

Каталог астрономических ресурсов

Русский язык и литература

://www.gramma.ru/

Сайт «Культура письменной речи»

http://slovar.boom.ru

Толковый словарь современной компьютерной лексики

http://bookzsu/

Большая электронная литературная библиотека

Математика

www.mathnet.spb.ru

Сайт «Элементарная математика »

http://www.mathtest.ru/

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

Физика

http://school.komi.com

Дистанционная физическая школа

www.fizika.ru/

Сайт «Физика.ги: учебники, тесты, лабораторные занятия».

Химия

http: www.chemistry.ssu.samaraxu/

Сайт «Органическая химия»

http•//optimag.narod.ru/

Химия для любознательных

Английский язык

http: www.study.ru/

Большой портал по изучению английского языка

www.translate.ru/

Онлайн-словарь и переводчик


б) информационные сайты в области культуры:

www.balet.by/

Национальный академический Большой театр балета Беларуси

 

www.theatre.vitebsk.by

Национальный академический драматический театр им. Я. Коласа

 

 

http://www.menka-museum.com/

БеларускЈ дзяржаУны музей дойлцства i побыту

 

http://www.russianmuseum.spb.ru/

Художественные музеи и картинные галереи России

 

http://www.hist.msu.ru/ER/museum.htm

Музеи мира в сети Интернет

 

http://forums.tut.by/

Форум «Культура и искусство Беларуси»

 

http://www.museumshome.com

Музеи Беларуси

* ё ЗВ.Коммерческая и рекламная деятельность в сети Интернет

Коммерческая деятельность в сети Интернет (электронная коммерция) является важнейшим составляющим элементом рынка товаров и услуг.

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

В настоящее время организация коммерческой деятельности в сети Интернет подразделяется на несколько основных видов:       предложение товаров в сетях;           системы и средства платежей;          электронная продажа товаров.


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

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

Примером электронной витрины является витрина белорусского торгового портала shop.open.by (рис. 6.16).

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

В качестве средств оплаты в сети могут выступать расчетные, кредитные, интеллектуальные карты клиентов и электронные деньги.

т ор г о в ы й п о рт а п

Рис. 6.16

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

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

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

Электронная продажа товаров является наиболее сложной системой продажи и состоит из НеСКОЛЬКИХ этапов: Просмотр каталога Выбор товара Оформление заказа (рис. 6.17) Формы оплаты и получения товара (рис. 6.18).

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

                                                                                                              Без сортировки                           Выбор товара                                                                     паспорт

                                                                    Каталог товаров                                 Satellite L40-i“4B-               »:Hd9t'6Yk НР Compaq 67155

логин: Незарег.

Акустика, товаров: Ю

БеспрорбдНЁАСВйЈЬ валюта: USD двери

ВСеГО4

Кл:аэиатуры

Оформление

Мониторы заказа

                                                            Оборудование                        velcom:                                                Velcom:      29)3529675

                                                           МЫШИ                                       мтс: (029)2701993                          мтс: (029 2701993

                                                             Ноутбуки                                 G%3E12Mb/120Gb/DVD-       АМО@ Ти;-јоп №

Ноутбуки Acer RW/Wi-Fi/X3100 Ghz,2-x ядерн* й), 1024 МЬ 358Mb/15.4WXGA/winXP DDR2, 120 Gb, 'deo АПО ноутбуки НР                    Radeon@ Xpress 250 ир

Ноутбуки Deli 256Mb, DVD+RW, 8,4” WXG ноутбук Sony                   19 20 ф.

                                                                                                                      850 $ USA 1 836 ООО р.              890 $ USA

Ноћ5ук Asus

                         Рис. 6.17                НбУтбук МасђаоКАрр\е

USD

                                                                                                          Ноутбук НР Compaq 6715s                      890                                      890


ИТОГО:

                                                                                                                   бесплат€ая доставка по городу Минску: Б                                горо.гы« глс    2

                                                                                                                  Наличными Оплата курьес.а,' Н&ПИЧНЫГ.,”,•,-

Итоге:

                         Рис. 6.18                                                                                                                          пересчитать »          далее »            вернуться в магазин »

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

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

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

S 38. Коммерческая.е=њдеятельность в сети Ицхнет

Mierosoft lnternet Explorer

 

 

Баннер 1

На портале “ Загородная недвижимость” www.PON.ru (Портал Областной Недвижимости) размещена большая база объектов: загородная недвижимость в аренду и на продажу. Загородная недвижимость постоянно обновляется, поэтому на портале представлены только актуальные объекты. В безе объектов Вы можете произвести поиск по следующим разделам: продажа загородной недВИЖИЧосги, загородная нелпижимость п аренду. Напомним, что вся база постоянно обновляется, поэтому на портале представлена только актуальная информация.

                        С                                                                                                                                                                                           ндекс Директ

ГОДОМ!

Поиск загородной недвижимости:                                           Коттедж вы Й                                          “ Михайловское“

поселок любой             район: Петродворец             Получение

СПб              разрешений не ' дом, дача, Копед.ч район:             10 типов коттеджей                  строительство.

                                                                                                      Всеволожский                                        Дома от 240 кз,м. до

Покупаю

Копеджный         340 кв,м, поселок                 Цена: З 200 у.е./кв.м.

             Поиск параметре:•-                                                                                                                                                                     ' южная

                                                                                                       премиум-класса                                     коттеджа

Всего в базе                                                           «РУМБолово»  «Поселок         Выгодное                                                                   строится в элитном районе МельничныЙ           2007,               предложение от Ручей, в 11 км от Петербурга по Дороге              Лучший строящийся                 застройщика!

База данных - Продажа:                             жизни,                                                                     е,латсз                                            Ипотека от ВТБ24!

       Элитные               (621)                                                                                                                                                                        Рассрочка!

      Коттеджные поселки (24',                                 подробнее...                                                подробнее, ,,                                                 ( Адрс.е-, п

Загородные дена (1521) земельные учасу.'.* (2292)

квартиры (ИЗБ)

   (543                      Баннер 2        х:илге на

Загородный отдых:

Квартиры в элитном

       Базы отдыха                                                                                                                                                   Копеджный поселок         доме! Достойные

       Коттеджи дг.з отдыха                                                                   “Сестрорецкие                                                                                   соседи! Сосновый

                                                                                                      Дубки“                                                     “Охтинское

бор! Москвз-река!

Коммерческая недвижимость:             раздолье“ предложения      район :

                                                                                                      курортный СПб                                        район:

Полезные фирмы:                                                                        116                                                           Всеволожский

2,3, сродное сроитель•-гьс сблокированный Поселок ”Охтинское Семинары секций               раздолье“ расположен

                           ДИЗЕ;1Н                                                                                 у                                                                                      База недвижимости

коттеджей в живописном месте, материале: Все для дееелопера. берега Финского холмистые долины

Юг,идичесжуе услуги залива рядом с входом в парк «Дубки». окружены густым лесом, недалеко протекает Обучитесь на опорчдовачие Городской образ жизни в тихом река Охта, что делает это место особенно , семинаре! курортном месте. Чистый мэрской привлекательным для любителей рыбалки. mbschoo\.ru воздух, пляж.

Агентства Е середе            аодроакее... Ипотека                 подробнее...

Открытие страницы                                                                                                           В                                                                       

Рис. 6.19

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


1. На какие виды подразделяется коммерческая деятельность в сети Интернет?

2. Из каких этапов состоит процесс электронной продажи товаров?

 З. Где размещается электронная реклама в сети Интернет?

4. Что размещается на веб-сайтах рекламодателей?

5. Что представляют собой баннеры?


ПРИЛОЖЕНИЕ 1

Работа в интегрированной среде программирования

Borland Pascal 7.0

Меню File


Назначение: выполнение операций с файлами текстов программ.

Команда

Назначение

New

Открытие окна для нового файла

Ореп (П)

Открытие (загрузка) файла

save (Р)

Сохранение файла с прежним именем

Save As

Сохранение файла с новым именем

Save АП.

Сохранение файлов всех открытых окон

Change сиг...

Установка текущего каталога

Exit (Alt+X)

Выход из среды программирования

Меню Edit

Назначение: выполнение операций редактирования текста программы.

Команда

Назначение

Unclo

(N1+13ackspace)

Отмена последней операции редактирования текста (откатка)

Слл[

(Shill+Delete)

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

Сору

( C[rt+Irrse14)

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

Paste

( Shiit+Inset-t)

Копирование выделенного текста из буфера обмена в ОКПО редактора

(Леаг

Удаление выделенного фрагмента текста, минуя буфер обмена

Меню Search

Назначение: выполнение операций поиска и замены в тексте программы.

Команда

Назначение

Find

Поиск текста

Replace

Поиск текста и замена его новым текстом

Меню Run


Назначение: выполнение команд управления ходом выполнения программы.

Команда

Назначение

Run (Ctrl+F9)

Компиляция, компоновка и выполнение программы

Трасе into (F7)

Построчное выполнение программы

Схо to cursor (F4)

Выполнение программы до курсора

Меню Compile

Назначение: выполнение команд компиляции и компоновки программы.

Команда

Назначение

Compile (Xt+F9)

Компиляция программы

Information

Получение информации о программе и системе

Меню Debug

Назначение: выполнение команд, связанных с отладкой программы.

Команда

Назначение

User screen (Alt+F5)

Открытие окна пользователя (окна вывода результатов выполнения программы)

Меню Window

              Назначение: выполнение команд управления окнами.    

Команда

Назначение

Tile

Разместить окна мозаикой

Cascade

Разместить окна каскадом

Close all

Закрыть все окна

Next (F6)

Перейти к следующему окну

(Alt+F3)

Закрыть активное окно

Меню Неф


Назначение: получение справочной информации.

Команда

Назначение

Contents

Получение содержания справочной системы

lndex (Shift+Fl )

Вызов тематического указателя

Topic search (Ctrl+Fl )

Вызов помощи по заданной теме

Procedures and functions

Получение списка процедур и функций

Reserved words

Получение списка ключевых слов языка Паскаль

Standar-t units

Получение списка стандартных мощлей

Borland Pascal Language

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

Еггог massages

Получение информации о системе сообщений об ошибках

Окно текстового редактора

Назначение: создание и редактирование текстов программ (ввод текста программы, удаление и вставка символов и строк, «разрезание» и «склеивание» строк, поиск и замена текста, операции с фрагментами текста).

Для перемещения курсора используются курсорные клавиши, клавиши Ноте, End, PageUp, PageDowrl.

Смена режимов ввода текста (вставка замена)   Insert. Удаление текущей строки — Ctrl+Y.

Удаление символа слева от курсора (под курсором) — Backspace (Delete).

Получение отступов в строке — ТаЬ.

Отмена последней операции редактирования текста (откатка ) Nt+Backspace.

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

Максимальная ширина окна редактооа составляет 78 знаков. При продолжении ввода текста он смещается влево.

Ошибки компиляции


Причина возникновения: ошибки, связанные с нарушением синтаксиса языка Паскаль.

Код ошибки

Характер ошибки

 

011t от- теплоту (Компилятору не хватает памяти)

2

Identifier expected (Требуется идентификатор)

На месте позиционирования курсора должен находиться идентификатор; возможно, неправильно используется зарезервированное слово

з

Unknown identifier (Неизвестный идентификатор)

Идентификатор не описан или неправильно написано зарезервированное слово

4

Duplicate identifier (Повторение идентификатора) Идентификатор описан дважды

5

Syntax error (Синтаксическая ошибка )

Обнаружен недопустимый символ; возможно, строка не ограничена апострофами

6

Еггог in real constant (Ошибка в константе вещественного типа) Неверный синтаксис константы вещественного типа

7

Е'ттог if1             (Ошибка в константе целого типа) Неверный синтаксис константы целого типа

8

String constant exceeds line (Выход строки за ДОПУСТИМЫС границы) Возможно, не закрыт апостроф строки

 

Unexpected end от iile (Неожиданный конец файла)

Пе закрыт комментарий, или нарушена вложенность операторов Begi11 Епс1, или количество этих операторов различно, или нет точки в конце программы

 

Line too long (Строка слитком длинная)

Превышена длина строки (она не может превышать 127 символов)

12

Туре identi[ier expected (Требуется идентификатор типа) Не указан идентификатор ТИм


Приложение 2

 

 

 

 

217

 

 

 

 

 

 

Продолжение

Код ошибки

Характер ошибки

16

Disk full (Диск заполнен)

Отсутствует место на диске

20

Variable Ктййег expected (Требуется идентификатор переменной)

В указанном месте должен находиться идентификатор переменной

26

Туре mismatch (Несоответствие типов)

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

 

lnteger constant expected (Требуется целая константа)

31

Constant expected (Требуется константа)

32

lnteger ог геа1 constant expected (Требуется целая или вещественная константа)

33

Pointer Туре identifier type (Требуется идентификатор типа)

 

Invalid function result type (Недопустимый тип функции)

36

BEGIN expected (Требуется Begin)

37

END expected (Требуется End)

38

Integer expression expected (Требуется выражение типа Integer)

40

Boolean ехрге»оп expected (Требуется выражение типа Boolean)

41

Орегапс{ types do not match operator (Типы операндов не соответствуют типу знака операции)

42

Еггог in expression (Ошибка в выражении)

 

Illegal assignment (Неправильное употребление присваивания)

50

DO expected (Требуется зарезервированное слово DO)

 

0F expected (Требуется зарезервированное слово ОР)

57

THEN expected (Требуется зарезервированное слово THEN)

58

ТО ог DOWNTO expected (Требуется зарезервированное слово ТО или DOWNTO)

62

Division by аго (Деление на нуль)

Код ошибки

Характер ошибки

64

Cannot Read ог Write variables of type (Нельзя вводить или выводить переменные этого типа)

66

String variable expected (Требуется строковая переменная)

 

String expression expected (Требуется выражение строкового типа)

71

Internal stack overflow (Внутреннее переполнение стека)

74

Constant and case types do not match (Типы констант и выражения оператора case не соответствуют друг другу)

76

Constant out of range (Выход константы за пределы допустимого диапазона)

79

Integer от real expression expected (Требуется выражение типа Real или Integer)

85

expected (Требуется

86

expected (Требуется

87

expected (Требуется

88

expected (Требуется ”(”)

89

expected (Требуется ”)”)

90

expected (Требуется

91

expected (Требуется

94

expected (Требуется

97

Irwalid FOR соп{го1 variable (Ошибочен тип переменной параметра цикла оператора FOR)

98

Integer variable expected (Требуется переменная целого типа)

 

String length mismatch (Ошибочна длина строковой переменной)

102

String constant expected (Требуется константа строкового типа )

 

Integer ог геа1 constant expected (Требуется константа типа integer или геа1)

 

Сћага&ег expt-ession expected (Требуется символьный тип выражения)

                                                                                                               П№иложение 2                                    219

Код ошибки

Характер ошибки

106

Invalid numeric format (Ошибочное арифметическое выражение для ввода)

200

Division by zero (Деление на нуль)

201

Range check еггог (Выход за границы допустимого диапазона)

205

Floating point overflow (Переполнение при выполнении операции с плавающей точкой)

207

Invalid floating point operation (Недопустимая операция с вещественным числом)

Использование отрицательного аргумента в функции sqrt, или неверное использование функций ТГИПС или Round, или неположительный аргумент в функции Ln

215

Arithmetic overflow error (Ошибка переполнения при выполнении арифметической операции)

Продолжение

Код ошибки

Характер ошибки

 

0verflow in arithmetic operation (Переполнение при выполнении арифметических операций)

 

Case constant out of range (Выход значения селектора за пределы допустимых границ)

 

Еггог in statement (Ошибка в операторе)

 

Invalid floating poiflt operation (Недопустимая операция с плавающей точ-

 

Invalid procedure ог function геГегепсе (Недопустимое обращение к процедуре или функции)

166

Procedure ог function identifier expected (Требуется идентификатор процедуры или функции)

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


Содержание

От авторов

Глава

Информационные модели, системы и технологии

 Информация. Представление и измерение информации                     

      1.1. Понятие информации. Виды и свойства информации.      

5

 

       . 2. Представление информации .    

6

 

       В. Измерение информации             

8

*        Информационные модели                                                                                                            

*        Информационные системы и технологии                                                               

3.1.    Системы и информационные системы                                                                 

3.2.    Технологии и информационные технологии                                                                     

9

Глава а

Аппаратное и программное обеспечение компьютера

 4. Архитектура компьютера .          

           4.1. Общее представление об архитектуре компьютера      

18

          4.2. Процессоры и их характеристики           

19

          4.3. Виды памяти компьютера      

21

          4.4. Внешние типовые устройства .          

23

          *4.5. Выбор аппаратного обеспечения компьютера .              

25

* S 5. Программное обеспечение компьютера            * S 6. Операционные системы . . .       

Глава З

Основы программирования

27

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

33



7.1. Главное окно интегрированной среды программирования Borland Pascal .

7.2. Редактирование текста программы36

7.3. Обращение к справочной системе Неф

7.4. Компиляция и выполнение программы .37

7.5. Отладка программы .

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

Соде жание

 

 

 

221

 

 

 

8. 1 . Алфавит языка

8.2.   Величины

8.2. 1. Константы .

8.22. Переменные .44

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

8.4.   Стандартные подпрограммы46

8.5.   Арифметические выражения .48

S 9. Структура программы50 S 1 Ввод—вывод данных53 Вывод .

10.2. Форматный вывод54

10.3. ввод57

S l l . Оператор присваивания58

S 12. Текстовый и графический режимы66

12.1. Текстовый режим

12.2. Графический режим68 S 13. Создание изображений70

13. l . Задание цвета .

13.2. Построение графических примитивов .

*13.3. Построение сложных графических объектов75

13.4. Заполнение областей изображения76

S 14. Работа с текстом81

14. l . Отображение текста

* 14.2. Установка шрифта и стиля

S 15, Алгоритмическая струюура ВЕТВЛЕНИЕ82

„[ 5. 1 . Логические величины и выражения83

15.2. Условный оператор86 * 15.3. Оператор выбора CASE92

S 16. Алгоритмическая структура ПОВТОРЕНИЕ96

16.1. Цикл с предусловием WHILE

16.2. Цикл с параметром FOR .102

16.3. Смешанные алгоритмы

S 17. Использование алгоритмических структур в графике .

17.1. Графические построения

1 7.2. Программирование ДВИЖУЩИХСЯ объектовl 16

* 17.3. Решение практических задач. Деловая графика .119

222                                         Содержание

 

S 18. Подпрограммы пользователя           

125

 

           18.1. Описание подпрограмм пользователя              

           18.2. Процедуры      

126

 

          18.3. Функции .          

 Глава 4

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

131

 

S 19. Системы управления базами данных .      

135

 

S 20. Основные элементы интерфейса СУБД Access              

137

 

S 21. Создание таблицы базы данных .            

          21.1. Проектирование баз данных      

          21.2. Создание структуры таблицы в режиме Мастера .     

138

 

21.3. Создание структуры таблицы в режиме Конструктора         21 А. Ввод и редактирование данных в таблице       

42

S 22. Связывание таблиц базы данных .           

46

S 23. Модификация структуры таблицы . .            

149

S 24. Создание и заполнение формы .          

            24.1. Возможности создания формы в СУБД Access .         

151

           24.2. Создание формы в Конструкторе .        

152

S 25. Использование фильтров .          

155

 S 26. Поиск данных с помощью запросов .        

            26.1. Запрос на выборку данных по одной таблице            

158

             26.2. Параметрический запрос      

161

             26.3. Вычисления в запросе         

162

S 27. Сортировка записей в таблице .64

S 28. Создание отчетов     

 Глава 5

Вычислительные методы и технологии

S 29. Основы работы в системе Mathcad

166

                                                                                                    . 

          29.1. Основные элементы интерфейса .   

 

           29.2. Основы работы в среде Mathcad .    

170

S 30. Функции. Символьные операции  

173

S 31. Построение графиков .

176

S 32. Решение уравнений .                  

180

S 33. Операции с векторами и матрицами               

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

184

33.2. Использование операций с матрицами. Обработка изображений

186

S 34. Решение систем уравнений и неравенств .                

Глава Б

Коммуникационные технологии

189

S 35. Способы и скорость передачи информации              

194

S 36. Службы сети Интернет                

           36.1. Основные службы сети Интернет и протоколы        

196

           36.2. Средства обмена информацией в режиме реального времени      

197

          36.3. Форумы               

199

           36.4. Новости в сети Интернет                

200

S 37. Телекоммуникации в образовании и культуре .                

203

                                                                    S 38. Коммерческая и рекламная деятельность в сети Интернет. . .                                                             

208

ПРИЛОЖЕНИЕ                    

212

ПРИЛОЖЕНИЕ 2                  

216

(Название и номер школы)

Учебный год

Имя и фамилия ученика

Состояние учебного пособия при получении

Оценка ученику за пользование учебным пособием

20

 

 

 

20

 

 

 

20

 

 

 

20

 

 

 

20

 

 

 

Учебное издание

Пупцев Александр Евгеньевич

Макарова Нина Петровна

Заборовский Георгий Александрович Черняк Аркадий Александрович

ИНФОРМАТИКА

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

(базовый и ПОВЫШеННЫЙ уровни

2-е издание, дополненное

Зав. редакцией В. Г. Бехтина. Редакторы Н. М. Алганова, К. Л'1. Лукашевич. Оформление Б. Г. Киойко. Художественный редактор Л. В, Павленко. Технический редактор М. И. ЧепловоДская. Компьютерная верстка Г. А. ДуДко. Корректоры Т. Н. Ведерникова, Е. П. Тхир, Д. Р. Лосик, В. С. Бабеня.

Подписано в печать 12.03.2008. Формат 70 Х 90 1/16. Бумага офсетная. Гарнитура литературная. Офсетная печать. Усел. печ. л. 16,38. Уч.-изд. л. 11,9. Тираж 153 000 экз. Заказ 170.

Издательское республиканское унитарное предприятие «Народная асвета» Министерства информации Республики Беларусь. ЛИ 02330/0131732 от 01.04.2004. 220004, Минск, проспект Победителей, 1 1 .

Республиканское унитарное предприятие «Минская фабрика цветной печати». ЛП ЛЬ 02330/0056853 от 30.04.2004. 220024, Минск, Корженевского, 20.