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


Основные элементы языка Паскаль

Содержание

Общая характеристика языка ПаскальОсновные понятия языка ПаскальТипы данных и операции, производимые с нимиСтандартные процедуры и функцииПростейшие операторыПроцедуры ввода-вывода данныхМетки и оператор безусловного переходаСодержание

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

Слайд 1Основные элементы языка Паскаль
Тема 2.

Основные элементы языка ПаскальТема 2.

Слайд 2Общая характеристика языка Паскаль
Основные понятия языка Паскаль
Типы данных и операции,

производимые с ними
Стандартные процедуры и функции
Простейшие операторы
Процедуры ввода-вывода данных
Метки и

оператор безусловного перехода

Содержание

Общая характеристика языка ПаскальОсновные понятия языка ПаскальТипы данных и операции, производимые с нимиСтандартные процедуры и функцииПростейшие операторыПроцедуры

Слайд 31. Общая характеристика языка Паскаль

1. Общая характеристика языка Паскаль

Слайд 4Языки программирования
Язык Паскаль был разработан Никласом Виртом первоначально для целей

обучения программированию.
В настоящее время он получил широкое распространение

по ряду объективных причин:
По своей идеологии Паскаль наиболее близок к современной методике и технологии программирования. В частности, он достаточно полно отражает идеи структурного программирования, что довольно хорошо видно даже из основных управляющих структур языка.
Паскаль хорошо приспособлен для применения технологии разработки программ сверху-вниз (пошаговой детализации).
Паскаль содержит большое разнообразие различных структур данных, что обеспечивает простоту алгоритмов, а следовательно снижение трудоемкости при разработке программ.
Языки программированияЯзык Паскаль был разработан Никласом Виртом первоначально для целей обучения программированию. В настоящее время он получил

Слайд 5Отличия алгоритмических языков от машинных
алгоритмический язык обладает гораздо большими выразительными

возможностями, т.е. его алфавит значительно шире алфавита машинного языка, что

существенно повышает наглядность текста программы;
набор операций, допустимых для использования, не зависит от набора машинных операций, а выбирается из соображений удобства формулирования алгоритмов решения задач определенного класса;
формат предложений достаточно гибок и удобен для использования, что позволяет с помощью одного предложения задать достаточно содержательный этап обработки данных;
Отличия алгоритмических языков от машинныхалгоритмический язык обладает гораздо большими выразительными возможностями, т.е. его алфавит значительно шире алфавита

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

человека виде, например, с помощью общепринятых математических обозначений;
для задания

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

Слайд 7Языки программирования
Из вышеперечисленного следует, что алгоритмический язык в значительной мере

является машинно-независимым.

Языки программированияИз вышеперечисленного следует, что алгоритмический язык в значительной мере является машинно-независимым.

Слайд 82. Основные понятия языка Паскаль

2. Основные понятия языка Паскаль

Слайд 9Алфавит языка Паскаль
Алфавит включает в себя буквы, цифры и специальные

символы.
1. Прописные и строчные буквы латинского алфавита:

A B C

D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z

_ знак подчеркивания (используется в именах вместо пробела)

2. Десятичные цифры: 0 1 2 3 4 5 6 7 8 9

Алфавит языка ПаскальАлфавит включает в себя буквы, цифры и специальные символы.1. Прописные и строчные буквы латинского алфавита:

Слайд 10Алфавит языка Паскаль
3. Прописные и строчные буквы русского алфавита
(для комментариев,

для вывода сообщений на экран):

А Б В Г Д

Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш
Щ Ъ Ы Ь Э Ю Я
а б в г д е ё ж з и й к л м н о п р с т у ф х ц ч ш
щ ъ ы ь э ю я
Алфавит языка Паскаль3. Прописные и строчные буквы русского алфавита	(для комментариев, для вывода сообщений на экран): А Б

Слайд 11Алфавит языка Паскаль
4. Специальные символы:
+ плюс – минус
* звездочка

/ дробная черта (слэш)
> больше < меньше = равно
:

двоеточие ; точка с запятой
пробел
' апостроф , запятая . точка
^ крышка @ коммерческое а (эт)
$ знак доллара # номер
[ ] квадратные скобки
{ } фигурные скобки
( ) круглые скобки
Алфавит языка Паскаль4. Специальные символы:+ плюс 			– минус 		* звездочка 		/ дробная черта (слэш)> больше 		< меньше

Слайд 12Алфавит языка Паскаль
5. Составные символы, которые нельзя разделять пробелами
не

равно
= больше или равно
:= присваивание


.. промежуток значений
(* *) (. .) начало и конец комментариев
(замена фигурных скобок)
Алфавит языка Паскаль5. Составные символы, которые нельзя разделять пробелами не равно 		= больше или равно:= присваивание	 ..

Слайд 13Зарезервированные слова
ABSOLUTE
AND
ARRAY
ASM
ASSEMBLER
BEGIN
CASE
CONST
CONSTRUCTOR
DESTRUCTOR
DIV
DO
DOWNTO
ELSE
END
EXTERNAL
FAR
FILE
FOR
FORWARD
FUNCTION
GOTO
IF
IMPLEMENTATION
IN
INHERITED
INLINE
INTERFACE
INTERRUPT
LABEL
MOD
NEAR
NIL
NOT
OBJECT
OF
OR
PACKED
PRIVATE
PROCEDURE
PROGRAM
PUBLIC
RECORD
REPEAT
SET
SHL
SHR
STRING
THEN
TO
TYPE
UNIT
UNTIL
USES
VAR
VIRTUAL
WHILE
WITH
XOR

Зарезервированные словаABSOLUTEANDARRAYASMASSEMBLERBEGINCASECONSTCONSTRUCTORDESTRUCTORDIVDODOWNTOELSEENDEXTERNALFARFILEFORFORWARDFUNCTIONGOTOIFIMPLEMENTATIONININHERITEDINLINEINTERFACEINTERRUPTLABELMODNEARNILNOTOBJECTOFORPACKEDPRIVATEPROCEDUREPROGRAMPUBLICRECORDREPEATSETSHLSHRSTRINGTHENTOTYPEUNITUNTILUSESVARVIRTUALWHILEWITHXOR

Слайд 14Структура программы
Для того чтобы компилятор правильно понял, какие именно действия

от него ожидаются, программа должна быть оформлена в полном соответствии

с синтаксисом (правилами построения программ) языка Паскаль.
Структура программыДля того чтобы компилятор правильно понял, какие именно действия от него ожидаются, программа должна быть оформлена

Слайд 15
Структура программы
program ;
Uses …; { подключаемые модули и библиотеки }
Label

…; { раздел объявления меток }
Const …; { раздел объявления

констант }
Type …; { раздел объявления типов }
Var …; { раздел объявления переменных }


begin { начало основного блока программы }
… { операторы основного блока программы }
end. { конец основного блока программы }

Procedure …; { раздел описания процедур }
Function …; { раздел описания функций }

комментарии в фигурных скобках не обрабатываются

Структура программыprogram ;Uses …;	{ подключаемые модули и библиотеки }Label …;	{ раздел объявления меток 		  }Const …;	{

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

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

но при этом всегда должно выполняться главное правило языка Паскаль:
Структура программыЛюбой из перечисленных необязательных разделов может встречаться в тексте программы более одного раза, их общая последовательность

Слайд 17Оформление текста программы
Шапка – комментарий в начале процедур и функций.
{----------------------------------------

Max – максимальное из двух чисел
Вход: a, b

– исходные числа
Выход: максимальное из a и b
----------------------------------------}
function Max(a, b: integer): integer;
begin
...
end;
Оформление текста программыШапка – комментарий в начале процедур и функций.{---------------------------------------- Max – максимальное из двух чисел

Слайд 18

Оформление текста программы
Отступы – тело цикла, условного оператора, оператора выбора

и т.п. сдвигается вправо на 2-3 символа.
for i:=1 to n

do begin j := 0; while j < i
do begin j := j + 1; k := k mod N; end; k
:= k + 1; end;


for i:=1 to n do begin
j := 0;
while j < i do begin
j := j + 1;
k := k mod N;
end;
k := k + 1;
end;

легче читать текст программы
видны блоки begin-end (где начинаются и заканчиваются)

Оформление текста программыОтступы – тело цикла, условного оператора, оператора выбора и т.п. сдвигается вправо на 2-3 символа.for

Слайд 19Оформление текста программы
«говорящие» имена функций, процедур, переменных: Sum, ShowMenu, count,

speed.
пробелы в операторах



выделение пустыми строками и комментариями важных блоков
if(a

( a < b ) then
b := c + d;


{ ввод данных }
writeln( 'Введите число' );
read ( n );
{ вычисления }
n2 := n*n;
{ вывод результата }
writeln ( 'Его квадрат ', n2);

Оформление текста программы«говорящие» имена функций, процедур, переменных: Sum, ShowMenu, count, speed.пробелы в операторахвыделение пустыми  строками и

Слайд 20
Порядок разработки программы
1. Программист должен знать алгоритм решения задачи
2. Нужно

придумать имена константам, переменным
3. Нужно определить какого типа будут переменные
4.

Перед вычислениями нужно задать или ввести исходные данные для решения задачи
5. Задать действия необходимые для получения результата
6. Полученный результат нужно вывести
7. Проверить работоспособность программы на нескольких исходных данных
Порядок разработки программы1. Программист должен знать алгоритм решения задачи2. Нужно придумать имена константам, переменным3. Нужно определить какого

Слайд 21
Из чего состоит программа?
Константа – постоянная величина, имеющая имя.
Переменная –

изменяющаяся величина, имеющая имя (ячейка памяти).
Выражение состоит из констант, переменных,

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

Слайд 22
Из чего состоит программа?
Процедура – вспомогательный алгоритм, описывающий некоторые действия

(рисование окружности).
Функция – вспомогательный алгоритм для выполнения вычислений (вычисление квадратного

корня, sin).
Из чего состоит программа?Процедура – вспомогательный алгоритм, описывающий некоторые действия (рисование окружности).Функция – вспомогательный алгоритм для выполнения

Слайд 23
Идентификаторы
Имена, даваемые программным объектам (константам, типам, переменным, функциям и процедурам,

да и всей программе целиком) называются идентификаторами.
Каждый объект программы

должен иметь уникальный идентификатор.
Идентификаторы могут иметь любую длину, но если у двух имен первые 63 символа совпадают, то такие имена считаются идентичными. Максимальная длина - 127 символов.
Вы можете давать программным объектам любые имена, но необходимо, чтобы они отличались от зарезервированных слов языка Паскаль, потому что компилятор все равно не примет переменные с "чужими" именами.
ИдентификаторыИмена, даваемые программным объектам (константам, типам, переменным, функциям и процедурам, да и всей программе целиком) называются идентификаторами.

Слайд 24
Идентификаторы
Имена могут включать
латинские буквы (A-Z)


цифры


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

не различаются
Имена НЕ могут включать
русские буквы
пробелы
скобки, знаки +, =, !,

? и др.

имя не может начинаться с цифры

ИдентификаторыИмена могут включатьлатинские буквы (A-Z)цифрызнак подчеркивания _заглавные и строчные буквы не различаютсяИмена НЕ могут включатьрусские буквыпробелыскобки, знаки

Слайд 25Константа - это объект, значение которого известно еще до начала

работы программы.

необходимы для оформления наглядных программ,
незаменимы при использовании в

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

Константы

Константа - это объект, значение которого известно еще до начала работы программы.необходимы для оформления наглядных программ, незаменимы

Слайд 26© С.В.Кухта, 2009

Константы
const
i2 = 45; { целое

число }
pi = 3.14; { вещественное число }

qq = 'Вася';

{ строка символов }

L = True; { логическая величина }

целая и дробная часть отделяются точкой

можно использовать русские буквы!

может принимать два значения:
True (истина, «да»)
False (ложь, «нет»)

© С.В.Кухта, 2009Константыconst 	  	i2 = 45; { целое число }	pi = 3.14; { вещественное число

Слайд 27
Константы
В языке Паскаль существует три вида констант:

неименованные константы (цифры и

числа, символы и строки, множества);
именованные нетипизированные константы;
именованные типизированные константы.

КонстантыВ языке Паскаль существует три вида констант:неименованные константы (цифры и числа, символы и строки, множества);именованные нетипизированные константы;именованные

Слайд 28
Неименованные константы
Неименованные константы не имеют имен, и потому их не

нужно описывать.
Тип неименованной константы определяется автоматически, по умолчанию:
любая последовательность цифр

(возможно, предваряемая знаком "-" или "+" или разбиваемая одной точкой) воспринимается компилятором как число (целое или вещественное);
любая последовательность символов, заключенная в апострофы, воспринимается как строка;
любая последовательность целых чисел либо символов через запятую, обрамленная квадратными скобками, воспринимается как множество.
Кроме того, существуют две специальные константы true и false, относящиеся к логическому типу данных.
Неименованные константыНеименованные константы не имеют имен, и потому их не нужно описывать.Тип неименованной константы определяется автоматически, по

Слайд 29
Неименованные константы
int1 := -10;
real2 := 12.075 + х;
char3 := 'z';
string4

:= 'abc' + string44;
set5 := [1,3,5] * set55;
boolean6 := true;


Примерами использования неименованных констант могут послужить следующие операторы:

Неименованные константыint1 := -10;real2 := 12.075 + х;char3 := 'z';string4 := 'abc' + string44;set5 := [1,3,5] *

Слайд 30
Нетипизированные константы
Именованные константы, как следует из их названия, должны иметь

имя. Стало быть, эти имена необходимо сообщить компилятору, то есть

описать в специальном разделе const.
Если не указывать тип константы, то по ее внешнему виду компилятор сам определит, к какому типу ее отнести.
Любую уже описанную константу можно использовать при объявлении других констант, переменных и типов данных.
Нетипизированные константыИменованные константы, как следует из их названия, должны иметь имя. Стало быть, эти имена необходимо сообщить

Слайд 31
const n = -10;
m = 1000000000;
mmm =

n*100;
x = 2.5;
c = 'z';
s = 'компьютер';
b = true;
Примеры

описания нетипизированных констант:

Нетипизированные константы

const n = -10;   	m = 1000000000;	mmm = n*100;	x = 2.5;	c = 'z';	s = 'компьютер';	b

Слайд 32
Типизированные константы
Типизированные именованные константы представляют собой переменные с начальным значением,

которое к моменту старта программы уже известно.
Следовательно,
во-первых, типизированные

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

Слайд 33
Типизированные константы
Описание типизированных констант производится по следующему шаблону:
const
< имя

константы > : < тип константы > =

<начальное значение>;
Типизированные константыОписание типизированных констант производится по следующему шаблону:	const 		< имя константы > : < тип константы >

Слайд 34
const n: integer = -10;
x: real =

2.5;
c: char = 'z';
b: boolean = true;


Примеры описания типизированных констант:

Типизированные константы


const n: integer = -10;   	x: real = 2.5;   	c: char = 'z';	b:

Слайд 35
Переменные
Переменная – это величина, имеющая имя, тип данных и значение.

Значение переменной можно изменять во время работы программы.
Тип данных -

это характеристика диапазона значений, которые может принимать переменная, относящиеся к этому типу данных.

Наиболее часто применяемые типы переменных:
integer { целая }
real { вещественная }
char { один символ }
string { символьная строка }
boolean { логическая }

ПеременныеПеременная – это величина, имеющая имя, тип данных и значение. Значение переменной можно изменять во время работы

Слайд 36
Переменные
Все используемые в программе переменные должны быть описаны в специальном

разделе var по следующему шаблону:
Пример объявления переменных (выделение памяти):
var

a, b: integer;
Q: real;
s1, s2: string;

var <имя переменной 1> [, <имя переменной 2,
...>] : <имя типа 1>;
<имя переменной 3> [, <имя переменной 4,
...>] : <имя типа 2>;

ПеременныеВсе используемые в программе переменные должны быть описаны в специальном разделе var по следующему шаблону: Пример объявления

Слайд 37
Комментарии
Используют для пояснений, необходимых для лучшего понимания программы.
Комментарий представляет собой

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

разрешен пробел.
Текст комментария ограничен символами { и } или (* и *). Может содержать любые комбинации латинских и русских букв, цифр и других символов алфавита языка Паскаль.
Примеры:

{ Комментарий к программе Regress }
{ Блок вычисления
корней уравнения }
(* Переменная для вычисления суммы ряда *)

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

Слайд 38Комментарии
По месту положения в программе комментарии подразделяются на три класса:


объясняющие назначение программы;
поясняющие смысл идентификаторов констант и переменных;
объясняющие труднопонимаемые элементы

алгоритма.
КомментарииПо месту положения в программе комментарии подразделяются на три класса: объясняющие назначение программы;поясняющие смысл идентификаторов констант и

Слайд 39Комментарии
Внутри самого комментария символы } или *) встречаться не должны.
Во

время компилирования программы комментарии игнорируются. Следовательно, их можно добавлять в

любом месте программы.
Можно даже разорвать оператор вставкой комментария.
Кроме того, все, что находится после ключевого слова end., завершающего текст программы, компилятор тоже воспринимает как комментарий.
КомментарииВнутри самого комментария символы } или *) встречаться не должны.Во время компилирования программы комментарии игнорируются. Следовательно, их

Слайд 403. Типы данных и операции

3. Типы данных и операции

Слайд 41Компиляторы языка Паскаль требуют, чтобы сведения об объеме памяти, необходимой

для работы программы, были предоставлены до начала ее работы.
Для

этого в разделе описания переменных (var) нужно перечислить все переменные, используемые в программе. Кроме того, необходимо также сообщить компилятору, сколько памяти каждая из этих переменных будет занимать. А еще было бы неплохо заранее условиться о различных операциях, применимых к тем или иным переменным.
Все это можно сообщить программе, просто указав тип будущей переменной. Имея информацию о типе переменной, компилятор "понимает", сколько байт необходимо отвести под нее, какие действия с ней можно производить и в каких конструкциях она может участвовать.
Компиляторы языка Паскаль требуют, чтобы сведения об объеме памяти, необходимой для работы программы, были предоставлены до начала

Слайд 42Тип данных определяет:
возможные значения переменных, констант, функций, выражений, принадлежащих к

данному типу;
внутреннюю форму представления данных в ЭВМ;
операции и

функции, которые могут выполняться над величинами, принадлежащими к данному типу.
Тип данных определяет:возможные значения переменных, констант, функций, выражений, принадлежащих к данному типу; внутреннюю форму представления данных в

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

базовые типы
конструируемые типы

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

Слайд 44Целочисленные типы определяют константы, переменные и функции, значения которых реализуются

множеством целых чисел.
Целочисленные типы данных
Целочисленный тип данных BYTE
Целочисленный тип

данных WORD

Допустимые значения: от 0 до 255
Пример: 5 58

Допустимые значения: от 0 до 65535
Пример: 5 58 43467

Целочисленные типы определяют константы, переменные и функции, значения которых реализуются множеством целых чисел.Целочисленные типы данных Целочисленный тип

Слайд 45Целочисленные типы данных
Целочисленный тип данных SHORTINT
Целочисленный тип данных INTEGER
Допустимые

значения: от –128 до 127
Пример: -5 0 58
Допустимые значения:

от –32768 до 32767
Пример: 5 –58 0 10000 –32768
Целочисленные типы данных Целочисленный тип данных SHORTINTЦелочисленный тип данных INTEGERДопустимые значения: от –128 до 127Пример: -5 0

Слайд 46Целочисленные типы данных
Целочисленный тип данных LONGINT
Допустимые значения: от –2147483648

до 2147473647
Пример: 5 –3345550 3345550 0

Целочисленные типы данных Целочисленный тип данных LONGINTДопустимые значения: от –2147483648 до 2147473647Пример: 5 –3345550 3345550 0

Слайд 47Над целочисленными операндами выполняются арифметические операции, операции отношения.
Целочисленные типы данных


Арифметические операции
+ сложение,
– вычитание,
* умножение,
MOD и DIV

целочисленное деление:
MOD – остаток от деления операндов
DIV – целая часть частного.
Результат выполнения операции является величиной целого типа.

21 Div 4 = 5 21 MOD 5 = 1
4 DIV 8 = 0 4 mod 10 = 4
(-2 mod 5)= -2

Над целочисленными операндами выполняются арифметические операции, операции отношения.Целочисленные типы данных Арифметические операции+ сложение, – вычитание, * умножение,

Слайд 48Целочисленные типы данных
Операции отношения (сравнения)
= равенство, неравенство,


< меньше, > больше,
=

больше или равно

Результат выполнения операции является величиной логического типа (True или False).
Целочисленные типы данных Операции отношения (сравнения)=  равенство, 		 неравенство, <  меньше, 			>  больше,= больше

Слайд 49Вещественные типы определяют константы, переменные и функции, значения которых реализуются

множеством действительных (вещественных) чисел.
Вещественные типы данных
Вещественный тип данных

REAL

Вещественный тип данных SINGLE

Допустимые значения: от 2.9e–39 до 1.7e+38
Пример: 5.567 58e–3 1.76e+8 1.0

Допустимые значения: от 1.5e–45 до 3.4e+38

Вещественные типы определяют константы, переменные и функции, значения которых реализуются множеством действительных (вещественных) чисел. Вещественные типы данных

Слайд 50Вещественные типы данных
Вещественный тип данных DOUBLE
Вещественный тип данных EXTENDED
Допустимые

значения: от 5.0e–324 до 1.7e+308
Допустимые значения: от 3.4e–4932 до

1.1e+4932

Вещественный тип данных COMP

Допустимые значения: от –9.2e+18 до 9.2e+18

Вещественные типы данных Вещественный тип данных DOUBLEВещественный тип данных EXTENDEDДопустимые значения: от 5.0e–324 до 1.7e+308 Допустимые значения:

Слайд 51Над вещественными операндами выполняются арифметические операции, операции отношения.
Вещественные типы данных


Арифметические операции
+ сложение,
– вычитание,
* умножение,
/ деление.
Результат выполнения

операции является величиной вещественного типа.

3.0+7.51 6.2–10/33
5.23*(–10.1E2) 21.2/(11.21E–2)

Над вещественными операндами выполняются арифметические операции, операции отношения.Вещественные типы данных Арифметические операции+ сложение, – вычитание, * умножение,

Слайд 52Операции отношения (сравнения)
= равенство, неравенство,
< меньше,

> больше,
= больше или равно

Результат

выполнения операции является величиной логического типа (True или False).

Вещественные типы данных

Операции отношения (сравнения)=  равенство, 		 неравенство, <  меньше, 			>  больше,= больше или равноРезультат выполнения

Слайд 53Данные, которые могут принимать логические значения True и False.
Логический тип

данных BOOLEAN
Логические операции
Not – логическое отрицание
And – логическое И (конъюнкция)
Or

– логическое ИЛИ (дизъюнкция)
Xor – логическое исключающее ИЛИ

If (a>b) and (b>c) then
…………………………..

Данные, которые могут принимать логические значения True и False.Логический тип данных BOOLEANЛогические операцииNot – логическое отрицаниеAnd –

Слайд 54Операции отношения (сравнения)
Логический тип определен таким образом, что
True

False.
Это позволяет применять к булевским операндам все операции сравнения:
=

равенство, <> неравенство,
< меньше, > больше,
<= меньше или равно, >= больше или равно

Логический тип данных BOOLEAN

Операции отношения (сравнения)Логический тип определен таким образом, что True < False. Это позволяет применять к булевским операндам

Слайд 55Типы данных: символы
Символьный тип данных CHAR
Допустимые значения: один символ из

кодовой таблицы (256 символов кода ASCII)
Пример: Y f 4 я

Д *

Применимы все операции отношения, функции преобразования типов Ord() и Chr(), функции, которые определяют предыдущий и последующий символы Pred() и Succ().
Типы данных: символыСимвольный тип данных CHARДопустимые значения: один символ из кодовой таблицы (256 символов кода ASCII)Пример: Y

Слайд 56Типы данных: символы
Строковый тип данных STRING
Строка типа String – это

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


Допустимые значения: любой текст длинной не более 255 символов
Пример: Всё, что вы хотите написать!
Типы данных: символыСтроковый тип данных STRINGСтрока типа String – это цепочка символов типа Char. String используется для

Слайд 57Типы данных, определяемые программистом
Интервальный тип данных
Позволяет задавать две константы, определяющие

границы диапазона значений для данной переменной.
Обе константы должны принадлежать

одному из стандартных типов (тип real здесь недопустим).
Значение первой константы должно быть обязательно меньше второй.

Type <Имя типа> =
<константа 1> .. <константа 2> ;

Формат описания типа:

Type Dni = 1 ..31;

Например:

Типы данных, определяемые программистомИнтервальный тип данныхПозволяет задавать две константы, определяющие границы диапазона значений для данной переменной. Обе

Слайд 58Типы данных, определяемые программистом
Перечисляемый тип данных
Определение перечисляемого типа задает упорядоченное

множество значений путем перечисления имен, обозначающих эти значения.
Type

= (<имя данного 1>,
<имя данного 2>, …, <имя данного k>);

Формат описания типа:

Type Weekday = (Monday, Tuesday, Wednesday,
Thursday, Friday, Saturday, Sunday);
Colour = (Red, Orange, Yellow, Green, Blue,
Black);
Operation = (Plus, Minus, Times, Divide);

Например:

Типы данных, определяемые программистомПеречисляемый тип данныхОпределение перечисляемого типа задает упорядоченное множество значений путем перечисления имен, обозначающих эти

Слайд 59Например:
Type
Operation = (Plus, Minus, Times, Divide);
Var
a

: Operation;

Begin
………………………………………
a := Operation(b);

if a = Plus then
………………………………………

Например:Type   Operation = (Plus, Minus, Times, Divide);Vara : Operation;Begin………………………………………a := Operation(b); if a = Plus

Слайд 604. Стандартные функции

4. Стандартные функции

Слайд 61Арифметические функции

Арифметические функции

Слайд 62Эти функции предназначены для преобразования типов величин, например, символа в

целое число, вещественного числа в целое и т.д.
Chr(X) – преобразование

ASCII-кода в символ. Аргумент функции – целого типа от 0 до 255. Результатом – символ, соответствующий данному коду.
High(X) – получение максимального значения величины. Аргумент функции – параметр или идентификатор порядкового типа (целые, логический, символьный, перечисляемый), типа-массива, типа-строки. Результат функции для величины порядкового типа – максимальное значение этой величины, типа-массива – максимальное значение индекса, типа-строки – объявленный размер строки.
Low(X) – получение минимального значения величины. Аргумент функции и результат функции аналогичны High(X).

Функции преобразования типов

Эти функции предназначены для преобразования типов величин, например, символа в целое число, вещественного числа в целое и

Слайд 63Ord(X) – преобразование любого порядкового типа в целый тип. Аргумент

функции – логический, символьный, перечисляемый тип. Результат – величина типа

Longint.
Round(X) – округление вещественного числа до ближайшего целого. Результат – округленная до ближайшего целого величина типа Longint.
Trunc(X) – получение целой части вещественного числа. Результат – целая часть этого числа типа Longint.

Функции преобразования типов

Ord(X) – преобразование любого порядкового типа в целый тип. Аргумент функции – логический, символьный, перечисляемый тип. Результат

Слайд 64Примеры арифметических функций
sin(x)
cos(x)
arctan(x)
a:=Pi/180*30;
s:=sin(a); c:=cos(a);
t:=s/c; ct:=c/s;
синус, косинус,

тангенс и котангенс угла 30°

Примеры арифметических функцийsin(x)cos(x)arctan(x)a:=Pi/180*30; s:=sin(a); 	c:=cos(a);t:=s/c;    	ct:=c/s;синус, косинус, тангенс  и котангенс угла 30°

Слайд 65Примеры арифметических функций
exp(x)
ln(x)
Exp(b*Ln(a))
ex (экспонента числа, e≈2.7183)
ln x (натуральный
логарифм)
ab
exp(7*ln(x-3))
(x-3)7
exp(x*ln(2))
2 x
Power(x-3,7)
Power(2,x)

Примеры арифметических функцийexp(x)ln(x)Exp(b*Ln(a))ex (экспонента числа, e≈2.7183)ln x (натуральный логарифм)abexp(7*ln(x-3))(x-3)7exp(x*ln(2))2 xPower(x-3,7)Power(2,x)

Слайд 66Примеры арифметических функций
Round(x)
Trunc(x)
Перевод дробного числа в целое
с округлением
Перевод дробного

числа в целое с отбрасыванием дробной части
a1:=Round(2.34);
a1 = 2
a2:=Trunc(2.34);
a2 =

2

b1:=Round(8.51);

b1 = 9

b2:=Trunc(8.51);

b2 = 8

c1:=Round(-3.7);

c1 = -4

Примеры арифметических функцийRound(x)Trunc(x)Перевод дробного числа в целое с округлениемПеревод дробного числа в целое с отбрасыванием дробной частиa1:=Round(2.34);a1

Слайд 67Примеры арифметических функций

Примеры арифметических функций

Слайд 68Randomize – стандартная процедура установки датчика случайных чисел в исходное

состояние.
Random – стандартная функция формирования случайного дробного числа из диапазона

от 0 до 1.
Random(N) – стандартная функция формирования случайного целого числа из диапазона от 0 до N-1.

Генераторы случайных чисел

Randomize – стандартная процедура установки датчика случайных чисел в исходное состояние.Random – стандартная функция формирования случайного дробного

Слайд 69Примеры получения случайных чисел
a:=Random;
0

Примеры получения случайных чиселa:=Random;0

Слайд 70Все арифметические операции можно сочетать друг с другом - с

учетом допустимых для их операндов типов данных.
В роли операндов любой

операции могут выступать переменные, константы, вызовы функций или выражения, построенные на основе других операций. Все вместе и называется выражением.

Арифметические выражения

Все арифметические операции можно сочетать друг с другом - с учетом допустимых для их операндов типов данных.В

Слайд 71Примеры арифметических выражений
(x0)
z shl abs(k)
выражение, результат которого принадлежит

к типу boolean
вторым операндом является вызов стандартной функции
(x mod k)

+ min(a,b) + trunc(z)

сочетание арифметических операций и вызовов функций

odd(round(x/abs(y)))

"многоэтажное" выражение

sin(-x*x-1/(1+x))*(koef[1]*koef[1]-4*koef[2]);

"многоэтажное" выражение с использованием массива

Примеры арифметических выражений(x0)z shl abs(k)выражение, результат которого принадлежит к типу booleanвторым операндом является вызов стандартной функции(x mod

Слайд 725. Простейшие операторы

5. Простейшие операторы

Слайд 73Оператор языка Паскаль – это неделимый элемент программы, который позволяет

выполнять определенные алгоритмические действия.
Если говорить строго, то оператором называется (минимальная)

структурно законченная единица программы.
Оператор языка Паскаль – это неделимый элемент программы, который позволяет выполнять определенные алгоритмические действия.Если говорить строго, то

Слайд 74Простейшие операторы языка

a:= b; - присваивание переменной а значения

переменной b. В правой части присваивания может находиться переменная, константа,

арифметическое выражение или вызов функции.
; - пустой оператор, который можно вставлять куда угодно, а также вычеркивать откуда угодно, поскольку на целостность программы это никак не влияет.
Операторные скобки, превращающие несколько операторов в один:
begin
<несколько операторов>
end;
Простейшие операторы языка a:= b; - присваивание переменной а значения переменной b. В правой части присваивания может

Слайд 75Простейшие операторы языка

Оператор безусловного перехода (GoTo).
Операторы вызова подпрограммы (например,

Abs, Write, ReadLn).

Простейшие операторы языка Оператор безусловного перехода (GoTo).Операторы вызова подпрограммы (например, Abs, Write, ReadLn).

Слайд 76Составные операторы языка

Составной оператор – это последовательность операторов, заключенных

в операторные скобки Begin и End.
Условные операторы (If, Case).
Операторы

цикла (Repeat, While, For).
Оператор присоединения (With).
Составные операторы языка Составной оператор – это последовательность операторов, заключенных в операторные скобки Begin и End.Условные операторы

Слайд 77
Как изменить значение переменной?
Оператор присваивания служит для изменения значения переменной.
program

qq;
var a, b: integer;
begin
a := 5;
b := a

+ 2;
a := (a + 2)*(b – 3);
end.


a

?

5

5


b

?

5+2

7


a

5

7*4

28

Пример:

Как изменить значение переменной?Оператор присваивания служит для изменения значения переменной.	program qq;	var a, b: integer;	begin	 a := 5;

Слайд 78
Оператор присваивания
Арифметическое выражение может включать
константы
имена переменных
знаки арифметических операций:
+

- * / div mod


вызовы

функций
круглые скобки ( )

умножение

деление

деление нацело

остаток от деления

<имя переменной> := <выражение>;


Оператор присваиванияАрифметическое выражение может включатьконстантыимена переменныхзнаки арифметических операций:	 	 + -  *  /

Слайд 79Имя слева от символа присваивания := является именем переменной, которой

присваивается значение выражения, стоящего справа.
С помощью этого оператора осуществляется

преобразование информации.
Он предназначен для вычисления нового значения некоторой переменной, а также для определения значения, возвращаемого функцией.

Оператор присваивания

Имя слева от символа присваивания := является именем переменной, которой присваивается значение выражения, стоящего справа. С помощью

Слайд 80Примеры операторов присваивания
Root1 := Pi*(x - y);
Discriminant := Sqrt(b*b-4*a*c)/2/A;
Index

:= Index + 1;
F:= sin(-x*x-1/(1+x));
R:=(r1 + r2)/(r1*r2);
D:=((a = b)

AND (c = d)) OR (a > d);
Примеры операторов присваиванияRoot1 := Pi*(x - y);		Discriminant := Sqrt(b*b-4*a*c)/2/A; Index := Index + 1;		F:= sin(-x*x-1/(1+x)); 	R:=(r1 +

Слайд 816. Ввод и вывод данных

6. Ввод и вывод данных

Слайд 82Любой алгоритм должен быть результативным. В общем случае это означает,

что он должен сообщать результат своей работы потребителю: пользователю-человеку или

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

Ввод и вывод: консоль

Любой алгоритм должен быть результативным. В общем случае это означает, что он должен сообщать результат своей работы

Слайд 83Для того чтобы получить данные, вводимые пользователем вручную (т.е. с

консоли), применяются команды
Ввод с консоли
read ( )
readln

( <список_ввода> )

Первая из этих команд считывает все предложенные ей данные, оставляя курсор в конце последней строки ввода, а вторая - сразу после окончания ввода переводит курсор на начало следующей строки. В остальном же их действия полностью совпадают.

Для того чтобы получить данные, вводимые пользователем вручную (т.е. с консоли), применяются командыВвод с консоли read (

Слайд 84Например, при помощи команды
Ввод с консоли
Список ввода - это

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

данные сразу для четырех переменных, относящихся к различным типам данных.

readln(k, x, c, s);
{k:integer; x:real; c:char; s:string}

Например, при помощи командыВвод с консоли Список ввода - это последовательность имен переменных, разделенных запятыми. программа может

Слайд 85Вводимые значения необходимо разделять пробелами, а завершать ввод - нажатием

клавиши Enter.
Ввод данных заканчивается в тот момент, когда последняя

переменная из списка ввода получила свое значение.
Следовательно, вводя данные при помощи приведенной на слайде выше команды, вы можете нажать Enter четыре раза - после каждой из вводимых переменных, - либо же только один раз, предварительно введя все четыре переменные в одну строчку (обязательно нужно разделить их пробелами).

Ввод с консоли

Вводимые значения необходимо разделять пробелами, а завершать ввод - нажатием клавиши Enter. Ввод данных заканчивается в тот

Слайд 86Важное замечание: ожидая от человека ввода с клавиатуры, не нужно

полагать, что он окажется ясновидящим и просто по мерцанию курсора

на черном экране догадается, какого типа переменная нужна ожидающей программе.

Вывод на консоль

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

Слайд 87Примером неплохого приглашения служит, скажем, такая строчка:

Введите два вещественных числа

(0.1

пользователю не только допустимый диапазон ввода, но и ожидаемую точность (количество знаков после запятой).

Вывод на консоль

Примером неплохого приглашения служит, скажем, такая строчка:Введите два вещественных числа (0.1

Слайд 88Для того чтобы вывести на экран какое-либо сообщение, воспользуйтесь процедурами


write( )
Первая из них, напечатав на экране все,

о чем ее просили, оставит курсор в конце выведенной строки, а вторая переведет его в начало следующей строчки.

Вывод на консоль

writeln( <список_вывода> )

Для того чтобы вывести на экран какое-либо сообщение, воспользуйтесь процедурами write( ) Первая из них, напечатав на

Слайд 89Список вывода может состоять из нескольких переменных или констант, записанных

через запятую; все эти переменные могут относиться к целому, вещественному,

символьному или булевскому типам.
Например:

writeln(a, b, c);

Вывод на консоль

В качестве элемента списка вывода кроме имен переменных могут использоваться выражения и строки.
Оператор Writеln без параметров реализует пропуск строки и переход к началу следующей строки.

Список вывода может состоять из нескольких переменных или констант, записанных через запятую; все эти переменные могут относиться

Слайд 90Если для вывода информации воспользоваться командой, приведенной в конце предыдущего

слайда, то выводимые символы окажутся "слепленными".
Чтобы этого не случилось,

нужно либо позаботиться о пробелах между выводимыми переменными:

Форматированный вывод

writeln(a, ' ', b, ' ', c);

Но предпочтительнее задать для всех (или хотя бы для некоторых) переменных формат вывода:

writeln(a:5, b, c:10:5);

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

Если для вывода информации воспользоваться командой, приведенной в конце предыдущего слайда, то выводимые символы окажутся

Слайд 91Например, если a = 25, b = 'x', а c

= 10.5, то после выполнения команды
_ _ _25_x_ _10.50000


Форматированный вывод

writeln(a:5, ' ', b, c:10:5);

на экране или в файле будет записано следующее:

Особенно важен формат при выводе вещественных переменных.
К примеру, если не указать формат, то число 10.5 будет выведено как
1.0500000000Е+0001.
Такой формат называется записью с плавающей точкой.

Например, если a = 25, b = 'x', а c = 10.5, то после выполнения команды _

Слайд 92Если же задать только общую длину вещественного числа, не указывая

длину дробной части, то оно будет занимать на экране заданное

количество символов (в случае надобности, спереди будет добавлено соответствующее количество пробелов), но при этом останется в формате плавающей точки.

Форматированный вывод

Если же задать только общую длину вещественного числа, не указывая длину дробной части, то оно будет занимать

Слайд 93Примеры форматированного вывода
Вывод десятичного представления величины J, начиная с

позиции расположения курсора.
Для целочисленного выражения
Вывод десятичного представления величины J в

крайние правые позиции поля заданной шириной.
Примеры форматированного вывода Вывод десятичного представления величины J, начиная с позиции расположения курсора.Для целочисленного выраженияВывод десятичного представления

Слайд 94Примеры форматированного вывода
Вывод в поле шириной 18 символов (по

умолчанию) десятичного представления величины R в формате с плавающей точкой.
Для

вещественного выражения
Примеры форматированного вывода Вывод в поле шириной 18 символов (по умолчанию) десятичного представления величины R в формате

Слайд 95Примеры форматированного вывода
Вывод десятичного представления величины R в формате

с фиксированной точкой в крайние правые позиции поля заданной шириной.


Причем, после десятичной точки выводится заданное количество цифр (не более 24-х), представляющих дробную часть числа; если их количество равно 0, ни дробная часть, ни десятичная точка не выводятся.

Для вещественного выражения

Примеры форматированного вывода Вывод десятичного представления величины R в формате с фиксированной точкой в крайние правые позиции

Слайд 96Примеры форматированного вывода
Вывод символа Ch, начиная с позиции расположения

курсора.
Для выражения символьного типа
Вывод символа Ch в крайнюю правую позицию

поля заданной ширины.
Примеры форматированного вывода Вывод символа Ch, начиная с позиции расположения курсора.Для выражения символьного типаВывод символа Ch в

Слайд 97Примеры форматированного вывода
Вывод строки S, начиная с позиции расположения

курсора.
Для выражения строкового типа
Вывод символа S в крайние правые позиции

поля заданной ширины.
Примеры форматированного вывода Вывод строки S, начиная с позиции расположения курсора.Для выражения строкового типаВывод символа S в

Слайд 98Например:
Форматированный вывод
В случае недостаточной длины вывода число

будет автоматически округлено.
!

Например: Форматированный вывод В случае недостаточной длины вывода число будет автоматически округлено. !

Слайд 99
Пример 1. Сложение двух чисел
Задача. Ввести два целых числа и

вывести на экран их сумму.
Простейшее решение:
program qq;
var a, b, c:

integer;
begin
read ( a, b );
c := a + b;
writeln ( c );
end.
Пример 1. Сложение двух чиселЗадача. Ввести два целых числа и вывести на экран их сумму.Простейшее решение:	program qq;	var

Слайд 100
Блок-схема линейного алгоритма
начало
конец
c := a + b;
ввод a, b
вывод c
блок

«начало»
блок «ввод»
блок «процесс»
блок «вывод»
блок «конец»

Блок-схема линейного алгоритманачалоконецc := a + b;ввод a, bвывод cблок «начало»блок «ввод»блок «процесс»блок «вывод»блок «конец»

Слайд 101
Оператор ввода
read ( a ); { ввод значения переменной

a}
read ( a, b ); { ввод значений переменных a

и b}

Как вводить два числа?
через пробел:
25 30
через Enter:
25
30

Оператор вводаread ( a );  { ввод значения переменной a}read ( a, b ); { ввод

Слайд 102
Оператор вывода
write ( a ); { вывод значения переменной

a}
writeln ( a ); { вывод значения переменной a и

переход на новую строчку}

writeln ('Введите а'); {вывод текста}

writeln ( 'Ответ: ', c ); { вывод текста и значения переменной c}

writeln ( a, '+', b, '=', c );

Оператор выводаwrite ( a );  { вывод значения переменной a}writeln ( a ); { вывод значения

Слайд 103
Полное решение
program qq;
var a, b, c: integer;
begin
writeln('Введите два

целых числа');
read ( a, b );
c

:= a + b;
writeln ( a, '+', b, '=', c );
end.

Протокол:
Введите два целых числа
25 30
25+30=55

компьютер

пользователь

Полное решение	program qq;	var a, b, c: integer;	begin  writeln('Введите два целых числа');  read ( a, b

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

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

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

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

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


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

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