- •1.Общая характеристика языка Паскаль
- •2.Основные элементы языка Паскаль
- •3.Структура программы на языке Турбо Паскаль
- •4.Технология программирования
- •6.Понятие типа данных в Турбо Паскаль
- •Простые типы данных
- •Численные (арифметические) выражения
- •Логические выражения
- •Символьные выражения
- •1. Оператор присваивания.
- •2. Оператор ввода данных.
- •3. Оператор вывода данных.
- •3. Операторы повторений
- •2.2 Оператор цикла с постусловием
- •2.3. Оператор цикла со счетчиком
- •25. 7.11. Что такое вложенные циклы?
- •29.Строковый тип данных в языке Pascal
- •30.Строковые операции
- •4.2. Описание и вызов процедур.
- •4.3. Описание функции.
- •4.4. Формальные и фактические параметры.
- •Параметры-значения.
- •Параметры-переменные.
- •Параметры-константы.
- •Параметры-процедуры и параметры-функции.
- •4.5. Область действия имен.
- •4.6. Процедуры и функции без параметров.
- •4.7. Рекурсивные процедуры и функции.
- •4.8. Предварительно-определенные процедуры.
- •Описание множественного типа данных Паскаля
- •Операции над множественными типами Паскаля
- •Операции отношения множественных типов Паскаля
3.Структура программы на языке Турбо Паскаль
-
Program P1; {заголовок, название программы} {±}
Uses………;{подключение внешних модулей с расширением *.tpu}{±}
Const……...; {описание констант} {±}
Type………; {задание типов} {±}
Var………..; {раздел объявления переменных}{±}
Function F1 ….; {описание функций} {±}
Procedure Pr1 ….; {описание процедур} {±}
Begin{начало основной программы} {+}
….. {тело основной программы} {±}
End. {конец основной программы} {+}.
4.Технология программирования
Включает пять технологических операций (этапов):
Постановка задачи.
Математическое описание.
Алгоритм – структограмма.
Написание текста программы.
Отладка, получение результатов.
5.В ходе отладки программы приходится сталкиваться с тремя видами ошибок: 1. Синтаксические ошибки - текст программы не отвечает требованиям языка Паскаль. Такие ошибки выявляются сразу при попытке компиляции и запуска программы. 2. Ошибки периода выполнения программы (RUNTIME ERROR) – ошибки, возникающие при выполнении программы, когда текст программы формально записан правильно, но при выполнении программы в результате неблагоприятного стечения обстоятельств возникает ошибочная ситуация и компьютер не может продолжить работу (например, в случае деления на ноль). 3. Ошибки в алгоритме (семантические ошибки) - программа работает без сбоев, но результаты получаются неверные. Ошибки 1 и 2 видов помогает отыскать сам компьютер, приостанавливая работу и выводя на первой строке сообщение о характере ошибки. Более того, при компиляции неправильной программы Турбо-Паскаль автоматически загружает в окно редактора сбойный участок текста программы и помешает курсор вблизи обнаруженной ошибки. Перечислим ошибки, наиболее часто допускаемые начинающими программистами, и разъясним сообщения Турбо-Паскаля, выдаваемые им при выявлении этих ошибок в процессе компиляции текста программы: Identifier expected - в этом месте программы должен находиться идентификатор (имя программного объекта). Возможно, программист пытался использовать в качестве идентификатора слово, зарезервированное Паскалем для других целей. Unknown identifier - идентификатор (имя переменной, константы. процедуры и т.п.) не был упомянут в разделе описаний программы. Duplicate identifier - попытка дважды описать один и тот же идентификатор. Syntax error - синтаксическая ошибка, например строка символов не была заключена в кавычки. Line too long - компилятор не может обрабатывать текст программы со строками длиннее 126 символов. Скорее всего, программист забыл поставить апостроф, закрывающий текстовую строку, записываемую в переменную или выводимую на экран. Type identifier expended - не указан тип идентификатора. Variable identifier expended - на этом месте в программе должна стоять переменная. Error in type - объявление типа данных не может начинаться с этого символа. Type mismath -
тип переменной, стоящей слева от знака присваивания, тличается от значения выражения, стоящего справа;
при обращении к процедуре типы формального и фактического параметров не совпадают;
переменная данного типа не может служить индексом массива. Begin expected - нужен begin. End expected - нужен end. Integer expression expected - требуется выражение типа integer. Boolean expression expected - требуется выражение типа boolean. Do expected - пропущено слово "Do". Of expected - пропущено слово "of". Then expected - пропущено слово "then". To expected - пропущено слово "to". String variable expected - требуется строковая переменная. Error in expression - данный символ не может участвовать в выражении таким образом. Division by zero - деление на ноль. Constant and case types do not math - тип меток и тип селектора в операторе CASE не соответствуют друг другу. Label not within current block - оператор GOTO не может ссылаться на метку, находящуюся вне текущего модуля. Label already defined - такая метка уже есть. Floating point overflow operation - величина вещественного числа вышла за пределы диапазона, допускаемого Паскалем (обычно при делении на ноль). Invalid procedure or function reference - неправильный вызов подпрограммы.
