Разделы презентаций


Язык программирования Object Pascal

Содержание

§1 Историческая справкаВ 1970г. - Паскаль (швейцарский ученый Никлаус Вирт) Первая версия была создана для машины CDC 6000.В 1983г - Турбо-Паскаль фирмы Borland для ОС CP\M.В 1984г. - Турбо-Паскаль для MS

Слайды и текст этой презентации

Слайд 1Язык программирования Object Pascal
Общий обзор.

Язык программирования Object PascalОбщий обзор.

Слайд 2§1 Историческая справка
В 1970г. - Паскаль (швейцарский ученый Никлаус Вирт)

Первая версия была создана для машины CDC 6000.
В 1983г -

Турбо-Паскаль фирмы Borland для ОС CP\M.
В 1984г. - Турбо-Паскаль для MS DOS.
В 1991г. - Turbo Pascal for Windows
В 1992 - Borland Pascal with Objects 7.0.
В 1995г. - Borland выпустила первую версию Delphi, фундаментом которой стал новый ЯП Object Pascal. Через год появилась Delphi 2 с новой версией Object Pascal 2.0. Затем, с интервалом в 1 год, выходят еще 3 версии Delphi: 2, 3, 4 и 5. Наконец, в середине 2001 г. выпускается версия 6, в 2002 – 7, 2003-8.

§1 Историческая справкаВ 1970г. - Паскаль (швейцарский ученый Никлаус Вирт) Первая версия была создана для машины CDC

Слайд 3§2 Алфавит языка Object Pascal

§2 Алфавит языка Object Pascal

Слайд 4Алфавит языка.
Алфавит языка состоит из множества символов, включающих в себя

буквы, цифры и специальные символы.
Латинские буквы: от А до Z

(заглавные) и от a до z (строчные).
Цифры: 0,1,2,3,4,5,6,7,8,9.
Шестнадцатиричные цифры: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F.
Алфавит языка.Алфавит языка состоит из множества символов, включающих в себя буквы, цифры и специальные символы.Латинские буквы: от

Слайд 5Специальные символы: + * - / < > и т.д.
Следующие

комбинации специальных символов являются едиными символами (их нельзя разделять пробелами):
:=

знак присваивания >=
<> не равно <=
(* *) ограничители комментария
(наряду с { } )
Комментарий не может начинаться с $, т.к.
{$ воспринимается как начало директивы компилятору.
// - закомментировать одну строку

Специальные символы: + * - / < > и т.д.Следующие комбинации специальных символов являются едиными символами (их

Слайд 6К спецсимволам относят служебные слова, смысл которых определен однозначно. Служебные

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

зрения языка - это единые символы.
Например:
and type program as class
while if var uses unit
К спецсимволам относят служебные слова, смысл которых определен однозначно. Служебные слова не могут быть использованы для других

Слайд 7Идентификатор.
Идентификатором называется символическое имя определенного программного объекта
Идентификатор- это любая последовательность

латинских букв, цифр и знака подчеркивания.

Идентификатор.Идентификатором называется символическое имя определенного программного объектаИдентификатор- это любая последовательность латинских букв, цифр и знака подчеркивания.

Слайд 8Длина идентификатора не ограничена, (учитываются первые 256 )
Идентификатор не может

содержать пробелов.
Прописные и строчные буквы идентичны( LABEL1, Label1, label1)
Не содержит

спец. символов
Не начинается с цифры
Длина идентификатора не ограничена, (учитываются первые 256 )Идентификатор не может содержать пробелов.Прописные и строчные буквы идентичны( LABEL1,

Слайд 9Примеры правильных идентификаторов:
a; MyProgramIsBestProgram; external
ALPHA; date_27_sep_39; _beta

Примеры неправильных

идентификаторов:
1Program // начинается цифрой
block#l // содержит специальный символ
My Prog //

содержит пробел
mod // зарезервированное слово
Примеры правильных идентификаторов:a; 	MyProgramIsBestProgram; 	external ALPHA; 	date_27_sep_39; 	_beta Примеры неправильных идентификаторов:1Program // начинается цифройblock#l // содержит специальный

Слайд 10§3 Структура основного файла программы

§3 Структура основного файла программы

Слайд 11Любую программу на языке Object Pascal можно условно разделить на

три основные части:
заголовок программы
раздел описаний
раздел операторов.

Каждое описание и определение заканчивается

точкой с запятой ;
Любую программу на языке Object Pascal можно условно разделить на три основные части:заголовок программыраздел описанийраздел операторов.Каждое описание

Слайд 12Основной файл программы имеет следующую структуру:
Program ;
Uses

модулей>;
const ;
type ;
var ;
procedure

(function) <описание подпрограмм>;
begin
<раздел операторов>
end.
Основной файл программы имеет следующую структуру:Program ;Uses ;const ;type ;var ;procedure (function) ;begin		end.

Слайд 13Заголовок программы
Program ;
Имя программы – идентификатор.
Например:
Program smotr1;
Program

Zadacha_1;

Заголовок программыProgram ; Имя программы – идентификатор. Например:	Program smotr1;	Program Zadacha_1;

Слайд 14 Раздел подключения модулей
Uses ;
В этом

предложении перечисляются модули, загружаемые программой: системные модули и модули приложения.
Например:
uses

SysUtils;
Раздел подключения модулейUses ;В этом предложении перечисляются модули, загружаемые программой: системные модули и модули приложения.Например:uses SysUtils;

Слайд 15Раздел описания констант
В разделе описания констант перечисляются именованные константы и

их значения.

Const = ;

<имя константы2> = <значение2>;
Например:
Сonst n=10;
р=3.1415926535897932384626433832795;
str =‘Маша’;
Раздел описания константВ разделе описания констант перечисляются именованные константы и их значения.Const  = ;

Слайд 16Целые числа записываются со знаком или без него по обычным

правилам и могут иметь значение в диапазоне от -263 до

+263-11.
Целые числа записываются со знаком или без него по обычным правилам и могут иметь значение в диапазоне

Слайд 17Вещественные числа записываются со знаком или без него с использованием

десятичной точки и/или экспоненциальной части.
3.14Е5 - 3,14 умножить на 10

в степени 5;
314000
-17e-2 -минус 17 умножить на 10 в степени минус 2 0,17
Вещественные числа записываются со знаком или без него с использованием десятичной точки и/или экспоненциальной части.3.14Е5 - 3,14

Слайд 18Логическая константа - false (ложь), либо true (истина).
Символьная константа -

это любой символ ПК, заключенный в апострофы:
'z' - символ “z”;

'Ф' - символ “Ф”.
Если необходимо записать собственно символ апострофа, он удваивается: ''''
Логическая константа - false (ложь), либо true (истина).Символьная константа - это любой символ ПК, заключенный в апострофы:'z'

Слайд 19Строковая константа - любая последовательность символов (кроме символа CR -

возврат каретки), заключенная в апострофы. Если в строке нужно указать

сам символ апострофа, он удваивается, например:
'Это - строка символов';
'That''s all'.

Строковая константа - любая последовательность символов (кроме символа CR - возврат каретки), заключенная в апострофы. Если в

Слайд 20Раздел описания типов
Раздел описания типов позволяет определить новый тип в

программе. (могут быть использованы ранее определенные константы.)
Type =

типа>;
Например:
Type MyType1= integer;
VyType2=1..n;
Раздел описания типовРаздел описания типов позволяет определить новый тип в программе. (могут быть использованы ранее определенные константы.)Type

Слайд 21Раздел описания переменных
В разделе описания переменных содержится список переменных, используемых

в программе, и определяется их тип.
Var V1,V2,..,Vn : T ;


где V1,V2,.., Vn -имена переменных
данного типа Т
Например:
Var i, j : integer ;
L : MyType2;
M, k : char ;
Раздел описания переменныхВ разделе описания переменных содержится список переменных, используемых в программе, и определяется их тип.Var V1,V2,..,Vn

Слайд 22Раздел операторов
Раздел операторов состоит из операторов языка ОР, отделенных друг

от друга точкой с запятой. Он заключен в операторные скобки

BEGIN END.
При этом после end ставится точка.
После слова begin и перед словом end точка с запятой обычно не ставится.

Раздел операторовРаздел операторов состоит из операторов языка ОР, отделенных друг от друга точкой с запятой. Он заключен

Слайд 23Операторы действия
1) присваивание
:=
Обязательно: тип выражения и тип

переменной должны быть совместимы по присваиванию.
Пример. Присвоить значения переменным N,

X, Y.
N:=-5; X:=5678.9; Y:=5.6789e3
Операторы действия 1) присваивание := Обязательно: тип выражения и тип переменной должны быть совместимы по присваиванию.Пример. Присвоить

Слайд 242) Ввод
-         READ ();
-         READLN ();
Пример. Ввести значения

переменных N, X,Y
readln(N); readln(X,Y)
или readln (N,X,Y)
или read(N); read

(X,Y)
Или …
2) Ввод-         READ ();-         READLN ();Пример. Ввести значения переменных N, X,Yreadln(N); readln(X,Y) или readln (N,X,Y) или read(N);

Слайд 25Вывод
WRITE ();
WRITELN () (после вывода переход на

новую строку)
элемент вывода имеет вид:
[: [:

после точки> ]]
ВыводWRITE ();WRITELN ()  (после вывода переход на новую строку)элемент вывода имеет вид: [: [: ]]

Слайд 26Readln(a,b);
Readln(c,d);

1 2 3


4 5
a b
c d

Readln(a,b);   Readln(c,d);1 2 3     4 5 a b c d

Слайд 27writeln(a,b);
write(c);
write(d);
12
4
5

writeln(a,b);   write(c);write(d);12 45

Слайд 28a:=3;
Write(a:5);
Write(a/3);
Write(a/3:6:4);

3
1.66666666666667E+0000
1.6667

a:=3;Write(a:5); Write(a/3);Write(a/3:6:4);    31.66666666666667E+00001.6667

Слайд 29§4 Классификация типов данных

§4 Классификация типов данных

Слайд 30Тип определяет
1) формат внутреннего представления объекта данного типа в оперативной

памяти,
2) множество допустимых значений, которые может иметь объект данного

типа,
3) множество допустимых операций, которые применимы к объекту данного типа.
Тип определяет1) формат внутреннего представления объекта данного типа в оперативной памяти, 2) множество допустимых значений, которые может

Слайд 31В ОР группы целых, символьных и строковых типов подразделяются на

две категории:
1. Фундаментальные (fundamental) типы, формат представления которых в памяти

(число битов и наличие знака) строго фиксируются и будут выдерживаться неизменными во всех последующих версиях ОР для любых операционных систем и компьютерных платформ.
В ОР группы целых, символьных и строковых типов подразделяются на две категории:1. Фундаментальные (fundamental) типы, формат представления

Слайд 322) Родовые (generic) типы, формат представления которых в памяти не

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

реализации для конкретной операционной системы и компьютерной платформы.
2) Родовые (generic) типы, формат представления которых в памяти не фиксируется и будет устанавливаться наиболее оптимальным способом,

Слайд 33Простые типы данных

Простые типы данных

Слайд 34Простые типы данных делятся на
порядковые типы

вещественные типы и



типы работающие с датой-временем.

Простые типы данных делятся на порядковые типы вещественные типы и типы работающие с датой-временем.

Слайд 35Порядковые типы данных

Порядковые типы данных

Слайд 36Порядковыми (ordinal) типами называются те, в которых значения упорядочены и

для каждого из них можно указать предшествующее и следующее значение.
Для

порядковых типов определен ряд стандартных функций:

Порядковыми (ordinal) типами называются те, в которых значения упорядочены и для каждого из них можно указать предшествующее

Слайд 37x:=Pred(c); // при с=10 х=9

x:=Pred(c);     // при с=10 х=9

Слайд 38Для порядковых типов определены процедуры инкремента INC(X) и декремента Dec(X).

Эти процедуры соответственно увеличивают или уменьшают на единицу порядковый номер

своего аргумента.

X:=5;
Inc(x); //х=6

Для порядковых типов определены процедуры инкремента INC(X) и декремента Dec(X). Эти процедуры соответственно увеличивают или уменьшают на

Слайд 39Целый тип данных

Целый тип данных

Слайд 40Фундаментальные типы:

Фундаментальные типы:

Слайд 41Родовые типы:

Родовые типы:

Слайд 42Допустимые операции, функции
1) Изменение знака -;
2) *,/,Div,mod
3)

+,-
Div-деление нацело, 13 div 3 =4
mod-остаток от деления. 13 mod

3 =1
-1000 mod 3 = -1

_ 13| 3
12|4
1

Допустимые операции, функции 1) Изменение знака -; 2) *,/,Div,mod 3) +,-Div-деление нацело, 13 div 3 =4mod-остаток от

Слайд 43Randomize; генератор случайных чисел

Randomize; генератор случайных чисел

Слайд 44Пример программы, в которой значение выходит из допустимого диапазона
Var k:Word;
begin
k

:= 65535; // Максимальное значение типа Word
k := k+1;

// По правилам математики k=65536
writeln(k); // На самом деле k=0!
end;
Пример программы, в которой значение выходит из допустимого диапазонаVar k:Word;begin	k := 65535; // Максимальное 			значение типа Word

Слайд 45 Логические типы

Логические типы

Слайд 46Значения логического типа
False (ложь) или True (истина).

Для них

справедливы правила:
Ord(False) = 0
Ord(True) = 1
Succ(False)= True
Pred(True) = False
False

True
Значения логического типа False (ложь) или True (истина). Для них справедливы правила:Ord(False) = 0Ord(True) = 1Succ(False)= TruePred(True)

Слайд 47Логические операции
Or
And
Not
B or C
A and B
Not(C)

Логические операцииOrAndNotB or CA and BNot(C)

Слайд 48 Символьные типы

Символьные типы

Слайд 49Код ANSI
(American National Standard Institute)
коды 0... 127 (Код 43

‘+’ код 91 ‘[’ код 126 ‘~’ )
коды128...255 Стандартные Windows-шрифты:


Arial Cyr
Courier New Cyr
Times New Roman

Коды 192..223 - “А”... “Я”,
Коды 224…255 - “а”... “я”
Код ANSI (American National Standard Institute)коды 0... 127 (Код 43 ‘+’ код 91 ‘[’ код 126 ‘~’

Слайд 50 1. Операции отношения
(,=,>=,


Chr(48)=‘0’
Chr(58)=‘:’
3. Upcase(ch)
Upcase(‘a’)=‘A’
Upcase(‘5’)=‘5’

1. Операции отношения   (,=,>=,

Слайд 51Перечисляемый тип
Задается перечислением тех значений, которые он может получать.


Каждое значение - идентификатор и располагается в списке в круглых

скобках

Type
colors=(red, white, blue);
Перечисляемый тип Задается перечислением тех значений, которые он может получать. Каждое значение - идентификатор и располагается в

Слайд 52Пример
type
colors=(black, red, white);
ordenal=(one, two, three);
days=(Monday, Tuesday, Wednesday);

Ord(black)=0, ... , Ord(white)=2,
Ord(one)=0,

... , Ord(three)=2,

Примерtypecolors=(black, red, white);ordenal=(one, two, three);days=(Monday, Tuesday, Wednesday);…Ord(black)=0, ... , Ord(white)=2,Ord(one)=0, ... , Ord(three)=2,

Слайд 53Var col : colors;
num : ordenal;

day : days;
допустимы операторы
col := black;
num := Succ(two);
day:=Pred(tuesday);
недопустимы
col

:= one; day:=black;
Var 	col : colors;			num : ordenal;       day : days;допустимы операторыcol :=

Слайд 54эквивалентны следующие присваивания:
col := black;
col := colors (0) ;
? col:=0

?
Переменные перечисляемого типа можно объявлять без предварительного описания этого типа,

например:
var
col: (black, white, green);
эквивалентны следующие присваивания:col := black;col := colors (0) ;? col:=0 ?Переменные перечисляемого типа можно объявлять без предварительного

Слайд 55Тип-диапазон Интервальный тип
Подмножество своего базового типа, в качестве которого

может выступать любой порядковый тип, кроме типа-диапазона.
Type
T = N1..N2;

Тип-диапазон  Интервальный тип Подмножество своего базового типа, в качестве которого может выступать любой порядковый тип, кроме

Слайд 56
type
digit = '0'..'9';
dig2 = 48 .. 57;

Тип-диапазон можно указывать непосредственно

при объявлении переменной, например:
var
date : 1..31;
month: 1..12;
Ichr : 'А'..'Z';

type		digit = '0'..'9';		dig2 = 48 .. 57;Тип-диапазон можно указывать непосредственно при объявлении переменной, например:var		date : 1..31;		month: 1..12;		Ichr

Слайд 57
High(X)

Low (X)

High(X) Low (X)

Слайд 58Вещественные типы

Вещественные типы

Слайд 59Внутреннее представление вещественного числа в памяти ПК
S – знаковый разряд числа
Е

– экспоненциальная часть
M – мантисса числа

Внутреннее представление вещественного числа в памяти ПКS – знаковый разряд числаЕ – экспоненциальная частьM – мантисса числа

Слайд 60Встроенные математические функции
arctan(x) cos (x) sin (x)
exp(x) ln(x) sqr(x)
sqrt(x)

pi

Встроенные математические функции arctan(x) 	cos (x) 		sin (x)exp(x) 		ln(x)		sqr(x) sqrt(x)     pi

Слайд 61Арифметические выражения
Правила записи арифметических выражений:
1. Все символы пишутся в одну

строку
2a + √0,5 sin x
0,2 – ln y
(2*a+sqrt(0,5+sin(x)))/(0.2-ln(y))
2. Нельзя ставить

два знака подряд
+(-3)
Арифметические выраженияПравила записи арифметических выражений:1. Все символы пишутся в одну строку2a + √0,5 sin x0,2 – ln

Слайд 623. Операции с более высоким приоритетом выполняются раньше операций с

меньшим приоритетом
4. Операции одного приоритета выполняются слева направо
Приоритет операций

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

Слайд 634. На каждую арифметическую операцию и вычисление стандартной функции тратится

2 единицы времени


4. На каждую арифметическую операцию и вычисление стандартной функции тратится 2 единицы времени

Слайд 64Тип дата-время TDateTime
Назначение: одновременное хранение и даты, и времени.
Внутреннее

представление: вещественное число с фиксированной дробной частью ~Double (8 байт).
Целая

часть числа - дата,
Дробная часть - время
Тип дата-время TDateTimeНазначение: одновременное хранение и даты, и времени. Внутреннее представление: вещественное число с фиксированной дробной частью

Слайд 650 12/30/1899 12:00 am
Дата - количество суток, прошедших с 30 декабря

1899 года,
Время - часть суток, прошедших с 0 часов.

2.75

1/1/1900 6:00 pm
-1.25 12/29/1899 6:00 am
0				12/30/1899 12:00 amДата - количество суток, прошедших с 30 декабря 1899 года, Время - часть суток, прошедших

Слайд 66TDate используется для получения сегодняшей даты
TDate represents a special type

of TDateTime value that has no decimal part. Значение TDate

– количество дней прошедших с 12/30/1899.
TDate используется для получения сегодняшей датыTDate represents a special type of TDateTime value that has no decimal

Слайд 67function Now: TDateTime;
Возвращает текущую дату и время
Writeln( Now);



Writeln( DateTimeToStr(Now));

function Now: TDateTime;Возвращает текущую дату и времяWriteln( Now);Writeln( DateTimeToStr(Now));

Слайд 68функция Time или GetTime возвращает TDateTime;
Var
DateTime :

TDateTime;
begin
DateTime := Time;
Writeln(TimeToStr(DateTime));

TimeToStr – переводит время в

строку
функция Time или GetTime возвращает TDateTime; Var   DateTime : TDateTime;begin DateTime := Time; Writeln(TimeToStr(DateTime)); TimeToStr

Слайд 69Процедура DecodeTime
Выделяет из переменной TDateTime часы минуты, секунды и миллисекунды

DecodeTime(Time,Hour,

Min, Sec, MSec);

Hour, Min, Sec, MSec типа Word
Time типа TDateTime

Процедура DecodeTimeВыделяет из переменной TDateTime часы минуты, секунды и миллисекундыDecodeTime(Time,Hour, Min, Sec, MSec);Hour, Min, Sec, MSec типа

Слайд 70var
Present: TDateTime;
Year, Month, Day, Hour, Min, Sec, MSec:

Word;
Begin
Present:= Now;
DecodeDate(Present, Year, Month, Day);
end.

var Present: TDateTime; Year, Month, Day, Hour, Min, Sec, MSec: Word;Begin Present:= Now; DecodeDate(Present, Year, Month, Day);end.

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика