CalcDivision
CalcDivision
CalcDivision[ a, b ] returns the result of dividing a by b, if it can be calculated exactly.
Usages
CalcDivision[ a, b ]
CalcDivision[ a, b ] calculates a divided by b. The result is only calculated if it is exact:
- If
aandbare integers, the result must be an integer. OtherwiseCalcDivisionis left unevaluated. - If
aorbis a decimal number, the result is a decimal number, as long as it has a finite number of decimals.
| Example | in | out |
|---|---|---|
| Two integers. | CalcDivision[ 6, 2 ] |
3 |
| Script variables. | x := 12 |
r = 4 |
| The result is not an integer, so it is not calculated. | CalcDivision[ 7, 2 ] |
CalcDivision[7, 2] |
| A decimal number divided by an integer. | CalcDivision[ 1.5, 2 ] |
0.75 |
| An integer divided by a decimal number. | CalcDivision[ 1, 0.4 ] |
2.5 |
2/0.3 has infinitely many decimals, so it is not calculated. |
CalcDivision[ 2, 0.3 ] |
CalcDivision[2, 0.3] |
CalcDivision[ list, b ]
If an argument is a list, the division is applied to each element. Two lists are divided element by element and must have the same length.
| Example | in | out |
|---|---|---|
Divide each element by 2. |
CalcDivision[ {6, 8, 10}, 2 ] |
{3, 4, 5} |
| Divide element by element. | CalcDivision[ {6, 8}, {2, 4} ] |
{3, 2} |
Options
FallbackToDivision
If set to True, a division that cannot be calculated exactly is returned as an ordinary division a/b instead of staying unevaluated. The fraction is not simplified. Default: False.
| Syntax | Example | out |
|---|---|---|
CalcDivision[ a, b, FallbackToDivision=>True ] |
CalcDivision[ 7, 2, FallbackToDivision=>True ] |
7/2 |
CalcDivision[ -6, 4, FallbackToDivision=>True ] |
-6/4 |
Details
- Division by zero:
CalcDivision[ 6, 0 ]andCalcDivision[ 0, 0 ]returnNaN. - Fractions are not supported:
CalcDivision[ 1/2, 1/4 ]is left unevaluated. - Decimal numbers ending in
.0, such as8.0, count as integers:CalcDivision[ 1, 8.0 ]is left unevaluated, just likeCalcDivision[ 1, 8 ].
| Invalid input | Result |
|---|---|
CalcDivision[ x, 2 ] |
Left unevaluated: the arguments must be numbers. |
CalcDivision[ {6,8}, {2,4,6} ] |
Left unevaluated: the lists must have the same length. |
CalcDivision[ 6 ] |
Left unevaluated: CalcDivision takes two arguments. |
CalcDivision[ 6, 2, Foo=>True ] |
Error: Invalid associative argument for CalcDivision: Foo |