Sum of digits of a number in PL/ SQL
Prerequisite – PL/SQL introduction
In PL/SQL code groups of commands are arranged within a block. A block group related declarations or statements. In declare part, we declare variables and between begin and end part, we perform the operations.
Given a number and task is to find the sum of digits of the number.
Examples:
Input: 123456 Output: 21 Input: 9874 Output: 28
Approach is to take a number and getting each digit with MOD function and summing it up.
Below is the required implementation:
DECLARE --Declare variable n, temp_sum -- and r of datatype number n INTEGER ; temp_sum INTEGER ; r INTEGER ; BEGIN n := 123456; temp_sum := 0; -- here we check condition with the help of while loop -- here <> symbol represent for not null WHILE n <> 0 LOOP r := MOD(n, 10); temp_sum := temp_sum + r; n := Trunc(n / 10); END LOOP; dbms_output.Put_line( 'sum of digits = ' || temp_sum); END ; -- Program End |
Output:
sum of digits = 21
Please Login to comment...