Next: PERROR, Previous: PACK, Up: Intrinsic Procedures

`PARITY`

— Reduction with exclusive OR*Description*:- Calculates the parity, i.e. the reduction using
`.XOR.`

, of`MASK`along dimension`DIM`. *Standard*:- Fortran 2008 and later
*Class*:- Transformational function
*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