Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Поступление на высшее / ИТ / Razdel_04_Informatsionnye_tekhnologii_Karpuk_2018.pptx
Скачиваний:
32
Добавлен:
04.01.2020
Размер:
462.52 Кб
Скачать

53.2. Основные операции языка Pascal. Приоритет операций.

Последовательность выполнения операций в выражении определяется:

приоритетом, порядком расположения, использованием скобок. Каждая операция имеет приоритет от 1 до 4. Операции приоритета 1 выполняются в первую очередь. Затем выполняются операции приоритета 2, за ними приоритета 3, в последнюю очередь приоритета 4. Операции с равными приоритетами выполняются слева направо в порядке их записи.

Для изменения приоритета (его повышения) служат скобки. Сначала вычисляется выражение в скобках, а затем – за скобками.

11

54.1. Стандартные арифметические функции и выражения.

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

54.2. Стандартные арифметические функции и выражения.

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

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

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

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

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

Выражение, состоящее из операндов, связанных операцией отношения, называется выражением отношения.

Выражение, состоящее из операндов, связанных логическими операциями, называется логическим выражением. Операндами логического выражения могут быть только данные типа boolean, результатом - значение истина (true) или ложь (false).13

55. Процедуры ввода и вывода данных.

Для ввода данных в языке Pascal служат процедуры Read() и Radln(). По умолчанию ввод данных осуществляется с клавиатуры. В качестве параметров в процедурах ввода указываются имена переменных, в

которые записываются вводимые данные. Например, при вызове процедуры Readln(a, b, c, d) для целочисленных переменных a, b, c, d

программа ожидает ввод четырех чисел, которые будут записаны в эти переменные. При использовании процедуры Readln() вводимые числа разделяются нажатием клавиши Enter. При использовании процедуры Read() числа могут разделяться пробелом, табуляцией или Enter.

Для

вывода

данных

в

языке

Pascal

служат

процедуры Write() и Writeln(). По

 

умолчанию

вывод

данных

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

переменные или выражения. Например, для вывода суммы введенных чисел служит процедура Write(‘Сумма чисел = ‘, a+b+c+d). Эта запись эквивалентна процедурам: Write(‘Сумма чисел = ‘); Write (a+b+c+d).

При использовании процедуры Writeln() после вывода данных курсор переходит на новую строку. Процедура Writeln без параметров переводит

курсор на новую строку.

14

 

56. Основные операторы (присваивания, условный, выбора, цикла, перехода).

Оператор является неделимым элементом программы, который

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

Простые операторы не содержат в себе других операторов. К ним относятся: оператор присваивания (:=); оператор безусловного перехода (GoTo); оператор вызова процедуры.

Структурированные операторы содержат в себе другие операторы. К ним относятся: условный оператор (If); оператор выбора (Case); операторы цикла (For, While, Repeat); составной оператор.

Оператор присваивания предназначен для определения нового значения переменной или значения, возвращаемого функцией. Формат оператора: <имя>:=<выражение>. Примеры: z:=5; x:=a+b; sum:=sum+a; d:=b*b-4*a*c; x1:=(-b+sqrt(d))/(2*a).

Оператор безусловного перехода служит для прерывания последовательного выполнения операторов и перехода к выполнению указанного оператора. Формат оператора: GoTo <метка>. Метка ставится перед оператором и отделяется от него точкой с запятой. Меткой может быть число от 0 до 9999 или любой идентификатор. 15

57.Организация ветвлений в программе. Формы записи оператора If.

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

Полная форма оператора: If <логическое_выражение> Then <оператор_1>; Else <оператор_2>;

Оператор If работает следующим образом: вычисляется логическое выражение. Если результат True, то выполняется <оператор_1>, а <оператор_2> пропускается. Если результат False, то выполняется <оператор_2>, а <оператор_1> пропускается. Операторы 1 и 2 могут быть составными, т. е. состоять из нескольких операторов. Составной оператор заключается в операторные скобки Begin … End.

В неполной форме оператора If часть Else отсутствует.

Пример полной формы: If (x > 0) And (y > 0) Then

 

Begin x := x + y; y := 0 End;

 

Else

 

Begin x := x – y; y := -y End;

16

58.1. Оператор выбора. Формы записи оператора Case … Of.

Оператор выбора предназначен для реализации множественного ветвления в программе. Формат оператора:

Case <ключ_выбора> Of <константа_выбора_1>: <оператор_1>; … . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ; <константа_выбора_N>: <оператор_N>;

Else <оператор>;

End;

Порядок работы оператора: вычисляется значение параметра <ключ_выбора>, который может быть переменной или выражением, это значение последовательно сравнивается с константами выбора. При равенстве выполняется соответствующий оператор, и работа оператора выбора заканчивается. Если равенство не достигнуто и есть конструкция Else, то выполняется оператор, записанный после Else. Если не достигнуто равенство и нет Else, то оператор выбора ничего не делает. Все операторы могут быть составными. Типы данных ключа выбора и констант выбора должны совпадать.

17

58.2. Оператор выбора.

Пример оператора Case … Of.

Написать программу, моделирующую работу светофора. При вводе символа первой буквы цвета светофора программа должна выводить сообщение о соответствующем цвете и действиях.

Program Svetofor; Var

cvet: char; Begin

Writeln(‘Введите символ цвета’); Read(cvet);

Case cvet Of

‘з’: Writeln(‘Зеленый цвет, движение разрешено’); ‘ж’: Writeln(‘Желтый цвет, внимание’);

‘к’: Writeln(‘Красный цвет, движение запрещено’);

Else Writeln(‘Это не первый символ цвета светофора’);

End;

End.

18

 

59.1.Итерационный цикл с предусловием. Формат записи оператора While.

Вциклической алгоритмической структуре некоторые действия

выполняются несколько раз. Эти действия называются телом цикла. Имеются два вида циклических структур: арифметический цикл с параметром и итерационный цикл. В итерационном цикле число

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

Формат записи оператора While: While <условие> Do <оператор>;

В качестве условия используется выражение логического типа. Оператор может быть составным. Оператор While сначала проверяет результат логического условия. Если результат True, то выполняется оператор, записанный после Do, после чего следует возврат на проверку условия с новым значением параметров в логическом выражении условия. Если результат False, то производится завершение цикла. В теле цикла обязательно должны изменяться параметры условия. 19

59.2. Итерационный цикл с предусловием. Примеры использования оператора While.

Найти минимальное число, которое больше 200 и кратно 17. Var n: integer;

Begin

n := 201;

While (n mod 17 <> 0) Do n := n + 1; Writeln(‘Искомое число равно ', n); End.

Вычислить значения функции y=sin(x) для x от 10 до 100 градусов с шагом 10 градусов.

Var x, y: real; Begin

x :=10;

While x <= 100 Do Begin

y := sin(x*pi /180);

Writeln(‘Для x = ', x:3:0, ‘ функция y = ‘, y:6:3); x := x + 10;

End; 20 End.