Check if the sum of the odd digits of the digits is divisible by K

Given two integers “N” and “K”, the task is to find the sum of the digits “N” in odd digits (from right to left) and check if the sum is divisible by “K”. If divisible, the output is, otherwise output NO.

Example:

Input: N = 4325, K = 4
Output: YES, because 3 + 5 = 8, divisible by 4.
Input: N = 1209, K = 3
Output: NO

Method:

  • Find the sum of the numbers of “N” in an odd number of positions (from right to left).
  • Then, take the modulo with “K” and check the divisibility of the sum.
  • If divisible, it outputs “Yes”, otherwise “No”.

Here’s an implementation of the above method:

Table of Contents

C++

//C++ implementation of the approach
#include <bits/stdc++.h>
using namespace std;
  
//function that checks the
//divisibility of the sum
//of the digits at odd places
//of the given number
bool SumDivisible( int n, int k)
{
     int sum = 0, position = 1;
     while (n> 0) {
  
         //if position is odd
         if (position % 2 == 1)
             sum += n % 10;
         n = n /10;
         position++;
     }
  
     if (sum % k == 0)
         return true ;
     return false ;
}
  
//Driver code
int main()
{
     int n = 592452;
     int k = 3;
  
     if (SumDivisible(n, k))
         cout <<"YES" ;
     else
         cout <<"NO" ;
     return 0;
}

Java

//Java implementation of the approach
import java.util.*;
  
class solution
{
  
//function that checks the
//divisibility of the sum
//of the digits at odd places
//of the given number
static boolean SumDivisible( int n, int k)
{
     int sum = 0 , position = 1 ;
     while (n> 0 ) {
  
         //if position is odd
         if (position % 2 == 1 )
             sum += n % 10 ;
         n = n /10 ;
         position++;
     }
  
     if (sum % k == 0 )
         return true ;
     return false ;
}
  
//Driver code
public static void main(String arr[])
{
     int n = 592452 ;
     int k = 3 ;
  
     if (SumDivisible(n, k))
         System.out.println( "YES" );
     else
         System.out.println( "NO" );
  
}
}
//This code is contributed by Surendra_Gangwar

Python 3

# Python 3 implementation of the approach
  
# function that checks the divisibility 
# of the sum of the digits at odd places
# of the given number
def SumDivisible(n, k):
  
     sum = 0
     position = 1
     while (n> 0 ) :
  
         # if position is odd
         if (position % 2 = = 1 ):
             sum + = n % 10
         n = n //10
         position + = 1
      
     if ( sum % k = = 0 ):
         return True
     return False
  
# Driver code
if __name__ = = "__main__" :
     n = 592452
     k = 3
  
     if (SumDivisible(n, k)):
         print ( "YES" )
     else :
         print ( "NO" )
  
# This code is contributed 
# by ChitraNayal

C#

//C# implementation of the approach 
using System;
  
class GFG
{
//function that checks the 
//divisibility of the sum 
//of the digits at odd places 
//of the given number 
static bool SumDivisible( int n, int k) 
{ 
     int sum = 0, position = 1; 
     while (n> 0) 
     { 
  
         //if position is odd 
         if (position % 2 == 1) 
             sum += n % 10; 
         n = n /10; 
         position++; 
     } 
  
     if (sum % k == 0) 
         return true ; 
     return false ; 
} 
  
//Driver code 
static public void Main ()
{
     int n = 592452; 
     int k = 3; 
  
     if (SumDivisible(n, k)) 
         Console.WriteLine( "YES" ); 
     else
         Console.WriteLine( "NO" ); 
} 
} 
  
//This code is contributed by Sachin

PHP

<?php
//PHP implementation of the approach 
  
//function that checks the divisibility 
//of the sum of the digits at odd places 
//of the given number 
function SumDivisible( $n , $k ) 
{ 
     $sum = 0;
     $position = 1; 
     while ( $n> 0)
     { 
  
         //if position is odd 
         if ( $position % 2 == 1) 
             $sum += $n % 10; 
         $n = (int) $n /10; 
         $position ++; 
     } 
  
     if ( $sum % $k == 0) 
         return true; 
     return false; 
} 
  
//Driver code 
$n = 592452; 
$k = 3; 
  
if (SumDivisible( $n , $k )) 
     echo "YES" ; 
else
     echo "NO" ; 
  
//This code is contributed 
//by Sach_Code
?>

The output is as follows:

YES