Program to find remainder when large number is divided by 11

13 Apr, 2021
Given a number n, the task is to find the remainder when n is divided by 11. The input of number may be very large.Examples: 
Input : str = 13589234356546756
Output : 6

Input : str = 3435346456547566345436457867978
Output : 4
Since the given number can be very large, we can not use n % 11. There are some steps that needs to be used to find remainder:  
1. Store number in string.
2. Count length of number string.
3. Convert string character one by one 
into digit and check if it's less than
11. Then continue for next character 
otherwise take remainder and use 
remainder for next number.
4. We get remainder.

Ex. str = "1345"
    len = 4
    rem = 3
C++
Java
Python3
C#
PHP
Javascript
// CPP implementation to find remainder// when a large number is divided by 11#include <bits/stdc++.h>using namespace std; // Function to return remainderint remainder(string str){    // len is variable to store the    // length of number string.    int len = str.length();     int num, rem = 0;     // loop that find remainder    for (int i = 0; i < len; i++) {        num = rem * 10 + (str[i] - '0');        rem = num % 11;    }     return rem;} // Driver codeint main(){    string str = "3435346456547566345436457867978";    cout << remainder(str);    return 0;}
// JAVA implementation to find remainder// when a large number is divided by 11import java.io.*; class GFG{         // Function to return remainder    static int remainder(String str)    {        // len is variable to store the        // length of number string.        int len = str.length();              int num, rem = 0;              // loop that find remainder        for (int i = 0; i < len; i++) {            num = rem * 10 + (str.charAt(i) - '0');            rem = num % 11;        }              return rem;    }          // Driver code    public static void main(String args[])    {        String str = "3435346456547566345436457867978";        System.out.println(remainder(str));    }} /*This code is contributed by Nikita Tiwari.*/
# Python 3 implementation to find remainder# when a large number is divided by 11 # Function to return remainderdef remainder(st) :         # len is variable to store the    # length of number string.    ln = len(st)         rem = 0         # loop that find remainder    for i in range(0, ln) :        num = rem * 10 + (int)(st[i])        rem = num % 11             return rem          # Driver codest = "3435346456547566345436457867978"print(remainder(st))  # This code is contributed by Nikita Tiwari.
// C# implementation to find remainder// when a large number is divided by 11using System; class GFG{         // Function to return remainder    static int remainder(string str)    {                 // len is variable to store the        // length of number string.        int len = str.Length;             int num, rem = 0;             // loop that find remainder        for (int i = 0; i < len; i++)        {            num = rem * 10 + (str[i] - '0');            rem = num % 11;        }             return rem;    }         // Driver code    public static void Main()    {        string str = "3435346456547566345436457867978";        Console.WriteLine(remainder(str));    }} // This code is contributed by vt_m.
<?php// PHP implementation to find remainder// when a large number is divided by 11 // Function to return remainderfunction remainder($str){         // len is variable to store the    // length of number string.    $len = strlen($str);     $num; $rem = 0;     // loop that find remainder    for ($i = 0; $i < $len; $i++)    {        $num = $rem * 10 +               ($str[$i] - '0');        $rem = $num % 11;    }     return $rem;} // Driver code$str = "3435346456547566345436457867978";echo(remainder($str)); // This code is contributed by Ajit.?>
<script>// Javascript implementation to find remainder// when a large number is divided by 11 // Function to return remainderfunction remainder(str){         // len is variable to store the    // length of number string.    let len = str.length;     let num;    let rem = 0;     // loop that find remainder    for (let i = 0; i < len; i++)    {        num = rem * 10 +               (str[i] - '0');        rem = num % 11;    }     return rem;} // Driver codelet str = "3435346456547566345436457867978";document.write(remainder(str)); // This code is contributed by _saurabh_jaiswal.</script>
Output: 
4
Time Complexity: O(L ) where L is length of the string
Auxiliary Space: O(L )
vaibhav2992
vt_m
jit_t
ujjwalgoel1103
_saurabh_jaiswal
divisibility
large-numbers
Mathematical
Strings
Strings
Mathematical
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Program for Fibonacci numbers
Set in C++ Standard Template Library (STL)
Write a program to print all permutations of a given string
C++ Data Types
Merge two sorted arrays
Write a program to reverse an array or string
Reverse a string in Java
Write a program to print all permutations of a given string
C++ Data Types
Check for Balanced Brackets in an expression (well-formedness) using Stack