Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
_ИП (Часть 1 - алгоритмизация и основы языка Па...doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
897.54 Кб
Скачать

Операции

Операции – элементарные действия над данными.

Различают операции следующих видов:

1) арифметические(+,*,/,-,Mod, Div - бинарные операции, т.к. имеют 2 операнда)(-,+ -унарные операции, т.к. имеют 1 операнд)

Все арифметические операции работают с численными операндами и дают результат численного типа.

2) Операции со строками – конкатенация(+) объединяет две строки, её операнды имеют символьный или строковый тип, а результат строковый тип.

‘опер’+‘ация’Þ‘операция’

3) Операции сравнения(<,>,<=,>=,=,<>) – могут быть различных типов строковые, числовые, символьные, но оба операнда должны иметь один тип. Результатом всегда является значение логического типа (true, false)

Пример:

‘A’<’B’Þtrue

‘дом’>‘дум’Þfalse

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

При сравнении символов используется порядок их следования в таблице символов Windows. Алфавитные символы следуют в алфавитном порядке. Большим считается символ, идущий ниже в таблице символов.

4) Логические операции – имеют операнды логического типа и дают результат логического типа. В качестве операндов обычно выступают выражения с операциями сравнения, или переменные логического типа.

Основные логические операции:

OR, AND, NOT, XOR.

  1. OR – операция логического сложения, выдаёт в качестве результата true, если один из операндов или они оба равны true.

  1. AND – операция логического умножения даёт в качестве результата true, если оба операнда равны true.

  1. XOR – аналогично OR, но в случае если оба операнда равны true, дает false. Даёт true, если только один из операторов равен true.

  2. NOT – унарная операция, дающая результат противоположный операнду. Называется “логическая инверсия”. NOT не является необходимой операцией и используется только для удобства записи и восприятия.

Логические операции могут комбинироваться в рамках одного выражения.

If NOT(((x>0)and(x<-100))or(y=0))

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

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

Они могут быть операндами в других операциях.

var t:boolean;

x:=4;

t:=x>5; Þ false

if (t=false)OR(y=0) then

Приоритет операций.

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

Существует несколько уровней приоритета:

  1. Самый высокий: унарные -, +, NOT;

  1. *, /, Mod, Div, AND;

  1. бинарные +, -, OR, XOR;

  2. операции сравнения

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

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

x:=(-(3+x)*7) -2 / (y+7)

II I III VI V IV

Условный оператор IF.

IF служит аналогом блока выбора и имеет две формы:

1. Полную

2. Неполную

Оператор множественного выбора.

case <выражение> of

список констант 1: <оператор 1>;

список констант 2: <оператор 2>;

список констант N: <оператор N>;

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

end

Пример.

case N of

12,1,2: Write(‘Зима’);

3,4,5: Write(‘Весна’);

6,7,8: Write(‘Лето’);

9,10,11: Write(‘Осень’);

else Write(‘Ты идиот’);

end.

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

В списках констант записываются значения, которые может принимать выражение.

Если невозможно предусмотреть все возможные значения используется конструкция else, срабатывающая, когда значение N не перечислено выше. В списках констант можно использовать интервалы 3,4,5 Û 3..5.

Составной оператор.

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

Пример: Поиск среднего арифметического:

if x>0 then

begin

s:=s+x;

k:=k+1;

end;

if x>0 then S:=S+x;

k:=k+1;

Ввод данных.

Ввод данных осуществляется при помощи подпрограмм:

Read

Readln

Имеют такой формат:

Read([имя файла],[список переменных]);

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

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

Пример:

Var a:real; b:integer;

Begin read(a,b);

Readln отличается от Read тем, что дополнительно переводит курсор экрана на следующую строку.

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

Вывод данных осуществляется при помощи подпрограмм.

Write

Writeln

Имеет такой формат:

Write ([имя файла],[список переменных, констант, выражений],)

Пример:

A=3,b=5

Write (a,’__’, b);

Write (a+b);Þ8

Write (‘Сумма =’, a+3); Þ Сумма =6

Writeln отличается от Write тем, что дополнительно переводит курсор экрана на следующую строку.

Для вывода чисел в форме, желательной для программиста используются форматы вывода:

- для целых чисел – переменная : количество позиций

Write (В:9);

- для вещественных чисел:

1) переменная : общее количество позиций

Write (А:8:3);

2) переменная : количество позиций

Write (А:9);

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]