- •Оглавление
- •Предисловие
- •Введение
- •1. Общие сведения о языках программирования
- •1.1. Краткая история эвм и языков программирования
- •1.2. Трансляторы
- •1.3. Основные понятия алгоритмических языков
- •2. Интегрированная среда borland pascal
- •2.1. Краткая характеристика. Запуск программы
- •2.2. Основы работы в редакторе
- •2.3. Система меню
- •2.3.1. Меню опции file
- •2.3.2. Меню опции edit
- •2.3.3. Меню опции search
- •2.3.4. Меню опции run
- •2.3.5. Меню опции compile
- •2.3.6. Меню опции debug
- •2.3.7. Меню опции tools
- •2.3.8. Меню опции options
- •2.3.9. Меню опции window
- •2.3.10. Меню опции help
- •3. Синтаксис языка borland pascal
- •3.1. Элементы языка
- •3.2. Служебные (зарезервированные слова), директивы и идентификаторы
- •3.3. Основные элементы программирования
- •3.4. Структура программы
- •4. Типы данных
- •4.1. Простые типы
- •4.1.1. Целые типы.
- •4.1.2. Логический тип
- •4.1.3. Символьный тип
- •4.1.4. Перечисляемый тип
- •4.1.6. Вещественные типы
- •4.2. Структурированные типы
- •4.2.1. Массивы
- •4.2.2. Записи
- •4.2.3. Множества
- •4.2.4. Файловый тип
- •Процедуры и функции ввода-вывода
- •4.3. Указатели
- •4.4. Строки
- •4.5. Совместимость и преобразование типов
- •4.6. Константы и константные выражения
- •5. Операторы и процедуры языка
- •5.1. Поразрядные оператоpы. Логические оператоpы. Опеpатоpы отношения
- •5.2. Оператор присваивания
- •5.3. Процедуры ввода и вывода
- •5.4. Условные операторы
- •5.4.1. Оператор If
- •5.4.2. Оператор case
- •5.5. Операторы цикла
- •5.5.1. Оператор while (цикл с предусловием )
- •5.5.2. Оператор repeat..Until (Цикл с постусловием)
- •5.5.3. Оператор цикла For (цикл с заданным количеством повторений)
- •5.6. Оператор безусловного перехода
- •5.7. Функции и процедуры для работы со строковыми и символьными данными
- •5.8. Комментарии в программе
- •6. Процедуры и функции
- •6.1. Параметры подпрограмм
- •7. Использование графики в borland pascal
- •7.1. Константы модуля Graph
- •7.1.1. Константы цвета
- •7.1.2. Константы типов и толщины линий
- •7.1.3. Константы шаблона штриховки
- •Заключение
- •Библиографический список
- •Решение задач на языке программирования Паскаль
- •Пример 9. Определить, имеются ли в массиве а[5,4] столбцы, состоящие из одних и тех же элементов, если такие есть, выдавать номера одинаковых столбцов, если нет – выдать сообщение.
- •Варианты заданий для самостоятельной работы Вычисление значений выражений
- •Вычислить значение функции с использованием условных операторов
- •Программирование циклических алгоритмов с заданным числом повторений
- •Программирование циклических алгоритмов с предусловием
- •Программирование циклических алгоритмов с постусловием
- •Программирование алгоритмов обработки одномерных массивов
- •Программирование алгоритмов обработки двумерных массивов
- •Программирование с использованием функций
- •Программирование с использованием процедур
- •Обработка символьных и строковых данных
- •Графика
- •Оператор
5.8. Комментарии в программе
Иногда необходимо вставить в программу замечания, напоминающие (или информирующие) о том, что означают некоторые переменные, какие действия выполняют некоторые функции или операторы, и так далее. Эти замечания называются комментариями. Паскаль, как и большинство других языков программирования, позволяет вставлять в программу как угодно много комментариев.
Комментарий начинается левой фигурной скобкой ({), которая указывает компилятору игнорировать все последующее до тех пор, пока не будет обнаружена правая фигурная скобка (}).
Комментарии можно даже располагать на нескольких строках, например:
{ Это пример длинного
комментария, занимающего
несколько строк. }
Кроме того, Паскаль допускает альтернативную форму комментария, начинающегося левой круглой скобкой со звездочкой (* и заканчивающегося звездочкой с правой круглой скобкой *). Этим допускается ограниченная вложенность комментариев, поскольку комментарий, начинающийся с (* игнорирует все фигурные скобки, и наоборот.
Вопросы и задания:
Какие типы операторов Вы знаете? В чем отличие бинарных и унарных операторов? Как определяется порядок выполнения операторов в сложных выражениях?
Какие поразрядные операторы существуют в Паскале? Какие числа выведет на экран приведенная ниже программа и почему (объяснить побитово каждую операцию).
Program ExBit;
Var A,B : Byte;
Begin
A:=15;B:=5;
Writeln(A And B);Writeln(A Or B);
Writeln(B shl 1);Writeln(A shr (B-2));
Writeln(A xor B);Writeln(Not A);
Readln;
End.
Опишите процедуры Write и Writeln. Что такое спецификаторы? Приведите примеры использования этих процедур.
Опишите работу с процедурами Read и Readln, приведите примеры.
Опишите условный оператор if. Приведите пример его использования. Что такое составные операторы?
В чем отличие этого оператора Repeat..Until от оператора While?
6. Процедуры и функции
Рассмотрим, как выполнить один и тот же набор команд на различных множествах данных или в различных местах программы. Для этого нужно поместить эти операторы в подпрограмму, которую потом можно вызывать при необходимости.
В Паскале имеется два типа подпрограмм: процедуры и функции. Основное различие между ними состоит в том, что функция возвращает значение и может использоваться в выражениях, например:
X := Sin(A);
в то время как процедура вызывается для выполнения одной или более задач:
Writeln('Это проверка');
Однако прежде, чем знакомиться с процедурами и функциями, необходимо вспомнить структуру программы на Паскале.
program Имя-программы;
label <метки>;
соnst <описание констант>;
type <определения типов данных>;
var <описания переменных>;
procedures и functions;
begin
<основное тело программы>
end.
За описанием следуют процедуры и функции, и только затем основное тело программы, состоящее из некоторого числа операторов.
Для процедур используется следующий формат:
procedure имя_процедуры(параметры);
label <метки>;
соnst <описание констант>;
type <определения типов данных>;
var <описания переменных>;
procedures и functions;
begin
<основное тело процедуры>;
end;
Функции имеют такой же формат, что и процедуры, за исключением того, что они начинаются с заголовка function и заканчиваются типом данных для возвращаемого значения функции:
function имя_функции(параметры) : тип результата;
Имя функции выполняет две задачи: это имя вызываемой функции и имя переменной, которая передает в вызываемую программу результат работы функции.
Имеется только два отличия от структуры обычной программы: процедуры и функции начинаются с заголовка procedure или function, а не с заголовка program, и заканчиваются не точкой, а точкой с запятой. Процедуры и функции могут иметь свои собственные константы, типы данных, переменные и даже собственные процедуры и функции. Но все эти элементы могут использоваться только в тех процедурах и функциях, в которых они определены.
В описании процедуры или функции задается список формальных параметров.
Все формальные параметры являются локальными и могут быть использованы только в тех подпрограмм, где они объявлены.
