# Sum of n digit numbers divisible by a given number

• Difficulty Level : Medium
• Last Updated : 30 Sep, 2021

Given n and a number, the task is to find the sum of n digit numbers that are divisible by given number.

Examples:

Attention reader! Don’t stop learning now. Get hold of all the important mathematical concepts for competitive programming with the Essential Maths for CP Course at a student-friendly price. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

```Input : n = 2, number = 7
Output : 728
There are thirteen n digit numbers that are divisible by 7.
Numbers are  : 14+ 21 + 28 + 35 + 42 + 49 + 56 + 63 +70 + 77 + 84 + 91 + 98.

Input : n = 3, number = 7
Output : 70336

Input : n = 3, number = 4
Output : 124200
```

Native Approach: Traverse through all n digit numbers. For every number check for divisibility, and make the sum.

## C++

 `// Simple CPP program to sum of n digit``// divisible numbers.``#include ``#include ``using` `namespace` `std;` `// Returns sum of n digit numbers``// divisible by 'number'``int` `totalSumDivisibleByNum(``int` `n, ``int` `number)``{``    ``// compute the first and last term``    ``int` `firstnum = ``pow``(10, n - 1);``    ``int` `lastnum = ``pow``(10, n);``    ` `    ``// sum of number which having``    ``// n digit and divisible by number``    ``int` `sum = 0;``    ``for` `(``int` `i = firstnum; i < lastnum; i++)``        ``if` `(i % number == 0)``            ``sum += i;``    ``return` `sum;``}` `// Driver code``int` `main()``{``    ``int` `n = 3, num = 7;``    ``cout << totalSumDivisibleByNum(n, num) << ``"\n"``;``    ``return` `0;``}`

## Java

 `// Simple Java program to sum of n digit``// divisible numbers.``import` `java.io.*;` `class` `GFG {``    ` `    ``// Returns sum of n digit numbers``    ``// divisible by 'number'``    ``static` `int` `totalSumDivisibleByNum(``int` `n, ``int` `number)``    ``{``        ``// compute the first and last term``        ``int` `firstnum = (``int``)Math.pow(``10``, n - ``1``);``        ``int` `lastnum = (``int``)Math.pow(``10``, n);``        ` `        ``// sum of number which having``        ``// n digit and divisible by number``        ``int` `sum = ``0``;``        ``for` `(``int` `i = firstnum; i < lastnum; i++)``            ``if` `(i % number == ``0``)``                ``sum += i;``        ``return` `sum;``    ``}` `    ``// Driver code``    ``public` `static` `void` `main (String[] args)``    ``{``        ``int` `n = ``3``, num = ``7``;``        ``System.out.println(totalSumDivisibleByNum(n, num));``    ``}``}` `// This code is contributed by Ajit.`

## Python3

 `# Simple Python 3 program to sum ``# of n digit divisible numbers.` `# Returns sum of n digit numbers``# divisible by 'number'``def` `totalSumDivisibleByNum(n, number):` `    ``# compute the first and last term``    ``firstnum ``=` `pow``(``10``, n ``-` `1``)``    ``lastnum ``=` `pow``(``10``, n)``    ` `    ``# sum of number which having``    ``# n digit and divisible by number``    ``sum` `=` `0``    ``for` `i ``in` `range``(firstnum, lastnum):``        ``if` `(i ``%` `number ``=``=` `0``):``            ``sum` `+``=` `i``    ``return` `sum`  `# Driver code``n ``=` `3``; num ``=` `7``print``(totalSumDivisibleByNum(n, num))` `# This code is contributed by Smitha Dinesh Semwal`

## C#

 `// Simple C# program to sum of n digit``// divisible numbers.``using` `System;` `class` `GFG {``    ` `    ``// Returns sum of n digit numbers``    ``// divisible by 'number'``    ``static` `int` `totalSumDivisibleByNum(``int` `n, ``int` `number)``    ``{``        ` `        ``// compute the first and last term``        ``int` `firstnum = (``int``)Math.Pow(10, n - 1);``        ``int` `lastnum = (``int``)Math.Pow(10, n);``        ` `        ``// sum of number which having``        ``// n digit and divisible by number``        ``int` `sum = 0;``        ` `        ``for` `(``int` `i = firstnum; i < lastnum; i++)``            ``if` `(i % number == 0)``                ``sum += i;``                ` `        ``return` `sum;``    ``}` `    ``// Driver code``    ``public` `static` `void` `Main ()``    ``{``        ``int` `n = 3, num = 7;``        ` `        ``Console.WriteLine(totalSumDivisibleByNum(n, num));``    ``}``}` `// This code is contributed by vt_m.`

## PHP

 ``

## Javascript

 ``
Output:
`70336`

Efficient Method :
First, find the count of n digit numbers divisible by a given number. Then apply formula for sum of AP

`    count/2  * (first-term + last-term)`

## C++

 `// Efficient CPP program to find the sum``// divisible numbers.``#include ``#include ``using` `namespace` `std;` `// find the Sum of having n digit and``// divisible by the number``int` `totalSumDivisibleByNum(``int` `digit,``                           ``int` `number)``{``    ``// compute the first and last term``    ``int` `firstnum = ``pow``(10, digit - 1);``    ``int` `lastnum = ``pow``(10, digit);` `    ``// first number which is divisible``    ``// by given number``    ``firstnum = (firstnum - firstnum % number)``                                   ``+ number;` `    ``// last number which is divisible``    ``// by given number``    ``lastnum = (lastnum - lastnum % number);` `    ``// total divisible number``    ``int` `count = ((lastnum - firstnum) /``                               ``number + 1);` `    ``// return the total sum``    ``return` `((lastnum + firstnum) * count) / 2;``}` `int` `main()``{``    ``int` `n = 3, number = 7;``    ``cout << totalSumDivisibleByNum(n, number);``    ``return` `0;``}`

## Java

 `// Efficient Java program to find the sum``// divisible numbers.``import` `java.io.*;` `class` `GFG {``    ` `    ``// find the Sum of having n digit and``    ``// divisible by the number``    ``static` `int` `totalSumDivisibleByNum(``int` `digit,``                                      ``int` `number)``    ``{``        ``// compute the first and last term``        ``int` `firstnum = (``int``)Math.pow(``10``, digit - ``1``);``        ``int` `lastnum = (``int``)Math.pow(``10``, digit);``    ` `        ``// first number which is divisible``        ``// by given number``        ``firstnum = (firstnum - firstnum % number)``                   ``+ number;``    ` `        ``// last number which is divisible``        ``// by given number``        ``lastnum = (lastnum - lastnum % number);``    ` `        ``// total divisible number``        ``int` `count = ((lastnum - firstnum) /``                                ``number + ``1``);``    ` `        ``// return the total sum``        ``return` `((lastnum + firstnum) * count) / ``2``;``    ``}` `    ``// Driver code``    ``public` `static` `void` `main (String[] args)``    ``{``        ``int` `n = ``3``, number = ``7``;``        ``System.out.println(totalSumDivisibleByNum(n, number));``    ``}``}` `// This code is contributed by Ajit.`

## Python3

 `# Efficient Python3 program to ``# find the sum divisible numbers.` `# find the Sum of having n digit``# and divisible by the number``def` `totalSumDivisibleByNum(digit, number):` `    ``# compute the first and last term``    ``firstnum ``=` `pow``(``10``, digit ``-` `1``)``    ``lastnum ``=` `pow``(``10``, digit)` `    ``# first number which is divisible``    ``# by given number``    ``firstnum ``=` `(firstnum ``-` `firstnum ``%` `number) ``+` `number` `    ``# last number which is divisible``    ``# by given number``    ``lastnum ``=` `(lastnum ``-` `lastnum ``%` `number)` `    ``# total divisible number``    ``count ``=` `((lastnum ``-` `firstnum) ``/` `number ``+` `1``)` `    ``# return the total sum``    ``return` `int``(((lastnum ``+` `firstnum) ``*` `count) ``/` `2``)`  `# Driver code``digit ``=` `3``; num ``=` `7``print``(totalSumDivisibleByNum(digit, num))` `# This code is contributed by Smitha Dinesh Semwal`

## C#

 `// Efficient Java program to find the sum``// divisible numbers.``using` `System;` `class` `GFG {``    ` `    ``// find the Sum of having n digit and``    ``// divisible by the number``    ``static` `int` `totalSumDivisibleByNum(``int` `digit,``                                    ``int` `number)``    ``{``        ` `        ``// compute the first and last term``        ``int` `firstnum = (``int``)Math.Pow(10, digit - 1);``        ``int` `lastnum = (``int``)Math.Pow(10, digit);``    ` `        ``// first number which is divisible``        ``// by given number``        ``firstnum = (firstnum - firstnum % number)``                ``+ number;``    ` `        ``// last number which is divisible``        ``// by given number``        ``lastnum = (lastnum - lastnum % number);``    ` `        ``// total divisible number``        ``int` `count = ((lastnum - firstnum) /``                                ``number + 1);``    ` `        ``// return the total sum``        ``return` `((lastnum + firstnum) * count) / 2;``    ``}` `    ``// Driver code``    ``public` `static` `void` `Main ()``    ``{``        ``int` `n = 3, number = 7;``        ` `        ``Console.WriteLine(totalSumDivisibleByNum(n, number));``    ``}``}` `// This code is contributed by vt_m.`

## PHP

 ``

## Javascript

 ``
Output:
`70336`

My Personal Notes arrow_drop_up