magic (version 1.5-9)

allsums: Row, column, and two diagonal sums of arrays

Description

Returns all rowsums, all columnsums, and all (broken) diagonal sums of a putative magic square.

Usage

allsums(m,func=NULL, ...)

Arguments

m

The square to be tested

func

Function, with default NULL interpreted assum(), to be applied to the square rowwise, columnwise, and diagonalwise

...

Further arguments passed to func()

Value

Returns a list of four elements. In the following, “sums” means “the result of applying func()”.

rowsums

All \(n\) row sums

colsums

All \(n\) column sums

majors

All \(n\) broken major diagonals (northwest-southeast). First element is the long (unbroken) major diagonal, tested by is.magic()

minors

All \(n\) broken minor diagonals (northeast-southwest). First element is the long (unbroken) minor diagonal.

See Also

is.magic,is.semimagic,is.panmagic

Examples

Run this code
# NOT RUN {
allsums(magic(7))
allsums(magic(7),func=max)

allsums(magic(7),func=range)
allsums(magic(7),func=function(x){x[1:2]})


allsums(magic(7),sort)
  # beware! compare apply(magic(7),1,sort) and apply(magic(7),2,sort)

# }

Run the code above in your browser using DataLab