Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
infa_pechat.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
437.07 Кб
Скачать

24.Арифметические выражения в языке Паскаль.Приоритеты операций(пример записи ариф. Выражения)

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

Z:=exp(a/(a+b))-sqrt(sin(2*a);y:=sin(a/2);y:=2+a;y:=4*p;

Арифметические выражения могут также входить в логические выражения,в операторы вывода и в другие операторы.Например, в операторе writeln(’ x=’,x,’ F(x)=’,sin(x/(a+2));

осуществляется вывод численных значений переменной x и арифметического

выражения sin(x/(a+2)).

При записи арифметических выражений наиболее часто допускаются след. ошибки:1 Не учитывается приоритет операций.Самый высокий приоритет имеет операция вычисления значения арифметической функции, самый низкий – операции сложения и вычитания.2. При записи обращения к арифметической функции не заключается аргумент в круглые скобки.После идентификатора обращения к функции необходимо в скобках записать

аргумент функции (константу, переменную или арифметическое выражение).

y:=arctan(x/(x+1))

3 Неправильно записывается обращение к экспоненциальной функции.

Для обращения к экспоненциальной функции необходимо использовать идентификатор exp.

Пример:математическая формула запись функции на языке Паскальz = esin x z:=exp(sin(x))

Здесь е – основание натурального логарифма, е = 2.718281828.

4 Ошибочно используются символ "^" или комбинация символов "**" для операции возведения в степень.В языке Паскаль при возведении в степень применяется формула a x = e x ln a

При записе ариф. выр. Необходимо соблюдать следб требования:1)все записи проиводятся в одну строку(недопускаются многоэтажные записи(a+b*c)/(x+y+z);2)при записе можно испол. только круглые скобки;3)нельзя ставить подряд 2 знака ариф. операций операций 3*a*b/(-2);4)все вычисления внутри скобок вычисл.слева направо в соотв.с приоритетом скобочек старшенством операций.

Ф-ии имеют наивысший приоритет перед всеми другими операциями 3*sin(x)

Выраж. Слево направо просматривается несколько раз.

Приоритеты:!)операции типа умножение и деления;2)Операции типа сложение и вычетание:

Любое ариф. выр. Обрабатывается по сканирующему алгоритму.Суть алгоритма:1)Выр. рассм. Выполн. Операция с самым высоким рангом затем выр. рассм. опять и выполн.операция более низкого ранга

A*2*T+l/T*N-3

1 2 5 3 4 6

25. Логические операции.Операции отношений.Приоритеты операций(пример записи логического выражения)

Испол.при программировании для описания лог. условий.Выражение называется логическим, если результатом его вычисления является логическое значение true (истина) или false (ложь). Логические выражения в языке Pascal служат для записи условий выполнения определенных операторов или поиска необходимых данных и чаще всего встречаются в операторах ветвления и циклПростые логические выражения могут содержать константы, переменные и выражения сравнимого типа, соединенные между собой операциями отношения (<, >, <=, >=,<>). Из простых логических выражений составляются более сложные с использованием логических операций not, and, or, xor . Приоритет выполнения логических операций следующий:

Изменение приоритета логических операций регулируется скобками.

Правила составления выражений

1 Два символа арифметических операций не должны стоять рядом; исключение составляет знак «–

» перед отрицательной константой.

2 Нельзя опускать знак умножения.

3 Круглые скобки определяют очередность выполнения операций.

4 Число левых и правых скобок должно быть одинаково.

5 При отсутствии скобок вычисление выражения выполняется согласно приоритету операций:

• унарные операции: NOT, + (увеличение на 1), – (уменьшение на 1);

• операции типа умножения: *, /, DIV, MOD, AND;

• операции типа сложения: +, –, OR;

• операции отношения =, <, >, <=, >=, <>.

Пример:x [a,b](x>=a) and (x<=b);x [a,b]:(x<a) or (x>b);Хотя бы одно из чисел а и в положительное(a>0) or (b>0);Только одно из чисел а и в положительное :(a>0) xor (b>0); x принадлежит одному из отрезков [1,2],[-2,-1]: ((x>=1)and (x<=2)) or ((x>=-2) and (x<=-1));Ни одно из чисел а и в не являюися четными ((a mod 2)<> 0) and ((b mod 2) <>0)

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