Слайд 1Учитель информатики и ИКТ МОУ «СОШ №71» г. Саратова
Начальные сведения о
языке программирования PASCAL
Слайд 2
Язык программирования Паскаль был разработан Никлаусом Виртом специально для обучения программированию.
Паскаль положил начало целому семейству языков программирования, которые наряду с авторской версией Паскаля уже более четверти века используются как в учебных целях, так и в профессиональной разработке программного обеспечения. Успех языку принесла его простота и универсальность.
Общие сведения
Слайд 3Идентификаторы
Такие объекты языка Паскаль как переменные, типы данных, процедуры и функции
должны иметь свои имена, чтобы отличать их внутри программы друг от друга. Эти имена называются идентификаторами. Идентификатор Паскаля представляет собой последовательность латинских букв или цифр, начинающуюся с буквы.
Пример. Идентификаторы Паскаля: A; I1; Integer; sin; Counter; level348.
Последовательности символов, не являющиеся идентификаторами Паскаля: 2Е; A?B; My-value; 48.
Замечание: Прописные и строчные буквы в служебных словах и идентификаторах не различаются практически всеми трансляторами Паскаля, таким образом, например, Sin, sin, и SIN – три равноправных варианта написания одного и того же идентификатора.
Слайд 4Служебные слова
Алфавит любого языка программирования состоит из символов, используемых при записи
программ. В число этих символов входят буквы, цифры и разделители. Но одних этих символов недостаточно для записи программы. Некоторые символы алфавита языка изображаются несколькими буквами. Такие элементы называются служебными словами. Служебные слова используются для обозначения операторов, некоторых операций и других элементов программы. В программе нельзя использовать идентификаторы, совпадающие со служебными словами.
Примеры служебных слов:
var, program, repeat, begin, end, function.
Слайд 5Тип данных языка программирования
Тип данных языка программирования – это совокупность значений
и правил выполнения операций над ними. Значения типа изображаются в программе с помощью констант.
Константами называют используемые в процессе выполнения программы заранее определенные величины. Тип их не задается программистом, а определяется автоматически компилятором по их значению. Основное свойство констант – неизменность их значений во время выполнения программы. Переменные – данные, значения которых могут меняться в ходе выполнения программы.
Переменные и константы, соединенные знаками операций, образуют выражения.
Слайд 6К основным типам Паскаля относятся наиболее часто используемые простые типы данных,
а именно, числовые, символьный и булевский (логический) тип, названный так в честь английского математика-логика Джорджа Буля. Основные типы данных “встроены” в язык программирования, то есть их возможные значения и операции уже определены в описании языка.
Для решения многих задач основных типов недостаточно. Используя основные типы в качестве базовых, программист может конструировать производные типы данных
Слайд 7Целый тип
В Паскале есть два числовых типа данных – для
целых и вещественных чисел.
Значениями целого типа являются целые числа.
Целая десятичная константа представляет собой последовательность десятичных цифр, которой может предшествовать знак «–».
Пример: –10; 3; 845;
Целый тип данных имеет свой идентификатор – слово Integer («целый» по-английски).
Переменные целого типа описываются в программах следующим образом:
var i, j, k: Integer;
Здесь var — служебное слово для описания переменных;
i, j, k — имена переменных;
Integer – имя типа.
Слайд 8Над значениями целого типа определены
следующие операции:
Слайд 9Значения целого типа могут быть аргументами функций, возвращающих целые значения:
Слайд 10Следующие функции возвращают вещественные результаты для целых аргументов:
Слайд 11Пример.
Результаты выражений при A = 20; B = 8
Слайд 13Целый тип является упорядоченным. Для всех его значений определены операции сравнения,
возвращающие логический результат (истина или ложь).
Слайд 14Вещественный тип
Значениями вещественного типа Real являются элементы конечного подмножества вещественных
чисел.
Вещественные константы в Паскале можно записать двумя способами: в виде десятичной дроби, где вместо запятой используется точка, например, 3.14 и в экспоненциальном виде: мантисса, затем буква Е, следом за Е — показатель степени.
Пример. 0.23Е+9 — экспоненциальная запись числа 0,23·10^9
0.67Е-19 — экспоненциальная запись числа 0,67·10^-19.
Если вещественная константа по модулю меньше некоторого определенного числа (зависящего от способа представления чисел в компьютере), то машиной она воспринимается как нуль
("машинный нуль").
Слайд 15Над значениями вещественного типа определены следующие операции:
Слайд 16Следующие функции возвращают вещественные результаты для вещественных аргументов:
Слайд 17Для округления и отбрасывания дробной части используются функции, возвращающие значения целого
типа:
trunc(x) - (отбрасывание дробной части x).
round(x) - (округление x до целого).
Пример.
Как и целый тип, вещественный тип является упорядоченным. Для всех его значений определены те же операции сравнения, что и для целого типа.
Слайд 19Символьный тип
Значениями типа Char (от character – символ) в большинстве реализаций
Паскаля являются 256 символов кодировки ASCII. Константы этого типа представляют собой имеющие графическое изображение символы ASCII, заключенные в апострофы. Примеры констант типа Char:
‘1’, ‘z’, ‘+’, ‘Я’.
Для значений символьного типа определены те же операции отношений, что и для вещественного типа.
Тип Char также часто называют литерным типом.
Слайд 20Булевский тип
Cуществуют всего два значения булевского (Boolean) типа: истина (обозначается true)
и ложь (обозначается false). Эти величины упорядочены следующим образом: false < true. Для булевских значений определены операции and, or, not, дающие также булевские значения. Если значение логического выражения равно true, то говорят, что это выражение истинно, в противном случае выражение ложно.
Булевский тип имеют результаты операций сравнения
=, >, <, >=, <=, <> вне зависимости от типа сравниваемых значений.
Слайд 21Диапазоны (ограниченные типы)
Ограниченный тип создается на основе базового типа. Базовый тип
должен быть дискретным и упорядоченным. Значения ограниченного типа принадлежат диапазону базового типа.
Синтаксис описания ограниченного типа:
type typename = min.. max;
Здесь min и max - константы базового типа, задающие наименьшее и наибольшее значение диапазона. Границы диапазона разделяются двумя точками.
Пример. Пусть в программе учета транспортных средств есть переменная year, которой должен присваиваться года выпуска автомобиля. Разумно ограничить диапазон значений year числами 1900, 2050, то есть описать ее так:
var year: 1900..2050;
Слайд 22Арифметическое выражение представляет собой правило вычисления некоторого числа – значения этого выражения.
Арифметические
выражения
Правила записи арифметических выражений:
Формулу следует записывать в строку без каких-либо подстрочных или надстрочных знаков.
Суммы и разности в числителях и знаменателях дробей, а также произведения в знаменателях необходимо заключать в скобки.
Нельзя ставить два знака арифметических действий подряд.
Нельзя пропускать знак умножения.
Аргумент функции всегда заключается в скобки.
Слайд 24Структура программы
Программа состоит из заголовка и блока, за которым следует
точка, являющаяся признаком конца текста программы.
Слайд 25Комментарии
Последовательность символов, заключенная в фигурные скобки {}, является комментарием. Комментарии —
это пояснения к программе, не влияющие на ее выполнение. Комментарии могут быть вставлены в любом месте программы.
Внутри комментария недопустимы символы, обозначающие начало и конец комментария.
Слайд 26{Пример простой программы на Паскале}
{Программа вычисляет сумму чисел}
Блок программы
Слайд 27Заголовок программы
В заголовке указывается имя программы и список параметров.
Cинтаксис:
program имя_программы;
В приведенном выше примере заголовком является строка:
Program SUMMA;
Слайд 28Блок программы. Общие сведения
Блок программы состоит из шести разделов, следующих в
строго определенном порядке:
1) раздел меток (label ),
2) раздел констант (const),
3) раздел типов (type ),
4) раздел переменных (var ),
5) раздел процедур и функций,
6) раздел операторов.
Раздел операторов должен присутствовать всегда, остальные разделы могут отсутствовать.
Каждый из первых 4-х разделов начинается с соответствующего служебного слова (label , const, type, var), которое записывается один раз в начале раздела.
Слайд 29Раздел переменных (var)
В разделе переменных после служебного слова var содержится список
используемых в программе переменных с указанием их типов. Имена переменных перечисляются через запятую. Список имен переменных завершается двоеточием.
Пример:
var l,m,n: Integer;
a,b: real;
Каждая переменная должна быть отнесена к одному и только одному типу.
В приведенной выше программе раздел переменных состоит из одной строки:
Var A,B,C: integer;
Слайд 30Раздел операторов
Раздел операторов – это часть программы, содержащая команды выполнения
действий (операторы). Раздел операторов начинается со служебного слова begin и заканчивается словом end, после которого должна стоять точка.
Слайд 31Begin - "начало" End - "конец"
Операторные скобки
Слайд 32Операторы. Общие сведения
Алгоритм, по которому должна работать программа, записывается программистом в
виде последовательности операторов. Каждый оператор языка Паскаль предназначен для выполнения определенного действия.
Операторы отделяются друг от друга точкой с запятой. Перед служебными словами until и else точка с запятой не ставится. Перед служебным словом end точку с запятой можно ставить, а можно и нет.
Слайд 33Оператор присваивания
В результате
выполнения оператора присваивания значение переменной становится равным значению заданного выражения.
Синтаксис:
имя_переменной := выражение;
Символ := означает операцию присваивания. Выражение может содержать константы, переменные, вызовы функций, знаки операций и скобки.
Пример оператора присваивания: C:=A+B;
Порядок выполнения действий в выражении можно однозначно определить по его записи. Операции выполняются слева направо с соблюдением приоритета (в порядке убывания):
1) not;
2) * , / , div, mod, and;
3) + , – , or;
4) =, <>,<,>, <=,>=, in.
Любое выражение в скобках вычисляется раньше, чем выполняется операция, предшествующая скобкам.
Присваивание допускается для переменных всех типов, за исключением переменных типа файл.
Слайд 36Составной оператор
Последовательность операторов можно объединить в один составной оператор.
Составной оператор
начинается служебным словом begin (по-английски ”начало”) и заканчивается словом end (”конец”).
Пример.
Составные операторы часто используются внутри операторов цикла и операторов ветвления.
Слова begin и end играют роль операторных скобок. Раздел операторов программы также представляет собой составной оператор.
Слайд 37Ввод и вывод данных в Паскале
В Паскале ввод и вывод данных
выполняется с помощью оператора вызова стандартных процедур. read и readln для ввода;
write и writeln — для вывода.
Слайд 38
Изменить значение переменных можно не только с помощью оператора присваивания, но
и с помощью вызова стандартной процедуры ввода данных.
Синтаксис вызова процедуры read:
read (список_переменных);
Список переменных состоит из одного или более имен переменных. Если имен переменных несколько, то они разделяются запятыми.
Стандартные процедуры ввода read и readln
При выполнении процедуры ввода переменным присваиваются значения, вводимые со стандартного устройства ввода, обычно это клавиатура. Типы вводимых с клавиатуры констант должны совпадать с типами переменных в списке. Константы при наборе разделяются пробелом.
Слайд 39Если вместо процедуры ввода read был использован readln, то ввод данных
следующим оператором будет выполняться с новой строки. Процедура readln может быть вызвана без параметров (круглые скобки тогда не нужны). В этом случае будет проигнорирован остаток данных, находящихся в текущей строке ввода.
Слайд 43Стандартные процедуры вывода write и writeln
Стандартные процедуры вывода предназначены для передачи
результатов из программы во внешнюю среду, например на экран монитора.
Синтаксис вызова стандартной процедуры write:
write (список_выражений);
Список выражений состоит из одного или более выражений. Если выражений несколько, то они разделяются запятыми. В качестве частных случаев выражений в списке могут присутствовать константы и переменные базовых типов.
При выполнении процедуры вывода значения выражений последовательно выводятся в текстовом представлении на стандартное устройство вывода, обычно это монитор. Значения выводятся в одну строку.
После вывода значений процедурой writeln текущая строка вывода завершается, и очередной вывод данных производится в следующую строку.
Процедура writeln может быть вызвана без параметров (круглые скобки тогда не нужны).