## Time for action – dividing arrays

Let's see the array division in action:

1. The `divide()` function does truncated integer division and normal floating-point division:

```a = np.array([2, 6, 5])
b = np.array([1, 2, 3])
print("Divide", np.divide(a, b), np.divide(b, a))```

The result of the `divide()` function is shown as follows:

```Divide [2 3 1] [0 0 0]
```

As you can see, truncation took place.

2. The `true_divide()` function comes closer to the mathematical definition of division. Integer division returns a floating-point result and no truncation occurs:

`print("True Divide", np.true_divide(a, b), np.true_divide(b, a))`

The result of the `true_divide()` function is as follows:

```True Divide [ 2.          3.          1.66666667] [ 0.5         0.33333333  0.6       ]
```
3. The `floor_divide()` function always returns an integer result. It is equivalent to calling the `floor()` function after calling the `divide()` function. The `floor()` function discards the decimal part of a floating-point number and returns an integer:

`print("Floor Divide...`