In SAP ABAP, integer division follows specific rules because ABAP does not support direct integer division where the result remains an integer. Instead, division in ABAP always produces a decimal result unless explicitly converted.

1. Normal Division (Decimal Result)

When dividing two integers, ABAP returns a decimal value.

DATA: lv_num1 TYPE I VALUE 10,
lv_num2 TYPE I VALUE 3,
lv_result TYPE F. "Floating-point type
lv_result = lv_num1 / lv_num2.
WRITE: lv_result. "Output: 3.3333333

2. Integer Division (Truncate Decimal Part)

To perform integer division and discard the decimal part, use DIV keyword:

DATA: lv_num1 TYPE I VALUE 10,
lv_num2 TYPE I VALUE 3,
lv_result TYPE I.
lv_result = lv_num1 DIV lv_num2.
WRITE: lv_result. "Output: 3

3. Modulo (Remainder Calculation)

If you need the remainder, use MOD:

DATA: lv_remainder TYPE I.
lv_remainder = lv_num1 MOD lv_num2.
WRITE: lv_remainder. "Output: 1

4. Using Float for Precise Division

If you want a precise result, use F (Floating-point) or P (Packed decimal) types:

DATA: lv_result TYPE P DECIMALS 2.
lv_result = lv_num1 / lv_num2.
WRITE: lv_result. "Output: 3.33