Файл: Основы программирования на языке Pascal (Программирование на языке «Pascal»).pdf
Добавлен: 04.04.2023
Просмотров: 75
Скачиваний: 2
- к любому порядковому типу могут быть применены стандартные функции «pred» и «succ», которые возвращают предыдущее и последующее значения соответственно;
- к любому порядковому типу могут быть применены стандартные функции «low» и «high», которые возвращают наименьшее и наибольшее значения величин данного типа.
2.3. Операторы языка.
Операторы языка предназначены для описания алгоритмов программы, которые необходимо выполнить для решения задачи. Программу можно представить как последовательность таких операторов. Каждый оператор отделен от другого точкой с запятой. Операторы языка программирования 《Pascal» делятся на простые и структурированные.
К простыми относятся те операторы, которые не содержат в себе других операторов. Это:
- оператор присваивания;
- обращение к процедуре;
- оператор безусловного перехода «goto»;
- пустой оператор.
С помощьюоператораприсваивания переменной или функции присваивается значение выражения. Для этого используется знак присваивания «:=», слева указывается имя переменной, а справа - выражение, значение которого вычисляется перед присваиванием. Допустимо присваивание значений переменным и функциям любого типа, за исключением типа «файл». Тип выражения и тип переменной (или функции) должны быть совместимы для присваивания. Пример:
a:= b;
d:= a + c;
Оператор «goto» позволяет изменить стандартный последовательный порядок выполнения операторов и перейти к выполнению заданного оператора. Оператор, на который происходит переход, должен быть помечен меткой. Эта же метка должна быть указана и в операторе «goto». Метки, используемые в «Pascal», могут быть двух типов:
- целым числом в пределах от 0 до 9999;
- обычным идентификатором.
Все используемые метки должны быть перечислены в разделе объявления меток, начинающемся зарезервированным словом «label», например: label 1, 2, Metka;
Одной меткой можно пометить только один оператор. Метка от помеченного оператора отделяется двоеточием. Использовать оператор «goto» следует крайне осторожно. Широкое его применение без особых на то оснований ухудшает понимание логики работы программы. Безусловный переход можно осуществлять далеко не из каждого места программы и не в любое место программы. Так, нельзя с помощью этого оператора перейти из основной программы в подпрограмму или выйти из подпрограммы.
Пустой оператор. Пустой оператор не выполняет никакого действия и никак не отображается в программе (за исключением, быть может, метки или точек с запятыми, отделяющих пустой оператор от предыдущих или последующих операторов). Он может потребоваться для осуществления на него безусловного перехода.
Структурированными операторами являются такие операторы, которые включают в себя другие операторы.
К ним относятся относятся:
- составной оператор;
- условный оператор «if»;
- условный оператор «case»;
- оператор цикла «repeat»;
- оператор цикла «while»;
- оператор цикла «for»;
- оператор над записями «with».
Составной оператор. Составной оператор представляет собой совокупность последовательно выполняемых операторов, заключенных в операторные скобки begin и end:
begin
<оператор 1>;
<оператор 2>;
. . .
<оператор N>
end;
Он может потребоваться в тех случаях, когда в соответствии с правилами построения конструкций языка можно использовать один оператор, а выполнить нужно несколько действий. В такой составной оператор входит ряд операторов, выполняющих требуемые действия. В дальнейшем везде, где будет указываться, что можно использовать один оператор, им может быть и составной оператор. Отдельные операторы внутри составного оператора отделяются друг от друга точкой с запятой. Так как завершающее составной оператор слово «end» не является отдельным предложением, то перед ним точку с запятой можно не ставить, в противном случае компилятор будет считать, что перед словом «end» стоит пустой оператор. Можно считать, что и само тело программы, т. к. оно заключено в операторные скобки «begin» и «end», тоже является составным оператором.
Условный оператор «if» (если). Оператор «if» реализует алгоритмическую конструкцию выбора хода решения задачи в зависимости от истинности или ложности заданного условия. Например:
ifa<bthenmax:=b;
else max:=a;
Что мы сделали? Этим фрагментом программы мы задали условия выбора максимума. Так, если a меньше b, то max присваиваем значение b, иначе (если условие ложно) max присваиваем a.
Оператор цикла «repeat-until» дословно переводится как "повторяй до тех пор, пока" - организует выполнение цикла, состоящего из любого числа операторов, с неизвестным заранее числом повторений. Выход из цикла осуществляется при истинности некоторого логического выражения.
repeat
оператор 1;
оператор 2;
...........
оператор N
until условие; {выход только при выполнении этого условия}.
Оператор цикла «while» (до тех пор пока). Оператор цикла «while» организует выполнение одного оператора неизвестное заранее число раз. Выход из цикла осуществляется, если некоторое логическое выражение окажется ложным. Так как истинность логического выражения проверяется в начале каждого цикла (т. е. раньше, чем выполняется условие), фрагмент кода цикла может и не выполняться вовсе.
while <условие> do <оператор>;
если условие истинно, программа выполняет цикл еще раз, если условие ложно, происходит выход из цикла. При ошибочном задании условия, можно зациклить программу, например, если 1<2 писать: "условие выполнено".1 всегда меньше 2 и программа будет писать: "условие выполнено" пока не сломается.
Оператор цикла «for». Оператор цикла «for» организует выполнение одного оператора заранее известное число раз. Существует два варианта оператора:
for<переменная цикла>:=<начальное значение> to <конечное значение> do <оператор>;
for<переменная цикла>:=<начальное значение> downto <конечное значение> do <оператор>;
В этих операторах:
<переменная цикла> - переменная порядкового типа;
<начальное значение> - выражение (порядкового типа), определяющее начальное значение переменной цикла;
<конечное значение> - выражение (порядкового типа), определяющее конечное значение переменной цикла (при этом значении тело цикла (т е <оператор>) выполняется последний раз);
<оператор> - выполняемый оператор.
<начальное значение> и <конечное значение> должны быть совместимы для присваивания с переменной цикла.
Цикл действует таким образом:
Сначала вычисляются и запоминаются начальное и конечное значения.
Далее переменной цикла присваивается начальное значение.
Затем значение переменной цикла сравнивается с конечным значением.
Причём, пока параметр цикла меньше или равен конечному значению (в первом варианте оператора) или больше или равен конечному значению (во втором варианте), выполняется очередное повторение; в противном случае происходит выход из цикла. Выполнение очередной итерации включает в себя сначала выполнение <оператора>, а затем присваивание переменной цикла следующего большего значения (в первом варианте оператора) или следующего меньшего значения (во втором варианте).
Естественно, что, если в первом варианте <начальное значение> больше чем <конечное значение> или во втором варианте меньше чем <конечное значение>, оператор не выполняется ни разу. После выхода из цикла <переменная цикла> становится неопределенной, за исключением случая, когда выход из цикла был осуществлен с помощью оператора «goto» или стандартной процедуры «break».
Использование стандартных процедур «break» и «continue» в операторах циклов «repeat», «while» и «for». Процедура «break» позволяет досрочно выйти из цикла, не дожидаясь выполнения условия выхода. Процедура «continue» позволяет начать новую итерацию цикла, даже если предыдущая не завершена.
паскаль язык программирование
ЗАКЛЮЧЕНИЕ
В курсовой работе были рассмотрены основные вопросы, касающиеся основ программирования на языке «Pascal». «Pascal» по сей день является одним из наиболее востребованных языков программирования которые используются при обучения студентов. Благодаря легкости его обучения, этот язык часто называют азбукой программиста. На сегодня мала кто пишет программы на языке программирования «Pascal», однако его изучение дает начинающим программистам понятие того, как работают программы, их логику. Создатель этого языка Николаус Вирт.
В курсовой работе были освещены вопросы, связанные с основами программирования на языке «Pasca»l. Рассмотрена структура программы на языке Pascal, типы данных, основные операторы языка, такие как операторы ввода и вывода, условный оператор, оператор безусловного перехода, цикл с предусловием, цикл с постусловием и цикл с параметром. Также рассмотрены основы работы с символьными и строковыми переменами, одномерным и двумерными массивами.
Список используемых источников
Литература
- Осипов А.В. PascalABC.NET: введение в современное программирование. М. : Астрель, 2019. 572 с.
- Абрамян М. Э. Структуры данных в PascalABC.NET. Выпуск 1. Массивы и последовательности. Запросы. М. : Ростов, 2016. 119 с.
- Абрамян М. Э. Структуры данных в PascalABC.NET. Выпуск 2. Минимумы и максимумы. Списки, множества, словари, стеки и очереди. Многомерные структуры. М. : Ростов, 2016. 118 с.
- Рапаков Г.Г. Програмирование на языке Pascal М. : СПБ БХВ- Петербург, 2004. 474 с.
- Беренцев А.Р. Turbo Pascal: первые шаги. Примеры и упражнения М. : Научная книга, 2008. 100 с.
- Немнюгин С. А. Turbo Pascal М. : Питер, 2003. 491 с.
- Попов В.К. Паскаль и Дельфи: Учебный курс М. : Питер, 2005. 576 с.
- Стародубов Л.Г. Турбо Паскаль 7.0. Начальный курс. М.: Издательство ОМД Групп, 2003. 616 с.
- Зуев Е.А. Язык программирования Turbo Pascal 6.0, 7.0. М. : Веста, 1993. 384 с.
- Иванова Г.С. Основы программирования. М. : МГТУ им. Н.Э. Баумана, 2002. 416 с.
- О.А. Меженный. Самоучитель Turbo Pascal. М. : Пингвин, 2002. 330 с.
С.Н. Лукин Турбо-Паскаль 7.0. самоучитель. М. : Астрель, 1999. 211 с.
ПРИЛОЖЕНИЯ
Приложение 1
a |
b |
a and b |
a or b |
a xor b |
not a |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
Приложение 2
Операция |
Знак операции |
больше |
> |
больше или равно |
>= |
меньше |
< |
меньше или равно |
<= |
равно |
= |
не равно |
<> |
Приложение 3
Тип |
Название |
Размер |
Знак |
Диапазон |
integer |
целое |
2 байта |
есть |
-32768..32767(-215..215-1) |
shortint |
короткое целое |
1 байта |
есть |
-128..127(-27..27-1) |
byte |
байт |
1 байта |
Нет |
0..255(0..28-1) |
word |
слово |
2 байта |
Нет |
0..65535(0..216-1) |
lonight |
длинное целое |
4 байта |
есть |
-2147483648..2147483647(-231..231-1) |
Приложение 4
Операции |
Знак операции |
сложение |
+ |
вычитание |
- |
умножение |
* |
деление |
div |
остаток от деления |
mod |
Приложение 5
Тип |
Название |
Размер |
Значащих цифр |
Диапазон значения |
real |
вещественный |
6 |
11-12 |
2.9e-39..1.7e+38 |
single |
одинарной точности |
4 |
7-8 |
1.5e-45..3.4e+38 |
double |
двойной точности |
8 |
15-16 |
5.0e-324..1.7e+308 |
extended |
расширенный |
10 |
19-20 |
3.4e-4932..1.1e+4923 |
comp |
большое целое |
8 |
19-20 |
-9.22e18..9.22e18(-263..263-1) |