algorithm: count the numbers divisible by ‘M’ in a given range (#1185)

*  test cases added for count divisible

*  count divisible math algorithm added

* style fixes
This commit is contained in:
Chetan Patil
2022-10-15 11:22:44 +02:00
committed by GitHub
parent 45f0b7cae6
commit 0df72642a5
2 changed files with 77 additions and 0 deletions

View File

@@ -0,0 +1,20 @@
import { countNumbersDivisible } from '../CountNumbersDivisible'
describe('Count the numbers divisible', () => {
test.each([
[1, 20, 6, 3],
[6, 15, 3, 4],
[25, 100, 30, 3],
[25, 70, 10, 5],
[1, 23, 30, 0]
])('Total number(s) divisible between %i to %i by %i is/are %i', (n1, n2, m, expected) => {
expect(countNumbersDivisible(n1, n2, m)).toBe(expected)
})
test.each([
['test', 23, 10, 'Invalid input, please pass only numbers'],
[44, 30, 10, 'Invalid number range, please provide numbers such that num1 < num2']
])('Should throw an error for input %i, %i, %i, %i', (n1, n2, m, expected) => {
expect(() => countNumbersDivisible(n1, n2, m)).toThrowError(expected)
})
})