Упражнения по основам PL / SQL: блок PL / SQL для отображения приоритета оператора
Основы PL / SQL: упражнение 11 с решением
Напишите блок PL / SQL, чтобы показать приоритет оператора и круглые скобки в нескольких более сложных выражениях.
Код PL / SQL:
DECLARE
salary NUMBER := 40000;
commission NUMBER := 0.15;
BEGIN
-- Division has higher precedence than addition:
DBMS_OUTPUT.PUT_LINE('8 + 20 / 4 =' || (8 + 20 / 4));
DBMS_OUTPUT.PUT_LINE('20 / 4 + 8 =' || (20 / 4 + 8));
-- Parentheses override default operator precedence:
DBMS_OUTPUT.PUT_LINE('7 + 9 / 3 =' || (7 + 9 / 3));
DBMS_OUTPUT.PUT_LINE('(7 + 9) / 3 =' || ((7 + 9) / 3));
-- Most deeply nested operation is evaluated first:
DBMS_OUTPUT.PUT_LINE('30 + (30 / 6 + (15 - 8)) ='
|| (30 + (30 / 6 + (15 - 8))));
-- Parentheses, even when unnecessary, improve readability:
DBMS_OUTPUT.PUT_LINE('(salary * 0.08) + (commission * 0.12) ='
|| ((salary * 0.08) + (commission * 0.12))
);
DBMS_OUTPUT.PUT_LINE('salary * 0.08 + commission * 0.12 ='
|| (salary * 0.08 + commission * 0.12)
);
END;
/
Пример вывода:
8 + 20/4 = 13 20/4 + 8 = 13 7 + 9/3 = 10 (7 + 9) / 3 = 5,333333333333333333333333333333333333 30 + (30/6 + (15 - 8)) = 42 (зарплата * 0,08) + (комиссия * 0,12) = 3200,018 зарплата * 0,08 + комиссия * 0,12 = 3200,018 Заявление обработано. 0,01 секунды
Блок - схема:
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущий: Напишите блок PL / SQL, чтобы настроить зарплату сотрудника, чей идентификатор 122.
Далее: Напишите блок PL / SQL для создания процедуры, используя «IS [NOT] NULL Operator», и оператор show AND возвращает TRUE, если и только если оба операнда имеют значение TRUE.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code