
- •Тема III. Программирование на алгоритмическом языке Object Pascal.
- •2.Общая характеристика языка Паскаль. Структура Паскаль – программы. Раздел описаний и раздел операторов.
- •3.Понятие типа данных. Классификация, простые и структурные типы. Описание данных (type,var)
- •3.2. Типы данных, определяемые пользователем(ограниченный, перечисляемый)
- •3.2.1.Ограниченный тип
- •3.2.2. Переменный тип
- •5.Выражения(Арифметические, логические). Правила записи. Порядок выполнения. Тип контролирует действия над данными. Сообщения об ошибках компиляции.????
- •6.Операторы языка паскаль. Простые операторы:
- •6.1. Оператор «присваивания»
- •6.2. Оператор «обращения к процедурам»
- •6.3 Оператор безусловного перехода Goto
- •7.3. Оператор выбора (Case)
- •7.4. Оператор «Цикла с параметром (For)»
- •7.5. Оператор «Цикла с предусловием пока(while)»
- •7.6.Оператор цикла с постусловием пока не(repeat…until).
- •8. Сравнительная характеристика операторов цикла (while & repeat)
6.2. Оператор «обращения к процедурам»
Процедура включает раздел описаний и операторов представляет собой блок и может быть вызвана оператором «обращения к процедурам». При этом указывается имя процедуры, а в скобках список фактических параметров.
Tab(x,y,z)
F(A,B,C)
В паскале предусмотрены стандартные процедуры для ввода/ вывода данных.
1)Read – предназначена для считываниях данных из текстового файла и записи в ячейки памяти, соответствующей переменной списка.
Pascal: Read(var F:Textfile; V1[V2…Vn]
F- текстовый файл;
V1,V2,…,Vn - список переменных
При использовании стандартных файла ввода с клавиатуры(Input) имя файла может быть опущена в операторе Read.
Read(a,b,c)
Данные, соответствующим переменным списка, должны по типу соответствовать типу переменных списка ( по правилу присваивания)
Данные при вводе разделяются:
Пробелами
Enterом
Табуляцией
2)Readln – модификация Read - аналогичен Read, только добавлен переход на следующую строчку (….ln)
При вводе символьных данных, символ «пробел» не используется для разделения этих данных. Рекомендуется ввод строковых данных выполнять с новой строки с использование оператора Readln.
3)Write – предназначена для записи значений выражения в выходной файл.
Write(var F:text; P1(P2…Pn);
Вывод в текстовый файл переменных Pi. При выводе в стандартный файл Output: имя файла может отсутствовать.
4)Writeln – аналогичен Write – означает переход на новую строку.
При выводе данных рекомендуется использовать редакционные спецификации и форматы данных.
Редакционные спецификации – это заключенный в апострофы текст, понимающий результаты вывода.
Форматы данных определяют форму представления данных на внешних носителях данных и используются для удобства чтения результатов.
Формат данных для целых:
определяет количество знакомест или позиций, которые занимают результат.
При выводе вещественных величин:
Через «:» указывается поле, занимаемое числом, а затем количество знаков после запятой.
Если форматы не указаны, вывод данных выполняется в нормализованном виде, где целая часть – 1 цифра, все остальное дробная часть в с указанием порядка E.
OutExpr[:MinWidth[:DecPlace]);
Write(‘x=’,x,’…’, ‘y=’, y:8:4);
X=1.234…e-20(max 23 знака); Y=-12.0415( 8 знаков как задано программой)
6.3 Оператор безусловного перехода Goto
Оператор БП предназначен для передачи управления произвольному оператору программы
Goto M; - метка
В качестве метки могут использоваться константы целого типа или идентификатор ( предварительно эти метки должны быть описаны в разделе описаний как «label»)
Метка отделяется от оператора «:»
Go to M; label 15,M
Go to 15;
M: Y:=A
15: Y:=B
Наличие оператора Goto свидетельствует о том, что структура программ обработана плохо. Этот оператор может быть использован для специального вывода из цикла.
6.4. Пустой оператор « ; »
Никаких действий не выполняет. Предназначен для модификации программ.
7.Структурные операторы Паскаля.
7.1 Составной оператор(begin…end)
Предназначен для заключения нескольких операторов, в так называемые «операторские скобки».
Общая форма записи:
Begin
Оператор 1;
Оператор 2;
.
.
.
Оператор n;
End.
Обмен значений:
Begin
R:=X;
X:=Y;
Y:=R;
End.
7.2. Оператор условной передачи управления (If)
Предназначен для организации разделения в программе в зависимости от значения логического выражения.
If<логическое выражение> then <оператор 1> полная форма
Else <оператор 2>
If<логическое выражение> then <оператор 1> краткая форма
Выполнение:
Вычисляется значение логического выражении. Если оно принимает значение «истина», то выполняется <оператор 1>, если «ложь», то <оператор 2>.
Перед ключевым словом «else» никогда не ставиться « ; » . Если<оператор 1 или 2> включает несколько операторов, то они заключаются в операторные скобки(begin…end).
При использовании нескольких простых форм синтаксическая неоднозначность трактуется т.о., что ветвь «else» соответствует ближайшей ветви «then».