А. В. Розина программирование на паскале методическое пособие
Вид материала | Методическое пособие |
СодержаниеТема 3. Переменные типа INTEGER Var a, num, j : integer Тема 4. Условный оператор IF |
- Тема урока: Программирование ветвлений на Паскале, 61.32kb.
- Программирование ветвлений на Паскале Оператор ветвления на Паскале, 166.05kb.
- Программа элективного курса «Алгоритмизация и программирование», 95.38kb.
- Контрольная работа по темам «Линейное программирование на Паскале» и«Условный оператор», 4.21kb.
- Методическое пособие по выполнению курсовых работ по дисциплине, 450.1kb.
- В. И. Эльманович нейролингвистическое программирование методическое пособие, 781.36kb.
- В. И. Эльманович нейролингвистическое программирование методическое пособие, 924.82kb.
- В. А. Жернов апитерапия учебно-методическое пособие, 443.6kb.
- Тема урока: Программирование циклов на Паскале (9 класс, базовый уровень), 46.43kb.
- Кемеровский Государственный Университет; Д. Н. Долганов. Белово, 2005. 55. методическое, 704.81kb.
Тема 3. Переменные типа INTEGER
Целочисленные типы данных представляют собой значения, которые могут использоваться в арифметических выражениях и занимать память от 1 до 4 байт (табл.2).
Таблица 2
Тип | Диапазон | Требуемая память (байт) |
byte | 0 ... 255 | 1 |
shorint | -128 ... 127 | 1 |
integer | - 32768 ... 32767 | 2 |
word | 0 ...65535 | 2 |
longint | -2147483648 .. 2147483647 | 4 |
Пример описания переменных целого типа:
VAR A, NUM, J : INTEGER;
K, S : WORD;
X1, X2 : BYTE;
Над целыми данными определены следующие операции:
+ | сложение |
- | вычитание |
* | умножение |
DIV | целочисленное деление, вычисляется целая часть частного, дробная часть отбрасывается. Например, результатом выполнения операции 11 DIV 2 будет 5 |
MOD | деление по модулю, вычисляется остаток, полученный при целочисленном делении. Например, результатом выполнения операции 11 MOD 5 будет 1 |
Если переменные x,y описаны как целые переменные (например, x=17, y=4), то возможны следующие варианты выполнения деления:
z := x DIV y; | Переменная z должна быть описана как целая переменная. В результате вычисления z станет равной 4. |
z := x MOD y; | Переменная z должна быть описана как целая переменная. В результате вычисления z станет равной 1. |
z := x / y; | Переменная z должна быть описана как вещественная переменная. В результате вычисления z станет равной 4.25. |
В данной теме рекомендуется дать следующие стандартные функции:
trunc (x) – преобразует вещественный аргумент х в целое число путем отбрасывания дробной части; Например, trunc (2.8) даст результат 2
round (x) - преобразует вещественный аргумент х в целое число путем округления до ближайшего целого; Например, round (2.8) даст результат 3
Для закрепления решаются задачи.
Тема 4. Условный оператор IF
Оператор условия IF изменяет естественный порядок выполнения операторов программы. Он имеет одну из следующих форм:
Полный оператор
if < условие > then < оператор1 > else < оператор2 > ;
Алгоритм работы следующий:
- Вычисляется выражение, записанное в условии. Оно принимает значение либо "Истина", либо "Ложь".
- Если значение выражения = "Истина", то выполняется оператор1. Если значение выражения = "Ложь", то выполняется оператор2.
- Затем выполняется оператор, следующий за оператором if.
Сокращенный оператор
if < условие > then < оператор1 > ;
Алгоритм работы следующий:
- Вычисляется выражение, записанное в условии. Оно принимает значение либо "Истина", либо "Ложь".
- Если значение выражения = "Истина", то выполняется оператор1. В противном случае выполняется оператор, следующий за оператором if.
Пример: Пусть переменная а имеет вещественный тип и равна 3.2
if a<6 then a : = a * 2 else a : = a / 2; WRITE(a);
Выражение a<6 истинно, поэтому вычисляется a : = a * 2 и печатается значение переменной а, т.е. 6.4
Пример: Пусть переменная а имеет вещественный тип и равна 8.2
if a<6 then a : = a * 2; WRITE(a);
Выражение a<6 ложно, поэтому печатается значение переменной а, т.е. 8.2
Выражение, записанное в условии – это выражение, устанавливающее отношение (сравнение) между несколькими переменными. Операции отношения выполняют сравнение двух операндов и определяют, истинно значение выражения или ложно.
В Паскале определены следующие операции отношения:
= равно
< > не равно
> больше
< меньше
< = меньше или равно
> = больше или равно
Пример,
if (a >c ) then b := a - c else b := c - a;
Выражение, записанное в условии, может быть сложным. Для этого используются операции-связки:
and | логическое умножение |
or | логическое сложение |
not | логическое отрицание |
Например,
if ((sum >8) and (inf = 5)) then write ( ' Вы приняты ');
Таблица истинности для данных операций следующая:
a | b | not a | a and b | a or b |
истина | истина | ложь | истина | истина |
истина | ложь | ложь | ложь | истина |
ложь | истина | истина | ложь | истина |
ложь | ложь | истина | ложь | ложь |
Следует заметить, что привычная запись арифметических неравенств типа 5 a 10 на Паскале записывается следующим выражением ( 5< = a) and ( a < = 10).
Можно не вводить в рассмотрение школьного курса переменную логического типа. Логическая переменная, как правило, в задачах выполняет функцию "флага", принимающего значение "истина" или "ложь", но в школьном курсе из-за малого количества учебных часов можно эту функцию переложить, например, на переменную типа integer, которая будет принимать значение 1 или 0.
При изложении данной темы необходимо ввести понятие составного оператора. Составной оператор – это группа из произвольного числа операторов, отделенных друг от друга точкой с запятой, и заключенная в операторные скобки begin и end. Составной оператор воспринимается как единое целое, т.е. может находиться в любом месте программы, где допускается наличие оператора.
Пример.
if (a < > 0) then begin c := b div a; writeln ( ' с = ', c); end
else writeln (' деление на 0! '); В := B+2;
- Если А неравно 0, то в переменную С заносится результат выполнения b div a и выводится значение переменной с.
- Если А равно 0, то печатается деление на 0!
В обоих случаях затем выполняется оператор В := B+2;
6>6>6>6>