Next: MODULO, Previous: MINVAL, Up: Intrinsic Procedures [Contents][Index]

### 9.192 `MOD` — Remainder function

Description:

  `MOD(A,P)` computes the remainder of the division of A by P.

Standard:

  Fortran 77 and later

Class:

  Elemental function

Syntax:

  `RESULT = MOD(A, P)`

Arguments:

  A | Shall be a scalar of type `INTEGER` or `REAL`.
  P | Shall be a scalar of the same type and kind as A and not equal to zero.

Return value:

  The return value is the result of `A - (INT(A/P) * P)`. The type and kind of the return value is the same as that of the arguments. The returned value has the same sign as A and a magnitude less than the magnitude of P.

Example:

      program test_mod
        print *, mod(17,3)
        print *, mod(17.5,5.5)
        print *, mod(17.5d0,5.5)
        print *, mod(17.5,5.5d0)

        print *, mod(-17,3)
        print *, mod(-17.5,5.5)
        print *, mod(-17.5d0,5.5)
        print *, mod(-17.5,5.5d0)

        print *, mod(17,-3)
        print *, mod(17.5,-5.5)
        print *, mod(17.5d0,-5.5)
        print *, mod(17.5,-5.5d0)
      end program test_mod

Specific names:

  Name | Arguments | Return type | Standard
  `MOD(A,P)` | `INTEGER A,P` | `INTEGER` | Fortran 95 and later
  `AMOD(A,P)` | `REAL(4) A,P` | `REAL(4)` | Fortran 95 and later
  `DMOD(A,P)` | `REAL(8) A,P` | `REAL(8)` | Fortran 95 and later

See also:

  MODULO