PARITY — Reduction with exclusive OR

Description

Calculates the parity, i.e. the reduction using .XOR., of MASK along dimension DIM.

Syntax

RESULT = PARITY(MASK[, DIM])

Arguments

LOGICAL Shall be an array of type LOGICAL
DIM (Optional) shall be a scalar of type INTEGER with a value in the range from 1 to n, where n equals the rank of MASK.

Return value

The result is of the same type as MASK.

If DIM is absent, a scalar with the parity of all elements in MASK is returned, i.e. true if an odd number of elements is .true. and false otherwise. If DIM is present, an array of rank n-1, where n equals the rank of ARRAY, and a shape similar to that of MASK with dimension DIM dropped is returned.

Example


PROGRAM test_sum
  LOGICAL :: x(2) = [ .true., .false. ]
  print *, PARITY(x) ! prints "T" (true).
END PROGRAM

Standard

Fortran 2008 and later

Class

Transformational function