famguy74 - 2 months ago 7

Python Question

The goal is to "find out how many numbers # from 1 to n inclusive evenly divide n" when given a positive int. Here is the code I have so far

`def num_divisors(n):`

for i in n:

if n >= 1:

answer = i // n

return answer

I'm currently getting the error

`'int' object is not iterable`

`Check that num_divisors( 1 ) returns 1`

Check that num_divisors( 12 ) returns 6

Check that num_divisors( 100 ) returns 9

Check that num_divisors( 360 ) returns 24.

Answer

The working code is following

```
def num_divisors(n):
count_d = 0
for i in range(1, n+1):
if n % i == 0:
count_d += 1
return count_d
```

Source (Stackoverflow)

Comments