Open In App

Sum of digits of a number in PL/ SQL

Improve
Improve
Like Article
Like
Save
Share
Report

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

Last Updated : 09 Jul, 2018
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads