Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Шпоры по информатике(1)

.doc
Скачиваний:
43
Добавлен:
02.05.2014
Размер:
498.69 Кб
Скачать

1.Понятие информации.Носители информации.

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

Будем понимать под информацией (information) меру устранения неопределённости в отношении исхода интересующего нас события. Тогда под данными1 (data) будут пониматься объекты любой формы, выступающие в качестве средства представления информации. Можно сказать, что данные – это информация, зафиксированная в определённой форме. Одни и те же данные могут нести различную информацию для разных потребителей. Фиксация информации в виде данных осуществляется с помощью конкретных средств (языковых, изобразительных, числовых и т.д.) на конкретном физическом носителе. Формальное назначение ЭВМ заключается в обработке данных. Причём ЭВМ обрабатывает данные без учёта их смыслового содержания. Для этой обработки используются лишь математические операции. Оценивать смысловое содержание данных может только человек.

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

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

2.Представление и обработка данных.

Для того, чтобы использовать ЭВМ для обработки данных, необходимо располагать некоторым способом представления данных. Способ представления данных будет зависеть от того, для кого эти данные предназначены: для человека (внешнее представление) или для ЭВМ (внутреннее представление).

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

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

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

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

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

На внешнем уровне процедуры представляются в виде алгоритма. Конкретный вид алгоритма зависит от используемого алгоритмического языка (Error: Reference source not found).

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

3. Кодирование информации.

Для автоматизации работы с данными, относящимися к различным типам, очень важно унифицировать их форму представления — для этого обычно используется прием кодирования, то есть выражение данных одного типа через данные другого типа. Естественные человеческие языки — это не что иное, как системы кодирования понятий для выражения мыслей посредством речи. К языкам близко примыкают азбуки (системы кодирования компонентов языка с помощью графических символов). Своя система существует и в вычислительной технике — она называется двоичным кодированием и основана на представлении данных последовательностью всего двух знаков: 0 и 1. Эти знаки называются двоичными цифрами, по-английски — binary digit или сокращенно bit (бит). Одним битом могут быть выражены два понятия: 0 или 1 (да или нет, черное или белое, истина или ложь и т. п.). Если количество битов увеличить до двух, то уже можно выразить четыре различных понятия:

00 01 10 11

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

000 001 010 011 100 101 110 111

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

N=2m,

где N— количество независимых кодируемых значений;

т — разрядность двоичного кодирования, принятая в данной системе.

4. Файлы и файловая структура.

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

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

Уникальность имени файла обеспечивается тем, что полным именем файла считается собственное имя файла вместе с путем доступа к нему. Понятно, что в этом случае на одном носителе не может быть двух файлов с тождественными полными именами.

Пример записи полного имени файла в общем виде:

<имя носителя>\<имя каталога-1>\...\<имя каталога-М>\<собственное имя файла>

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

С:\АВТОМАТИЧЕСКИЕ АППАРАТЫ\ВЕНЕРА\АТМОСФЕРА\ Результаты

С:\РАДИОЛОКАЦИЯ\ВЕНЕРА\РЕЛЬЕФ\Результаты

Первый файл находиться на диске С: в каталоге АВТОМАТИЧЕСКИЕ АППАРАТЫ, в подкаталоге ВЕНЕРА, внутри которого находится подкаталог второго уровня АТМОСФЕРА. (Второй файл Результаты записан в каталоге РАДИОЛОКАЦИЯ, в подкаталоге ВЕНЕРА, внутри которого находится подкаталог второго уровня РЕЛЬЕФ).

5.Историческая справка о этапах развития ЭВМ.

Историческая справка по вычислительной технике: 1) 1642г – Блез Паскаль создал счетную машинку для суммирования десятичных чисел. 2) 1673г – Лейбниц создает прототип арифмометров. 3) 1823г – Чарльз Беббидж создал прототип программируемых счетных машинок. 4) 40-е г. 20 века – программируемые счетные на базе электронных механических реле. 5) 1946г – в США была создана 1-я ЭВМ “ЭНИАК”. В 1950г – в СССР была создана машина МЭСМ, БЭСМ. ЭВМ первого поколения – их элементарная база – электронная лампа. ЭВМ второго поколения (60-е) – элементарная база – полупроводник. ЭВМ третьего поколения (70-е) – элементарная база – интегральные микросхемы. ЭВМ четвертого поколения (80-е) – элементарная база – БИС (большие интегральные схемы). 90-е гг. и далее – СБИС. Перспективы развития – нейтронные сети, искуственный интеллект и т.д. Существует 4 компьютерных платформы – 1. Macintosh (Apple). 2. Umx (Sun MicroSystems). 3. IBM (IBM). 4. PC (Intel, Microsoft Compact).

6.Состав ЭВМ.

ПК состоит из следующих частей: 1. системный блок: а. процессор CPU, б. память. 2. монитор (дисплей). 3. клавиатура. 4. мышь. 5. другие доп. устройства. В системном блоке располагаются: 1. микропроцессор CPU. 2. сикросхема,выполняющая все функции по управлению ПК и все вычислительные операции. По ее названию формируется название компьютера. Основная характеристика – тактовая частота (количество действий в секунду). Микропроцессор с вентилятором находится на материнской плате. 3. жеский магнитный диск (hard disk driver – HDD) – винчестер. 4. опер.-зап. устройство ОЗУ (RAM). 5. дисковод для гибких магнитных дисков (дискет) – FDD – floppy disk driver. 6. Дисковод для компакт-дисков (CD-ROM).

7.Устройства ввода-вывода ПЭВМ.

Устройства ввода – клавиатура, дисковод, мышь, джойстик, сканер и т.д.

Устройства вывода – монитор, принтер, колонки.

8.Перифирийные устройства.

Дополнительные устройства: Принтер – устройство для вывода графической и текстовой информации на бумагу. Существуют 3 типа принтеров – матричные ударные, струйные, лазерные. Матричные ударные – реализуют принцип ***, когда печатающая головка верт. ряд металлич. полок, выдвигающихся из головки и формирующих символ по команде из PC и пропечатывая его через чернильную ленту на бумаге. К достоинствам матричных ударных принтеров относятся: низкая цена, к недостаткам – низкое качество печати, низкая скорость. Струйные принтеры – изображение формируется каплями спец. чернил, выдуваемых на бумагу из дырочек печ. головки. Достоинства: более качественная печать, уве*** изображение. Недостатки – требовательны к качеству бумаги, необходимо квалифицированное обслуживание. Лазерные принтеры – используется принцип ксерографии: изображение переносится на бумагу со спец. барабана, к которому электрически притягиваются частицы порошка (тонера) после прохождения по этой части луча лазера. Достоинства – наилучшее качество печати, высокая скорость печати. Недостатки: высокая стоимость и высокая себестоимость печати.

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

Текстовые редакторы, графические редакторы, антивирусы, фаерволы.

10.Иерархия программных средств по отношению к решаемым задачам.

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

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

3) алгоритмизация задачи. На основе алгоритмического описания необходимо разработать алгоритм решения.

4) программирование. 5) ввод программы и исходных данных в ЭВМ.

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

7) исполнение отлаженной программы и анализ результатов

11. Операционные системы. Общие характеристики.

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

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

ОС – совокупность программных средств, обеспечивающих управление процессов обработки информации, запуск прикладных программ, их взаимодействие с аппаратными средствами. MSDOM, MSWindows, WindowsNT, Unix. Сетевые ОС предназначены для обеспечения доступа пользователя по всем ресурсам вычислительной сети. WindowsNT, Unix, Novell NetWare, IBM LAN. ОС бывают однозадачные, однопользовательские, многозадачные, многопользовательские, сетевые.

Пользовательский интерфейс делится на командный и объективно-ориентированный. Командный предполагает ввод команд с клавиатуры для управления ресурсами компьютера. Объективно-ориентированный интефейс – управление ресурсами вычислительной системы посредством осуществления опреций над объектами. ОС делятся: 1) по типу доступа пользователя: пакеты обработки, 2) на однопользовательские и многопользовательские, 3) по типу задач: однозадачные, многозадачные, 4) по количеству процессов: однопроцесные, многопроцессные, 5) по типы интерфейса. Программный интерфейс см. предыдущий билет – описания программ.

12.Понятие алгоритма. Свойства. Основные характеристики.

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

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

Алгоритмизация задачи - процесс разработки (проектирования) алгоритма решения задачи с помощью ПК на основе ее условия и требований к конечно­му результату.

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

В общем случае алгоритмизация вычислительного процесса включает сле­дующие действия:

  • последовательную декомпозицию задачи, выделение автономных этапов вычислительного процесса и разбивку каждого этапа на отдельные шаги;

  • формальную запись содержания каждого этапа и/или шага;

  • определение общего порядка выполнения этапов и/или шагов;

  • проверку правильности алгоритма.

Алгоритмы обладают целым рядом свойств:

Понятность для исполнителя - содержание предписания о выполнении только таких действий, которые входят в систему команд исполнителя.

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

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

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

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

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

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

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

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

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

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

13.Способы описания алгоритмов. Правила выполнения блок схем.

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

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

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

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

Такое графическое представление называется схемой алгоритма или блок-схемой. В блок-схеме каждому типу действий (вводу исходных дан­ных, вычислению значений выражений, проверке условий, управлению повто­рением действий, окончанию обработки и т. п.) соответствует геометрическая фигура, представленная в виде блочного символа. Блочные символы соединя­ются линиями переходов, определяющими очередность выполнения действий. Для начертания этих схем используется набор символов, определяемых ГОСТ 19.701-90 (ИСО 5807 - 85) "Единая система программной документации". В табл. 1 приведены наиболее часто употребляемые символы.

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

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

Символ "Решение" используется для обозначения переходов управления по условию. В каждом блоке решения должны быть указаны вопрос, реше­ние, условие или сравнение, которые он определяет.

Стрелки, выходящие из блока решения, должны быть помечены соответст­вующими ответами (например, ДА, НЕТ), так чтобы были учтены все возмож­ные ответы.

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

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

Символ "Документ" предназначен для ввода - вывода данных, носителем которых служит бумага.

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

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

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

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

Правила выполнения блок-схем

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

Расстояние между параллельными линиями должно быть не менее 3 мм, между остальными символами схемы - не менее 5 мм.

Записи внутри символа или рядом с ним должны выполняться ма­шинописью с одним интервалом или чертежным шрифтом.

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

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

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

Размер а должен выбираться из ряда 10, 15, 20 мм. Допускается уве­личивать размер а на число, кратное 5. Размер b равен 1,5а. При ручном выполнении схем алгоритмов и программ для символов, представленных в табл. 1, допускается устанавливать b равным 2 а.

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

14.Информационные технологии решения задач. Структуры алгоритмов.

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

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

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

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

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

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

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

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

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

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

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

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

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

15.Сервисные и инструментальные системы.

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

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

ОС – совокупность программных средств, обеспечивающих управление процессов обработки информации, запуск прикладных программ, их взаимодействие с аппаратными средствами. MSDOM, MSWindows, WindowsNT, Unix. Сетевые ОС предназначены для обеспечения доступа пользователя по всем ресурсам вычислительной сети. WindowsNT, Unix, Novell NetWare, IBM LAN. ОС бывают однозадачные, однопользовательские, многозадачные, многопользовательские, сетевые.

Пользовательский интерфейс делится на командный и объективно-ориентированный. Командный предполагает ввод команд с клавиатуры для управления ресурсами компьютера. Объективно-ориентированный интефейс – управление ресурсами вычислительной системы посредством осуществления опреций над объектами. ОС делятся: 1) по типу доступа пользователя: пакеты обработки, 2) на однопользовательские и многопользовательские, 3) по типу задач: однозадачные, многозадачные, 4) по количеству процессов: однопроцесные, многопроцессные, 5) по типы интерфейса. Программный интерфейс см. предыдущий билет – описания программ.

19.Среда Borland Pascal 7.0 for Windows.Общие сведения. Интерфейс.

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

СТРУКТУРА: program <имя> (Input, Ouput); uses <имя1, имя2,…>;

label …; const …; type …; var …; procedure <имя>; <тело процедуры>

function <имя>; <тело функции> begin <операторы> end.

Загловок программы, список подключаемых библиотечных модулей uses, описание меток, описание констат, определение типов данных, описания переменных, описания процедур и функций, begin, операторы, end.

  • File – набор команд для работы с файлами (открытие, сохранение программы);

  • Edit – набор команд для работы с текстом;

  • Search – команды поиска по тексту программы;

  • Run – команды, управляющие выполнением программы;

  • Compile – команды компиляции программы, т.е. получение исполняемого файла;

  • Tools – дополнительные утилиты;

  • Options – настройки среды;

  • Window – команды навигации между открытыми программами;

  • Help – помощь.

16-18.Операционные системы.

ОС (DOS)

DOS – это программа, которая грузится при включении компьютера и осуществляют управление компьютером, его ресурсами (ОЗУ, метом на HDD), запускает прикладные программы на исполнение, а также обеспечивает пользователю и прикладным программам удобный интерфейс с устройствами компьютера.

Внутренние команды:

=1= Команда перехода на другой диск - с:

=2= Команда вызова оглавления каталога - dir

=3= Команда смены текущего каталога - cd name

=4= Команда создания каталога - md name

=5= Команда удаление пустого каталога - rd name

=6= Команда вывода созданного текстового файла на экран - type name.txt

=7= Команда очистки экрана - cls

=8= Команда копирования файла - copy 1.txt 2.txt

=9= Создание текстового файла - copy con name.txt

=10= Команда удаления файла - del name.txt

=11= Переименование файла - ren

=12= Дата - date, время - time, выход - exit

Основные внешние команды DOS:

=1= Форматирование диска format c:

=2= Разбиение диска на область - fdisk

=3= Системный диск - sys c: a: (откуда-куда)

=4= Вывод карты оперативной памяти - mem

=5= Проверка файловой системы и восстановление потерянных кластеров - chkdsk

(потерянные файлы)

=6= Проверка файловой сиситемы и диска на наличие логических сбоев - scandisk a:

=7= Создание или обновление метки диска - label a:

=8= Вывод файла на печать - print name.txt prn

При включении ПК на экране появляется рвбочий стол Windows. В нижней части стола располагается панель задачь, которая раскрывается через кнопку ПУСК. Расположены ярлыки: в виде картинок могут быть представлены все объекты, файлы, диски и т.д. Ярлыки предназначены для выполнения различных действий: запуск программ, открытие файлов и папок, просмотра. Ярлыки бывают 2х типов: системные и созданные пользователем. Системные ярлыки всегда присутствуют на рабочем столе. К системным ярлыкам относятся “мой компьютер” – просмотр содержимого ПК. “Корзина” – временное хранения файла временно удаленного с жесткого магнитного диска. Сетевое окружение – просмотр информации соединенных сеть компьютера. Для открытия (ярлыка) с помощью объекта достаточно щелкнуть по нему мышью. 2-ой способ открытия объекта – щелкнуть правой кнопкой мыши и выбрать в раскрывшемся списке “Открыть”.

Стандартное окно Windows состоит из следующих компонентов: 1) строка-заголовка – отображает имя открытого объекта или запущенной программы. 2) строка-меню. Содержит пункты меню, через которые можно выполнять определенные действия. 3) кнопки управления окном _ - свернуть окно, строку панели задач; □ - развернуть окно в полный размер экрана (после этого повторный щелчек по этой кнопки возвращаемся в исходное положение). х – закрыть окно, заверщить действие программы. Для перемещения окна по рабочему столу установить указатель в строку заголовка, нажать мышь, и не отпуская ее, перемещать контур окна в нужное место. Для изменения размеров окна установить указатель в один из нижних углов окна до появления диагональной стрелки. В любом окне можно найти справку Windows 95. Справочная система является основным источником информации о Windows, ее можно вызвать через пуск. Порядок выключения компьютера: для выключения компьютера надо: 1) закрыть все работающие программы. 2) щелкнуть по кнопке ПУСК, выбрать завершение работы, щелкнуть по строке выключить компьютер (если там нет точки). 3) щелкнуть по кнопке ДА/YES. После появления на экране сообщения – теперь питание компьютера можно отключать, отключить питание на системном блоке.

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

Работа с корзинами: для восстановления ошибочно удаленных файлов открыть ярлык КОРЗИНА , щелкнуть на имя файла для восстановления и восстановить. Для очистки корзины в меню – файл-очистить корзину. Создание ярлыков: большинство создаваемых на рабочем столе предназначены для быстрого запуска программ. Установить указатель в пустое место рабочего стола, щелкнуть ПКМ, выбрать создать-ярлык через кнопку обзор найти исполняемый файл программы и щелкнуть готова.

20. Запуск и отладка программы.

Компиляция – Compile/Make (клавиша F9)

Запуск программы –Run/Run (сочетание клавиш Ctrl+F9)

Помощь при исправлении ошибок при компиляции – Help/Topic Search (Ctrl+F1).

Точка останова (Breakpoint) – Ctrl+F8.

Выполнение команд подпрограмм пошагово – F7

Выполнение команд подпрограмм за один шагF8 .

Просмотр значений переменных: при нажатии Ctrl+F7 появляется окно, в котором следует ввести имя интересующей переменной.

Просмотр результата работы программы – Alt+F5.

Прекращение работы программы – Ctrl+F2.

21.Структура языка паскаль(общая, для всех версий).

Служебные (зарезервированные) слова:

and, array, asm, begin, case, const, constructor, destructor, div, do, downto, else, end, file, for, function, goto, if, implementation, in, inherited, inline, interface, interrupt, label, library, mod, nil, not, object, of, or, packed, procedure, program, record, repeat, set, shl, shr, string, then, to, type, unit, until, uses, var, while, with, xor и другие.

Стандартные директивы Borland Pascal :

absolute, far, name, resident, assembler, forward, near, virtual, export, index, private, external, interrupt, public.

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

константы (Const);

переменные (Var);

выражения;

операторы;

функции, процедуры и модули;

комментарии.

Специальные знаки:

:= - присвоение значения

= - описание значений констант

назначение типа

; - конец оператора

: - описание типа переменой

задание меток операторов

, - перечисление идентификаторов при описании

. . - задание интервала, диапазона

() - группировка арифметических выражений аргументов функций, процедур и т. п

[] - границы массива, обозначение элемента массива

{} - комментарии

' - обозначение символьных и строковых констант

# - обозначение символа с указанием номера кода ASCII

$ - обозначение шестнадцатеричных констант

@ - обозначение адреса переменной

^ - обозначение типа ссылка

+ - / * - знаки математических операций

= <> > < <= >= - знаки операций сравнения

22.Типы переменных.

Структурированные типы

Массивы

Записи

Множества

Файловые типы

Простые типы

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

Порядковые:

целый тип

логический тип

символьный тип

перечислимый тип

тип-диапазон

Строковый тип

Указатели и ссылки

Процедурные типы

Объекты

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

Program NAME;

{ Заголовок программы - не обязательный оператор }

{ NAME - имя программы }

{ Раздел описания }

{$N+}

{Режим компиляции для расчетов с подключением сопроцессора}

Uses CRT, DOS, GRAPH;

{ Подключение библиотек CRT, DOS, GRAPH }

Label L1, L2, L3;

{ Список используемых в программе меток L1, L2, L3 }

Const C=10;

{Задание значений констант, используемых в программе }

B=0. 15; Y=True;

{С- целое число, В- вещественное число }

F='Фамилия';

{ Y- Логическая константа, F- Символьная строка }

Type M= array[1. . 100] of integer;

{Описание типов введенных программистом }

Var

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

m1, m2: M;

{ m1, m2 - массивы целых чисел (типа М) }

a1: array [ 1. . 100 ] of real;

{ а1 - массив вещественных чисел }

ch: array [ 1. . 200 ] of char;

{ ch - массив символов}

ch1, ch2: char;

{ ch1, ch2 - символьные переменные }

s: string[79];

{ s - строка до 79 символов }

a, d, x: real;

{ a, d, x - вещественные переменные }

yes, no: boolean;

{ yes, no - переменные логического типа }

f1, f2: text;

{ переменные для описания текстовых файлов}

Procedure NAME_1(Parm1:Real; Var Parm2:Real);

{ Заголовок процедуры }

{ NME_1 - имя процедуры, Parm1, Parm2 - параметры }

{ Раздел описания }

BEGIN

{ Раздел выполнения }

END;

{ Раздел описания }

Function FUN_1(Parm3, Parm4: Real): Real;

{ Заголовок функции }

{ FUN_1 - имя функции, Parm3, Parm4 - параметры }

{ Раздел описания }

BEGIN

{ Раздел выполнения }

END;

{ $I File_1. pas }

{Подключение файла File_1. pas с дополнительными функциями и процедурами }

BEGIN

{ Начало выполнения программы}

{ Раздел выполнения }

END.

{ Конец выполнения программы }

24.Операции и стандартные функции.

Таблица 1. условные знаки и служебные слова для описания различных операций.

Приоритет операции

Условный знак

Выражение

Название операции

Тип переменных в выражении

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

ЛОГИЧЕСКИЕ

ОПЕРАЦИИ

1

not

not A

логическое "не"

логический целый

логический целый

2

and

A and B

логическое"или"

логический целый

логический целый

3

or

A or B

логическое «или»

логический целый

логический целый

3

xor

A xor B

логическое

исключающее

”или”

логический

целый

логический

целый

МАТЕМАТИЧЕСКИЕ ОПЕРАЦИ

2

*

X * Y

умножение

Целый смешанный вещественный

целый при умножении целых чисел, иначе вещественный

2

/

X / Y

деление

2

div

N div M

деление

целый

целый

2

mod

N mod M

остаток от деления

целый

Целый

3

+

X + Y

сложение

Целый смешанный вещественный

целый при операции с целыми чисел, иначе вещественный

3

-

X - Y

вычитание

ОПЕРАЦИИ

СРАВНЕНИЯ

4

=

X = Y

равно

число = число строка=символ

строка= строка (аналог.для всех опер. сравнения )

логический ( для всех операций сравнения )

4

<>

X <> Y

не равно

4

>

X > Y

больше

4

<

X < Y

меньше

4

>=

X >= Y

больше или равно

4

<=

X <= Y

меньше или равно

Таблица 2. СПЕЦИФИЧЕСКИЕ ОПЕРАЦИИ

Приоритет операции

Условный знак

Выражение

Название операции

Тип переменных в выражении

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

1

@

@X

адрес переменной

любой

указатель

2

shl

Y shl N

сдвиг влево

целый

целый

2

shr

Y shr N

сдвиг вправо

целый

целый

2

*

C * D

пересечение

множество

множество

3

+

C + D

объединение

множество

множество

3

-

C - D

вычитание

множество

множество

3

+

S + T

сложение

строка, символ

строковый

4

in

E in D

вхождение в множество

элемент  в множество

логический

25. Операторы ввода и вывода данных.

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

Оператор присваивания – это самый основной оператор. В нем выражение с правой стороны и индет. результата разделены знаком присваивания :=

Например: y:=x + 5 div 2

Оператор вызова процедуры служит для активизации предварительно определенной пользователем, или стандартной, процедуры. Например: clrscr; и т.д.

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

Оператор безусловного перехода go to означает “перейти к “ и применяется в случаях, когда после выполнения некоторого оператора надо выполнить не следующий по порядку, а какой-либо другой, отмеченный меткой оператор. Пример: go to metka1;

ВВОД-ВЫВОД ДАННЫХ: процедура чтения Read ввод числовых данных, символов, строк и т.д. для последующей их обработки программой. Формат: read(x1,x2,x3…); или read(FV, x1,x2,x3…); , где х1,х2,х3.. – переменные, FV – переменная, связанная с фалом, откуда будет выполнятся чтение. Процедура чтения Readln аналогична процедуре Read, только осуществляется переход на следующую строку. Процедура записи Write производит вывод числовых данных, символов, строк и булевских значений. Формат: Write (x1,x2,x3…); или Write (FV,x1,x2,x3…);

где x – переменные, FV – имя файла, куда производится вывод. Writeln – перевод на другую строку.

26.Операторы ввода данных с клавиатуры.

Read("список переменных");

Readln("список переменных");

Write('введите значение а='); Readln(a);

введите значение а= .

Readln(a); Readln(b); Readln(c); или Readln(a, b, c);

Readln(с1, с2, с3, c4); {ожидает ввода значений символьных переменных с1, с2, с3, c4, например: "У", "Р", "А", "!" и нажатия Enter }

Writeln(с1, с2, с3, c4); выведет на экран надпись: УРА!

27.Оператор выбора.

Case "параметр" Of

"список помеченных операторов"

Else "оператор" End;

Пример операторов для определения порядка целого числа N от 0 до 999:

case N of

0..9: writeln('однозначное');

10..99: writeln('двузначное');

100..999: writeln('трехзначное')

else writeln('Число "N" не входит в указанный диапазон') end;

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

IF "условие" Then "оператор1" Else "оператор2";

Например, вычисление квадратного корня из числа "a" проводится при условии a>=0,

IF a >= 0 Then b:= Sqrt(a) Else begin WriteLn ( 'a<0' ); Readln; Halt end;

Оператор Halt прекращает выполнение программы.

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

С параметром

For i:= N1 To N2 Do "оператор";

For i:= N1 DownTo N2 Do "оператор";

С условием

While "условие" DO "оператор";

Repeat "операторы" Until "условие";

"условие" - выражение логического типа (Boolean).

30.Оператор перехода к метке.

Goto "метка";

M1: Write('Введите x>=0'); Readln(x); If x<0 Then Goto M1;

Метки описываются в разделе описания, например: Label M1;

31.Линейные массивы.

Описание массивов:

Var A: array[ 1. . 30 ] of byte;

S: array[ 1. . 30 ] of string;

SO: array[ 1. . 30 ] of string[12];

Присвоение значений элементам массива:

A[1]:= 5; A[2]:= 4; и т. д.

S[1]:= 'Иванов'; S[2]:= 'Петров'; и т. д.

Присвоение значения элементам массива "y" по зависимости:

y=sin(x), где x= Pi * i/180, 0<= i <=180 .

For i:= 0 to 180 Do y[i]:= sin(Pi * i/180);

Присвоение случайных значений в диапазоне от -30 до +40 ста элементам массива "R":

Randomize; for i:=1 to 100 Do R[i]:= - 30+Random(71);

32.Двумерные массивы.

Var A:array[1..30,1..7] of byte;

33.Текстовые файлы.

Var f: Text;

Assign(f, 'Name_f');

где Name_f - имя файла.

Например,

Assign(f, 'file. dat'); {файл находится в текущем каталоге}

Assign(f,'C:\Pascal\Work\file.dat') {файл находится}

Открытие файла для записи данных

ReWrite(f);

Запись данных в файл

Write(f,"сп"); или Writeln(f,"сп"); {"сп" - список переменных}

Открытие файла для считывания данных

Reset(f);

Считывание данных

Read(f, "сп"); или Readln(f, "сп");

Закрытие файла

Close(f);

Запись данных в конец закрытого файла

Append(f);

34.Установка атрибутов файла.

Исходный атрибут файла

GetFattr(f, af);

Установка атрибута файла

SetFattr(f, af);

где f - имя файловой переменной,

af - имя переменной атрибута (тип Word).

Наименование

Константа "ads"

Двоичное

Шестнадцатиричное

Только для чтения

ReadOnly

0000 0001

$01

Скрытый файл

Hidden

0000 0010

$02

Системный файл

System

0000 0100

$04

Архивный файл

Archiv

0010 0000

$20

35.Описание функций и процедур.

Модули System, Crt, Graph

Procedure Name_P(p1, p2,...:"тип"; Var p3, p4,...: "тип";...);

Function Name_F("список формальных параметров"):"тип результата";

где Function и Procedure - служебные слова,

Name_F, Name_P - имена функции и процедуры соответственно,

p1, p2 - имена формальных параметров-значений,

p3, p4 - имена формальных параметров-переменных,

Type M= array[1..100]of real;

Procedure Name_P(p: M);

Name_P(p11, p22,..., p33, p44,...); - вызов процедуры Name_P,

Y:= Name_F("список фактических параметров"): - вызов функции Name_F,

Здесь p11, p22, . . . - имена или значения переменных,

p33, p44, . . . - имена переменных, значения которых возвращаются в программу.

Y - переменная, которой присваивается значение возвращаемое функцией.

36.Рекурсивные функции и процедуры.

Схема линейного взаимодействия процедур

Схема циклического взаимодействия процедур

37.Разработка модулей.

Unit

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

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

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

38. Модуль CRT.Управление экраном в текстовом режиме.

Наименование

процедуры

Параметры процедуры

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

процедуры

TextMode(N);

N=0

N - тип Word

(40x25)-CGA- ч. б.

Задание текстового режима работы монитора.

N=1

(40x25) -CGA,

Экран очищается, курсор устанавливается в позицию 1, 1.

Цвета исходные: белые символы на черном экране

Наибольшие значения координат

Хm:= Lo(WindMax)+1;

Ym:= Hi(WindMax)+1;

N=2

(80x25) -EGA, VGA,

N=3

(80x25) цветной

N=N+256

(80x43)-EGA цветной

Ym

(80x50)-VGA цветной

N=7

(80x25)-монохромный; (80 колонок х 25 строк );

Window(x1, y1, x2, y2);

x1, y1, x2, y2 - тип Byte

1 <= x1 < x2 <= Xm, 1 <= y1 < y2 <= Ym

в системе координат экрана.

Задание окна на экране. Курсор устанавливается в позицию (1, 1) в системе координат окна. Превышение координат экрана игнорируется.

TextBackGround(N);

N - тип Byte, 0 <=N<= 7

Назначение цвета фона. При N>7 N:= N mod 8

Clrscr;

Использование процедуры после TextBackGround(N); закрашивает активное окно

Очистка активного окна, экрана курсор устанавливается в позицию (1, 1). Закрашивание окна.

TextColor(N);

N - тип Byte 0 <=N<= 15 а также при N:= N + 128 вывод мерцающих символов -

Назначение цвета символов. При N>15, N:= N mod 16,

GotoXY(x, y);

x, y - тип Byte

Установка курсора в позицию ( x, y ) в системе координат активного окна, экрана.

InsLine;

Вставка пустой строки.

DelLine;

Удаление строки в позиции курсора.

ClrEol;

Стирание символов от позиции курсора до конца строки.

39.Модуль CRT.Управление клавиатурой.

KeyPressed; - возвращает значение True (тип Boolean) - если была нажата любая клавиша (кроме Ctrl, Alt, NumLock и т. п. ), иначе - False.

ReadKey; - возвращает символ нажатой клавиши (тип Char).

Repeat Writeln('Нажмите скорее любую клавишу') until KeyPressed;

Repeat Writeln('Нажмите клавишу "А"'); c:=ReadKey until c='А';

Для очистки буфера клавиатуры применяются операторы:

While KeyPressed Do c:=ReadKey;

40.Модуль CRT.Работа с символьными переменными.

Repeat c:=readKey; Write(c) until c=#13;

здесь "с" - переменная типа Char,

#13 - код клавиши Enter

#32 - SpaceBar

#27 - Esc

Для запоминания вводимых символов можно использовать операторы:

i:=0; repeat i:=i+1; ch[i]:=readKey; write(ch[i]) until ch[i]=#13;

Здесь ch[i] - элемент массива ch типа Char.

41. Модуль CRT. Управление звуковыми сигналами.

Sound(N); - включение звука с частотой тона N (измеряется в герцах).

Delay(M); - задержка выполнения программы на M миллисекунд.

NoSound; - выключение звука. Здесь N и M - типа Word.

Sound(F); Delay(N); NoSound;

Формула расчета частоты звука:

F=Round(440*Exp(Ln(2)*(No-(10-Nn)/12)));

где No - номер октавы -3<= No <=4; Для основной октавы No=0.

Nn - номер ноты 1 - До, 2 - До#, 3 - Ре, и т. д. 12 - Cи.

При сквозной нумерации нот принять для No<0 - Nn<1, для No>0 - Nn>12.

42. Модуль Graph. Инициализация и закрытие графического режима.

InitGraph.

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

  1. Подключить модуль GRAPH — библиотеку графических процедур:

USES Graph;

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

VAR DriverVar, ModeVar:Integer;

BEGIN

DriverVar := Detect;

InitGraph(DriverVar , ModeVar, '<путь к файлу драйвера>');

Таблица 3. Константы графических драйверов (DriverVar)

Константа

Значение

CurrentDrivgr

-128

Detect

0

CGA

1

MCGA

2

EGA

3

EGA64

4

EGAMono

5

IBM8514

6

HercMono

7

ATT400

8

VGA

9

PC3270

10

43.Модуль Graph.Базовые процедуры и функции: окно, текущий указатель, точка,линия.

Система координат

координата Х (0,0) (GetMaxX,0)

координата Y

(0,GetMaxY) (GetMaxX, GetMaxY)

Рис. 1

Перемещение текущего указателя

MoveTo(X,Y:integer) перемещает текущий указатель в точку с координатами X,Y.

MoveRel(dX,dY:integer) перемещает текущий указатель на dX точек по горизонта­ли и на dY точек по вертикали.

GetX, GetY возвращают координаты текущего указателя:

Экран и окно в графическом режиме

ClearDevice

Создание окна SetViewPort(xl,yl,x2,y2:integer; Clip:boolean);

где xl, yl — координаты левого верхнего угла,

х2, у2 — координаты правого нижнего угла окна.

Параметр Clip определяет, будет рисунок отсекаться при выходе за границы окна (Clip:= True) или нет (Clip:= False).

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

Очистка окна ClearViewPort.

Атрибуты текущего окна можно получить с помощью процедуры

GetViewSettings(var Vp : ViewPortType).

"Закраска" графического окна – SetFillStyle и SetFillPattern.

Вывод точки

PutPixel(X,Y:integer;Color:word);

где X и Y — экранные координаты расположения точки,

Вывод линии

Line (XI,Y1,Х2,Y2:integer);

где XI, Y1 — координаты начала,

Х2, Y2 — координаты конца линии.

Цвет – SetColor(Color:word),

где Color — Error: Reference source not found

Для черчения линий применяются еще две процедуры:

LineTo(X,Y:integer) строит линию из точки текущего положения указателя в точку с координатами X,Y.

LineRel(dX,dY:integer) проводит линию от точки текущего расположения указателя в точку СРх + dX, СРу + dY, где СРх и СРу —текущие координаты СР(Cursor Point).

Установка стиля – SetLineStyle(LineStyle:word; Pattern:word; Thickness:word).

Параметр LineStyle устанавливает тип строки,

Pattern — образец,

Thickness — толщина линии, определяемая константами, указанными в Error: Reference source not found.

Например: SetLineStyle(DottedLn,0,NormWidth);

44. Модуль Graph.Работа с текстом.

Вывод текста

OutText(Textstring: string)

пример: ОutТехt(‘Вводите данные:’);

OutTextXY(X,Y:integer; TextString:string),

где X, Y — координаты точки начала вывода текста,

TextString — константа или переменная типа string,

пример: OutTextXY(60,100,'Для продолжения нажмите любую клавишу...');

Вывод численных значений

В модуле GRAPH для вывода численных данных нужно сначала преобразовать число в строку с помощью процедуры Str, а затем посредством '+' подключить ее к выводимой OutTextXY строке.

Например:

Мах:=34.56;

Str (Мах:6:2,Smax); {Результат преобразования находится в Smax}

OutTextXY(400,40, ' Максимум = ' + Smax); {+конкатенация}

Установка шрифта.

Установить нужный шрифт можно процедурой

SetTextStyle(Font:word; Direction:word; CharSize:word);

где Font — выбранный шрифт,

Direction — направление (горизонтальное или вертикальное),

CharSize — размер выводимых символов

Выравнивание текста

Выравнивание текста выполняется с помощью процедуры

SetTextJustify(Horiz,Vert:word);

как по вертикали, так и по горизонтали посредством задания параметров Horiz и Vert

45. Модуль Graph.Установка цвета и палитры.

После старта InitGraph вся информация об установленной в зависимости от режима драйвера палитре находится в переменной стандартного типа PaletteType.

Получить информацию о текущей палитре можно с помощью процедуры GetDefaultPalette(var Palette:PaletteType), где Palette — переменная типа PaletteType. Доступ к полям такой же, как и при работе с обычными переменными типа record.

SetColor(Color:word) устанавливает цвет Color, для процедур графического вывода. Пока цвет не определен, для вывода используется цвет с максимальным номер палитры, и фон с минимальным номером. Если Color задает недопустимый номер цвета, текущий цвет остается неизменным.

SetBkColor(Color:word) устанавливает новый цвет фона.

46. Модуль Graph. Построение графических фигур.

Построение прямоугольников

Цвет, стиль и толщина линии для вычерчивания берутся по умолчанию или устанавливаются соответственно процедурами SetColor и SetFillPattern, SetFillStyle (ниже).

Процедура вычерчивания одномерного прямоугольника:

Rectangle(Xl, Y1, Х2, Y2:integer),

где XI, Y1 — координаты левого верхнего угла,

Х2, Y2 — координаты правого нижнего угла прямоугольника. Область внутри прямоугольника не закрашена и совпадает по цвету с фоном.

Построение многоугольников

DrawPoly(NumPointst : word; var PolyPoints)

Параметр PolyPoints является нетипизированным параметром, который содержит координаты каждого пересечения в многоугольнике. Параметр NumPoints задает число координат в PolyPoints. Необходимо помнить, что для вычерчивания замкнутой фигуры с N вершинами нужно передать при обращении к процедуре DrawPoly N+1 координату, где координата вершины с номером n будет равна координате вершины с номером 1. Построение дуг и окружностей

Окружность:

Circle (X, Y, Radius: word);

где X и Y — координаты центра окружности,

Radius — ее радиус.

Пример вывода ярко-зеленой окружности с радиусом 50 пикселей и центром в точке 450,100:

SetColor(LightGreen);

Circle(450,100,50)

Дуга:

Arc (X,Y: integer; StAngle, EndAngle, Radius: word);

где X, Y — центр окружности,

StAngle и EndAngle начальный и конечный yгол в градусах,

Radius — радиус.

Пример:

SetColor(Red);

Arc(450,100,0,90,50);

Эллиптическая дуга:

Ellipse (X,Y:integer; StAngle,EndAngle:word; xR,yR:word);

где X, Y — центр эллипса в дисплейных координатах,

xR и yR — горизонтальная и вертикальная оси.

Фон внутри эллипса совпадает с фоном экрана.

47.Модуль Graph.Работа с фрагментами изображения.

Для определения размера памяти, необходимой для сохранения образа фрагмента служит функция ImageSize (XI, Yl, X2, Y2: Integer):Word, байт.

Сохранение образа фрагмента в памяти выполняется процедурой

GetImage (XI, Yl, X2, Y2: Integer; var BitMap);

Параметры XI, Yl, X2, Y2 определяют прямоугольную область экрана.

Процедура PutImage (X, Y:integer; var bitmap; Oper :word) - выводит из буфера на экран двоичный образ заданной области экрана.

48. Строки: определение, операции со строками, процедуры и функции для обработки строк.

Тип данных STRING (строка) предназначен для обработки строк (цепочек символов).

Обработка строковых данных - необходимый элемент программ, работающих с текстами:

- Программы лингвистического анализа текстов;

- Текстовые редакторы;

- Программы, работающие в диалоговом (интерактивном) режиме;

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

Строка – последовательность символов (от 0 до 255), заключенная в апострофы.

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

Строковые константы – элементы данных, значения которых известны заранее, описаны в разделе описания констант и в ходе выполнения программы не изменяются.

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

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

Строковые выражения могут состоять из:

- строковых констант;

- строковых переменных;

- знаков операций;

- указателей процедур;

- указателей функций.

Над строковыми данными допустимо выполнять операции сцепления и операции отношения.

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

Функции для обработки строк

LENGTH (ST) - вычисляет длину в символах строки ST. Результат – целочисленного типа.

Например, при ST, равном ‘длина строки’, выражение LENGTH (ST) дает результат 12.

COPY (ST, POZ, N) – выделяет из строки ST подстроку длиной N символов, начиная с позиции

POZ. POZ, N – целочисленные выражения.

Если POZ > LENGTH (ST), то результатом будет пробел;

Если POZ > 255, возникнет ошибка при выполнении.

Например, при значении ST= ‘ABCDEFG’, выражение COPY (ST,2,3) дает результат ‘BCD’.

CONCAT (STR1, STR2,…, STRN) – выполняет конкатенацию (сцепление) строк STR1,STR2,…,STRN в том порядке, в каком они указаны в списке параметров. Сумма символов всех сцепляемых строк должна быть не более 255.

Например, выражение CONCAT (‘AA’, ’BB’, ’CC’) дает результат ‘AABBCC’.

POS (ST1, ST2) – обнаруживает первое появление в строке ST2 подстроки ST1.

Результат целочисленного типа и равен номеру той позиции, в которой находится первый символ подстроки ST1. Если в ST2 не найдено ST1, то результат равен 0. Например, для значения ST2 ‘ABCDEFGH’ выражение POS (‘DE’,ST2) дает результат, равный 4.

UPCASE (CH) - преобразует строчную букву в прописную. Параметр и результат имеют тип

CHAR. Обрабатывает только буквы латинского алфавита.

Например, для значения CH = ‘f’, выражение UPCASE (CH) дает результат ‘

49.Примеры решения задач обработки строковых данных

50.Записи.

Формат описания типа данных:

TYPE < имя типа > = RECORD

<идентификатор поля> : <тип компонент>;

<идентификатор поля> : <тип компонент>;

END;

VAR

<идентификатор,…> : <имя типа>;

Например,

TYPE

STR = RECORD

FAM: STRING [35];

B1, B2, B3, B4, B5: 2..5;

sB: REAL

END;

VAR

ST1, ST2, ST3, ST4: STR;

Запись STR содержит семь компонент: фамилию студента, оценки по пяти предметам, средний балл.

Доступ к полям записи осуществляется через переменные ST1, ST2,ST3 и ST4 типа STR.

Оператор присоединения WITH

Формат оператора присоединения:

WITH < переменная типа запись > DO < оператор >;

FOR I := 1 TO 30 DO

WITH GRUPPA [I] DO

READLN (FAM, B1, B2, B3, B4, B5);

Вложение записей друг в друга:

WITH R1 DO

WITH R2 DO

WITH R3 DO

что эквивалентно записи

WITH R1R2R3 DO …

Записи с вариантами

Формат объявления записи с вариантами:

TYPE

ZAP = RECORD

CASE <поле признака >: <имя типа > OF

<константа выбора 1 > : (поле, …: тип);

< константа выбора 2 >: (поле, …: тип);

END;

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

TYPE

Замечания:

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

- Запись может иметь только одну вариантную часть, причем вариантная часть должна размещаться в конце записи;

- Если поле, соответствующее какой-либо метке, является пустым, то оно записывается так

< метка > : ( ) ;

Программа обработки массива строк

program days;

uses CRT;

var

day:array[1..7] of string[10];

i,k:byte;

begin

clrscr;

day[1]:='Sunday';

day[2]:='Monday';

day[3]:='Tuesday';

day[4]:='Wednesday';

day[5]:='Thursday';

day[6]:='Friday';

day[7]:='Saturday';

for i:=1 to 7 do {Цикл для вывода дней недели}

writeln(i,' ',day[i]);

readln;

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

writeln ('vvedite N dnya');

readln (k);

writeln ('day N ', k, ' ',day[k]);

readln;

end.

Работа с простейшим паролем

Program parol;

uses CRT;

var

name:string[30];

parol:string[6];

begin

clrscr;

writeln('vvedite parol iz 6 simvolov ');

readln(parol);

writeln;

if parol='Pascal' then begin

writeln('Vvedite famil ');

readln(name);

writeln;

writeln(name,', Vam dostup razreshen!');

end

else begin

writeln('Neverniy parol! Dostup zapreshen!');

end;

readln;

end.

51.Примеры использования данных типа «запись»

1. Программа для добавления записей в файл данных о дневной температуре воздуха

Program aprec;

uses CRT;

var

DayTemp:record { дневная температура }

day:integer; { число }

month:integer; { месяц }

temper:integer; { температура }

end;

f:text; { файл с записями о дневной температуре }

begin

clrscr;

assign(f,'a:\temper.txt');

append(f); { открываем файл для добавления записи }

write('Введите в одной строке, разделяя пробелами');

writeln(' число, номер месяца и температуру');

write('->');

with DayTemp do

begin

readln(day,month,temper);

writeln(f,day,' ',month,' ',temper);

end;

close(f);

writeln('Данные добавлены');

readln;

end.