# How to Check for Factor in Python

## The challenge

This function should test if the `factor`

is a factor of `base`

.

Return `true`

if it is a factor or `false`

if it is not.

**About factors**

Factors are numbers you can multiply together to get another number.

2 and 3 are factors of 6 because: `2 * 3 = 6`

- You can find a factor by dividing numbers. If the remainder is 0 then the number is a factor.
- You can use the mod operator (
`%`

) in most languages to check for a remainder

**Examples:**

2 is not a factor of 7 because: `7 % 2 = 1`

Note: `base`

is a non-negative number, `factor`

is a positive number.

## The solution in Python

Option 1:

```
def check_for_factor(base, factor):
return base/factor == int(base/factor)
```

Option 2:

```
def check_for_factor(base, factor):
return base % factor == 0
```

Option 3:

```
check_for_factor=lambda a,b:not a%b
```

## Test cases to validate our solution

```
import test
from solution import check_for_factor
@test.describe("Fixed Tests")
def fixed_tests():
@test.it("Should return True")
def should_return_true():
test.assert_equals(check_for_factor(10, 2), True)
test.assert_equals(check_for_factor(63, 7), True)
test.assert_equals(check_for_factor(2450, 5), True)
test.assert_equals(check_for_factor(24612, 3), True)
@test.it("Should return False")
def should_return_false():
test.assert_equals(check_for_factor(9, 2), False)
test.assert_equals(check_for_factor(653, 7), False)
test.assert_equals(check_for_factor(2453, 5), False)
test.assert_equals(check_for_factor(24617, 3), False)
```