Основы программирования на языке Паскаль

Содержание

Слайд 2

Буренин С.В. Turbo Pascal. Основы программирования: Учебное пособие. – 2004 Буренин

Буренин С.В.
Turbo Pascal. Основы программирования: Учебное пособие. – 2004

Буренин С.В.,

Корочкин М.А.
Основы алгоритмизации и программирования: учебное пособие. – 2011

ЛИТЕРАТУРА

Слайд 3

1. Языки программирования высокого уровня

1. Языки программирования
высокого уровня

Слайд 4

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

Слайд 5

Слайд 6

ЯЗЫКИ ПРОГРАММИРОВАНИЯ

ЯЗЫКИ ПРОГРАММИРОВАНИЯ

Слайд 7

Ада – язык программирования для применения в системах реального времени (например,

Ада – язык программирования для применения в системах реального времени (например,

управление процессами и/или устройствами в бортовых ЭВМ – корабельных, авиационных и др.)

ЯЗЫКИ ПРОГРАММИРОВАНИЯ ВЫСОКОГО УРОВНЯ

Алгол (1958 - 960) – разработка программ для решения научно-технических задач на ЭВМ

Бейсик (1963-1964) – язык для обучения программированию

Слайд 8

ЯЗЫКИ ПРОГРАММИРОВАНИЯ ВЫСОКОГО УРОВНЯ Кобол (1959) – язык программирования для решения

ЯЗЫКИ ПРОГРАММИРОВАНИЯ ВЫСОКОГО УРОВНЯ

Кобол (1959) – язык программирования для решения экономических

задач (операторы выглядят как обычные английские фразы)

Лисп (1960), Пролог(1971) – языки для решения задач, связанных с искусственным интеллектом

Паскаль (1968-1969) – универсальный язык программирования
(обучение программированию в вузах, промышленное программирование, написание больших и сложных программ)

Слайд 9

СИ (1971) – универсальный язык программирования. (Широко используется для разработки операционных

СИ (1971) – универсальный язык программирования.
(Широко используется для разработки операционных

систем, трансляторов, баз данных и других системных и прикладных программ)

ЯЗЫКИ ПРОГРАММИРОВАНИЯ ВЫСОКОГО УРОВНЯ

Фортран (Formula Translation, 1957) – язык для решения математических задач

Снобол (1962 -1967) – язык для обработки текстовой информации

Слайд 10

Java, Perl, PHP – языки, ориентированные на создание серверных приложений в

Java, Perl, PHP – языки, ориентированные на создание серверных приложений в

Интернет

ЯЗЫКИ ПРОГРАММИРОВАНИЯ ВЫСОКОГО УРОВНЯ

HTML (1992) – язык разметки гипертекста (разработка Web-страниц)

VBA – языки, применяемые в различных офисных программах

Слайд 11

Для того, чтобы программа, написанная на языке высокого уровня, заработала на

Для того, чтобы программа, написанная на языке высокого уровня, заработала на

компьютере, необходима ее трансляция, т.е. преобразование текста программы в машинный код, понятный для микропроцессора.

Компилятор транслирует всю программу целиком и создает вариант программы на машинном языке.

Интерпретатор переводит и выполняет программу строку за строкой.

Транслятор переводит программу с языка высокого уровня на язык машины, понятный компьютеру

Трансляторы реализуются в виде компиляторов или интерпретаторов.

Слайд 12

2. Структура программы. Описание данных

2. Структура программы. Описание данных

Слайд 13

АЛГОРИТМИЧЕСКИЙ ЯЗЫК ПАСКАЛЬ Название язык получил в честь великого французского ученого

АЛГОРИТМИЧЕСКИЙ ЯЗЫК ПАСКАЛЬ

Название язык получил в честь великого французского ученого XVII

века Блеза Паскаля, который изобрел автоматическое устройство для суммирования чисел.

Язык разработан профессором Цюрихского технологического института Никлаусом Виртом в 1969 - 1971 годах.

Сначала язык предназначался для обучения студентов программированию. Но уже через 5-6 лет Паскаль приобрел широкую известность и распространился среди профессиональных программистов всего мира, благодаря простоте, хорошему восприятию материала и эффективности реализации большинства задач вычислительного характера, систем управления базами данных, экспертных систем.

Pascal, Borland Pascal, Turbo Pascal, Pascal ABC, Delphi

Слайд 14

СТРУКТУРА ПРОГРАММЫ Программа состоит из строк. В языке Паскаль максимальная длина

СТРУКТУРА ПРОГРАММЫ

Программа состоит из строк. В языке Паскаль максимальная длина строки

не должна превышать 127 символов.
Слайд 15

СТРУКТУРА ПРОГРАММЫ Программа состоит из строк. В языке Паскаль максимальная длина

СТРУКТУРА ПРОГРАММЫ

Программа состоит из строк. В языке Паскаль максимальная длина строки

не должна превышать 127 символов.
Слайд 16

СТРУКТУРА ПРОГРАММЫ Программа состоит из строк. В языке Паскаль максимальная длина

СТРУКТУРА ПРОГРАММЫ

Программа состоит из строк. В языке Паскаль максимальная длина строки

не должна превышать 127 символов.

Тело программы –
это текст основной программы, начинается служебным словом BEGIN и заканчивается словом END.
В конце программы обязательно ставится точка
Знак ; является разделителем всех операторов и строк в программе.

Слайд 17

СТРУКТУРА ПРОГРАММЫ Комментарии – это пояснительный текст, который можно записать в

СТРУКТУРА ПРОГРАММЫ

Комментарии – это пояснительный текст, который можно записать в любом

месте программы.
Текст комментария ограничен символами { } или (* *).

Пример: { это пояснительный текст }
(* а можно и так записать *)

Идентификаторы – это любые имена, задаваемые пользователем в программе для обозначения меток, констант, переменных, процедур и функций.
Все идентификаторы должны начинаться с буквы или знака подчеркивания. Не допускается использование в именах пробелов, точек и других символов.
Регистр букв (прописные, строчные) в именах и служебных словах значения не имеет.

Пример: Metka1, Blok_38, _Dom - правильно записанные имена
12Gr, Blok 5, Dom.5 - ошибки в именах идентификаторов!
⇧ ⇧ ⇧

Слайд 18

ОПИСАНИЕ ДАННЫХ В ЯЗЫКЕ ПАСКАЛЬ Описание констант Константы – это элементы

ОПИСАНИЕ ДАННЫХ В ЯЗЫКЕ ПАСКАЛЬ

Описание констант

Константы – это элементы данных,

значения которых известны и в процессе выполнения программы не изменяются.

Для обозначения числа π применяется стандартный идентификатор Pi, не требующий описания

Пример: Const Max=100;
A=8.3; B=-5.1;

Слайд 19

ОПИСАНИЕ ДАННЫХ В ЯЗЫКЕ ПАСКАЛЬ Описание переменных Переменные – это данные,

ОПИСАНИЕ ДАННЫХ В ЯЗЫКЕ ПАСКАЛЬ

Описание переменных

Переменные – это данные, которые могут

изменять свои значения в процессе выполнения программы. Каждая встречающаяся в программе переменная должна быть описана до начала программы в блоке описания данных !

Тип переменной – это формат ее значения: число, символ, строка и т.д.

Слайд 20

1. Integer – целые числа в диапазоне от -32768 до +32767.

1. Integer – целые числа в диапазоне от -32768 до +32767.

Пример:

Var St1, St2 : String[50]; – строка длиной до 50 символов
St : String; – строка длиной до 255 символов

ОПИСАНИЕ ДАННЫХ В ЯЗЫКЕ ПАСКАЛЬ

Описание переменных

Стандартные типы переменных:

Пример: Var n, k, i : Integer;

2. Real – вещественные (дробные) числа.

Пример: Var a, b, c : real;

3. Byte – целые числа в диапазоне от 0 до 255.

Пример: Var n, m : byte;

4. String – строковый тип, использующий строковые данные.

6. Boolean – логические переменные, принимающие только одно из двух значений: True (истина) или False (ложь).

5. Char – символьный тип (буквы, цифры, символы и знаки).

Слайд 21

3. Простейшие операции

3. Простейшие операции

Слайд 22

ПРОСТЕЙШИЕ ОПЕРАЦИИ Арифметические операции Операция Команда Пример Результат 14 div 5

ПРОСТЕЙШИЕ ОПЕРАЦИИ

Арифметические операции

Операция

Команда

Пример

Результат

14 div 5

2

2 div 6

0

11 mod 5

1

24 mod 5

4

Слайд 23

ПРОСТЕЙШИЕ ОПЕРАЦИИ Операции отношения (сравнения) Операция Знак

ПРОСТЕЙШИЕ ОПЕРАЦИИ

Операции отношения
(сравнения)

Операция

Знак

Слайд 24

ПРОСТЕЙШИЕ ОПЕРАЦИИ Операции отношения (сравнения) Операция Знак Пример:

ПРОСТЕЙШИЕ ОПЕРАЦИИ

Операции отношения
(сравнения)

Операция

Знак

Пример:

Слайд 25

4. Операторы ввода-вывода, структурные операторы

4. Операторы ввода-вывода, структурные операторы

Слайд 26

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ Простые Ввода-вывода Структурные Программа состоит из последовательности

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ

Простые

Ввода-вывода

Структурные

Программа состоит из последовательности операторов, выполняемых строго друг

за другом в порядке их описания слева направо и сверху вниз.

Операторы :

Слайд 27

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ Простые операторы 1. Оператор присваивания := вычисляет

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ

Простые операторы

1. Оператор присваивания := вычисляет выражение справа

от него и присваивает результат переменной, стоящей слева.

Пример: A:=1; B:=sin(C)+cos(D);
N:=N+1; S:=S+y;

Слайд 28

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ Простые операторы 1. Оператор присваивания := вычисляет

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ

Простые операторы

1. Оператор присваивания := вычисляет выражение справа

от него и присваивает результат переменной, стоящей слева.

Пример: A:=1; B:=sin(C)+cos(D);
N:=N+1; S:=S+y;

2. Оператор безусловного перехода Goto применяется для перехода на заданную метку из любого места программы.

Метка позволяет выполнить переход к отмеченному оператору или строке из любого места программы.

Слайд 29

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ Операторы ввода-вывода 1. Оператор ввода (чтения) обеспечивает

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ

Операторы ввода-вывода

1. Оператор ввода (чтения) обеспечивает ввод данных

с клавиатуры (либо чтение из файла) для их последующей обработки программой.
Слайд 30

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ Операторы ввода-вывода 2. Оператор вывода (записи) обеспечивает

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ

Операторы ввода-вывода

2. Оператор вывода (записи) обеспечивает вывод данных

на экран монитора (либо запись в файл).
Слайд 31

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ Операторы ввода-вывода 2. Оператор вывода (записи) обеспечивает

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ

Операторы ввода-вывода

2. Оператор вывода (записи) обеспечивает вывод данных

на экран монитора (либо запись в файл).
Слайд 32

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ Операторы ввода-вывода 2. Оператор вывода (записи) обеспечивает

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ

Операторы ввода-вывода

2. Оператор вывода (записи) обеспечивает вывод данных

на экран монитора (либо запись в файл).
Слайд 33

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ Операторы ввода-вывода 2. Оператор вывода (записи) обеспечивает

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ

Операторы ввода-вывода

2. Оператор вывода (записи) обеспечивает вывод данных

на экран монитора (либо запись в файл).

Пример описания оператора вывода

WriteLn ( X : n1 : n2 );
X – переменная, значение которой выводится на экран;
n1 – число символов на экране для вывода значения переменной X;
n2 – число символов после запятой (для дробных чисел типа real).

Пример: x:=33.5391; Результат:

WriteLn(x); 3.3539100000E+01

WriteLn(x:10); 3.3539E+01

WriteLn(x:5:2); 33.54

Слайд 34

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ Задача 1: Вычислить площадь и периметр окружности заданного радиуса R.

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ

Задача 1: Вычислить площадь и периметр окружности заданного

радиуса R.
Слайд 35

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ Program Z1; Var R,S,P : Real; Begin Readln(R); P:=2*Pi*R; S:=Pi*R*R; Writeln(P,S); End.

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ

Program Z1;

Var R,S,P : Real;

Begin

Readln(R);

P:=2*Pi*R;
S:=Pi*R*R;

Writeln(P,S);

End.

Слайд 36

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ Program Z1; Var R,S,P : Real; Begin

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ

Program Z1;

Var R,S,P : Real;

Begin

Readln(R);

P:=2*Pi*R;
S:=Pi*R*R;

Writeln(P,S);

End.

Тело программы

Заголовок

Блок описания данных

Слайд 37

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ Задача 2: Дана электрическая схема, в которой

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ

Задача 2: Дана электрическая схема, в которой U=110

В. Для произвольно заданных значений сопротивлений R1 и R2 вычислить ток I, проходящий через цепь.
Слайд 38

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ Program Z2; Var R1, R2, R, I

ОПЕРАТОРЫ В ЯЗЫКЕ ПАСКАЛЬ

Program Z2;

Var R1, R2, R, I : Real;

Begin

Readln(R1,

R2);

R:=R1*R2/(R1+R2);
I:=U/R;

Writeln(I);

End.

Const U=110;

Слайд 39

СТРУКТУРНЫЕ ОПЕРАТОРЫ Структурные операторы - это структуры, построенные из других операторов

СТРУКТУРНЫЕ ОПЕРАТОРЫ

Структурные операторы - это структуры, построенные из других операторов по

определенным правилам.

Составные операторы – это любая группа операторов в теле программы, ограниченная словами Begin и End.

Слайд 40

СТРУКТУРНЫЕ ОПЕРАТОРЫ Условный оператор if обеспечивает выполнение оператора или группы операторов

СТРУКТУРНЫЕ ОПЕРАТОРЫ

Условный оператор if обеспечивает выполнение оператора или группы операторов в

зависимости от заданных условий.

Варианты записи условного оператора if

а) ветвление

Слайд 41

СТРУКТУРНЫЕ ОПЕРАТОРЫ Условный оператор if обеспечивает выполнение оператора или группы операторов

СТРУКТУРНЫЕ ОПЕРАТОРЫ

Условный оператор if обеспечивает выполнение оператора или группы операторов в

зависимости от заданных условий.

Варианты записи условного оператора if

Задача 3: Для заданного значения переменной x вычислить

Слайд 42

СТРУКТУРНЫЕ ОПЕРАТОРЫ Условный оператор if обеспечивает выполнение оператора или группы операторов

СТРУКТУРНЫЕ ОПЕРАТОРЫ

Условный оператор if обеспечивает выполнение оператора или группы операторов в

зависимости от заданных условий.

Варианты записи условного оператора if

б) обход

If условие then
Begin
oператор1;
oператор2
End;

Слайд 43

СТРУКТУРНЫЕ ОПЕРАТОРЫ Условный оператор if обеспечивает выполнение оператора или группы операторов

СТРУКТУРНЫЕ ОПЕРАТОРЫ

Условный оператор if обеспечивает выполнение оператора или группы операторов в

зависимости от заданных условий.

Варианты записи условного оператора if

в) выбор

If условие1 then оператор1
else If условие2 then оператор2
else If условие3 then оператор3
else оператор4;

Слайд 44

СТРУКТУРНЫЕ ОПЕРАТОРЫ Условный оператор if обеспечивает выполнение оператора или группы операторов

СТРУКТУРНЫЕ ОПЕРАТОРЫ

Условный оператор if обеспечивает выполнение оператора или группы операторов в

зависимости от заданных условий.

Задача 4: Для заданного значения переменной x вычислить

Слайд 45

СТАНДАРТНЫЕ ФУНКЦИИ ЯЗЫКА ПАСКАЛЬ

СТАНДАРТНЫЕ ФУНКЦИИ ЯЗЫКА ПАСКАЛЬ

Слайд 46

СТАНДАРТНЫЕ ФУНКЦИИ ЯЗЫКА ПАСКАЛЬ Функция Назначение Пример Результат Возведение в произвольную

СТАНДАРТНЫЕ ФУНКЦИИ ЯЗЫКА ПАСКАЛЬ

Функция

Назначение

Пример

Результат

Возведение в произвольную степень y=xa y:=exp(a*ln(x))

Вычисление логарифма y=logax

y:=ln(x)/ln(a)
Слайд 47

ОПЕРАТОРЫ ПОВТОРА Операторы повтора используются для описания циклических структур. Цикл -

ОПЕРАТОРЫ ПОВТОРА

Операторы повтора используются для описания циклических структур.

Цикл - это последовательность

операторов, которая может повторяться более 1 раза
Слайд 48

ОПЕРАТОРЫ ПОВТОРА 1) Оператор повтора For используется в циклах с шагом

ОПЕРАТОРЫ ПОВТОРА

1) Оператор повтора For используется в циклах с шагом изменяемой

переменной +1 или -1.
В операторе For не допускается изменение параметра цикла на величину, отличную от ±1.

Описание:
For x:=xнач to xкон do оператор (для шага Δx=1)
For x:=xнач downto xкон do оператор (для шага Δx=-1)

Слайд 49

ОПЕРАТОРЫ ПОВТОРА 1) Оператор повтора For используется в циклах с шагом

ОПЕРАТОРЫ ПОВТОРА

1) Оператор повтора For используется в циклах с шагом изменяемой

переменной +1 или -1.
В операторе For не допускается изменение параметра цикла на величину, отличную от ±1.
Слайд 50

ОПЕРАТОРЫ ПОВТОРА Задача 1. Вычислить периметр и площадь круга при изменении

ОПЕРАТОРЫ ПОВТОРА

Задача 1.
Вычислить периметр и площадь круга при изменении радиуса

от 1 до 10 см с шагом 1 см.
Слайд 51

ОПЕРАТОРЫ ПОВТОРА Program Krug; Var R : Integer; P, S :

ОПЕРАТОРЫ ПОВТОРА

Program Krug;

Var R : Integer;
P, S : Real;

Begin

For R:=1

to 10 do

Begin
P:=2*Pi*R;
S:=Pi*Sqr(R);
Writeln(R, P, S);
End;

End.

Слайд 52

ОПЕРАТОРЫ ПОВТОРА Задача 2. Составить таблицу перевода из рублей в евро

ОПЕРАТОРЫ ПОВТОРА

Задача 2.
Составить таблицу перевода из рублей в евро от

1000 до 1200 рублей с шагом в 1 рубль.
Курс валюты задать.
Слайд 53

ОПЕРАТОРЫ ПОВТОРА 2) Оператор повтора Repeat состоит из заголовка (Repeat), тела

ОПЕРАТОРЫ ПОВТОРА

2) Оператор повтора Repeat состоит из заголовка (Repeat), тела цикла

и условия окончания цикла (until).

Применяется для циклических структур с произвольным шагом изменяемой переменной.

Описание:
x := xнач ;
Repeat
оператор1;
оператор2;
...
x := x ± Δx
Until условие выхода из цикла;

Слайд 54

ОПЕРАТОРЫ ПОВТОРА Задача 3: Дана электрическая схема, в которой U=220 В,

ОПЕРАТОРЫ ПОВТОРА

Задача 3:
Дана электрическая схема, в которой U=220 В, R1=900

Ом.
Рассчитать значения тока в цепи при изменении сопротивления R2 от 200 до 1500 Ом с шагом 100 Ом.

200 ≤ R2 ≤1500, ΔR2=100

Слайд 55

ОПЕРАТОРЫ ПОВТОРА Задача 4: Вычислить y=5x2+C для значений 0≤х≤15, Δх=0.3, С=8.2.

ОПЕРАТОРЫ ПОВТОРА

Задача 4:
Вычислить y=5x2+C для значений 0≤х≤15, Δх=0.3, С=8.2.

Слайд 56

ОПЕРАТОРЫ ПОВТОРА 3) Оператор повтора While проводит проверку условия в начале,

ОПЕРАТОРЫ ПОВТОРА

3) Оператор повтора While проводит проверку условия в начале, до

выполнения тела цикла.
Оператор соответствует циклу с предусловием (цикл ПОКА).

Описание:
x := xнач ;
While условие выполнения цикла do
Begin
оператор1;
оператор2;
...
x := x ± Δx
End;

Слайд 57

ОПЕРАТОРЫ ПОВТОРА

ОПЕРАТОРЫ ПОВТОРА

 

Слайд 58

ОПЕРАТОРЫ ПОВТОРА

ОПЕРАТОРЫ ПОВТОРА

 

Слайд 59

ОПЕРАТОРЫ ПОВТОРА Задание. Вычислить сумму k изменяется от 1 до 10

ОПЕРАТОРЫ ПОВТОРА

Задание.
Вычислить сумму
k изменяется от 1 до 10 с шагом 1
2.

Вычислить площадь пожара при изменении времени от 0 до 90 минуты с шагом в 5 минут. Скорость развития пожара V=2 м/мин