9.153 IPARITY — Bitwise XOR of array elements

Description:

Reduces with bitwise XOR (exclusive or) the elements of ARRAY along dimension DIM if the corresponding element in MASK is TRUE.

Standard:

Fortran 2008 and later

Class:

Transformational function

Syntax:
RESULT = IPARITY(ARRAY[, MASK])
RESULT = IPARITY(ARRAY, DIM[, MASK])
Arguments:
ARRAYShall be an array of type INTEGER
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 ARRAY.
MASK(Optional) shall be of type LOGICAL and either be a scalar or an array of the same shape as ARRAY.
Return value:

The result is of the same type as ARRAY.

If DIM is absent, a scalar with the bitwise XOR of all elements in ARRAY is returned. Otherwise, an array of rank n-1, where n equals the rank of ARRAY, and a shape similar to that of ARRAY with dimension DIM dropped is returned.

Example:
PROGRAM test_iparity
  INTEGER(1) :: a(2)

  a(1) = int(b'00100100', 1)
  a(2) = int(b'01101010', 1)

  ! prints 01001110
  PRINT '(b8.8)', IPARITY(a)
END PROGRAM
See also:

IANY — Bitwise OR of array elements, IALL — Bitwise AND of array elements, IEOR — Bitwise logical exclusive or, PARITY — Reduction with exclusive OR