кодесурса
«PL / SQL

Упражнения по основам PL / SQL: блок PL / SQL для отображения приоритета оператора

script1adsense2code
script1adsense3code

Основы 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 программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code