Sunday, October 22, 2017

HP Prime and Casio fx-CG 50: 3 x 3 Magic Squares

HP Prime and Casio fx-CG 50: 3 x 3 Magic Squares

Background

A magic square is a square of integers where each row, column, and diagonal have the same sum.  For example:

2
9
4
7
5
3
6
1
8

Each row, column, and diagonal of this magic square has a sum of 15. 

A proper magic square has the integers 1 through n^2, n is the size of the magic square.  A non-normal magic square follows the sum rule, but different integers than the 1 to n^2 sequence is allowed.

The program MAGICSQ3 generates random 3 x 3 non-normal magic squares.  The sum of each row, column, and diagonal are given. 

HP Prime Program: MAGICSQ3

EXPORT MAGICSQ3()
BEGIN

// Random Magic Square 3 X 3
// 2017-10-06 EWS
LOCAL x,k,r,mat,s,t,l;

// Initialization
r:=RANDINT(−5,200);
k:=RANDINT(1,3);
l:=MAKELIST(k*X,X,r-4*k,
r+4*k,k);
l:=SORT(l);
s:=ΣLIST(l);
t:=s/3;
mat:=MAKEMAT(0,3,3);

// Generation
mat(2,2):=l(5);
mat(1,1):=l(1);
mat(3,3):=l(9);
mat(1,3):=l(2);
mat(3,1):=l(8);
mat(1,2):=t-mat(1,1)-mat(1,3);
mat(2,1):=t-mat(1,1)-mat(3,1);
mat(2,3):=t-mat(1,3)-mat(3,3);
mat(3,2):=t-mat(3,1)-mat(3,3);

// Tranpose?
IF RANDINT(0,1) THEN
mat:=TRN(mat);
END;

// Results
RETURN {mat,t};

END;

Casio fx-CG50G Program:  MAGICSQ3

"2017-10-06 EWS"
RanInt#(-5,200)->R
RanInt#(1,3)->K
Identity 3->Mat A
Seq(K*X,X,R-4*K,R+4*K,K)->List 1
Sum List 1->S
S/3->T
List 1[5]->Mat A[2,2]
List 1[1]->Mat A[1,1]
List 1[9]->Mat A[3,3]
List 1[2]->Mat A[1,3]
List 1[8]->Mat A[3,1]
T-Mat A[1,1]-Mat A[1,3]->Mat A[1,2]
T-Mat A[1,1]-Mat A[3,1]->Mat A[2,1]
T-Mat A[1,3]-Mat A[3,3]->Mat A[2,3]
T-Mat A[3,1]-Mat A[3,3]->Mat A[3,2]
If RanInt#(0,1)=1
Then
Trn Mat A->Mat A
IfEnd
"TARGET SUM:"
T
Mat A

Note:  = Disps

Your results will vary.  Happy Halloween (one week to go!)

Sources:

Learn-With-Games.Com  “Magic Square Solution”  http://www.learn-with-math-games.com/magic-square-solution.html  Retrieved October 6, 2017
William H. Richardson.  “Non-Normal Magic Squares.”  http://www.math.wichita.edu/~richardson/mathematics/magic%20squares/notnormalmagicsquare.html  Retrieved October 22, 2017

Eddie


This blog is property of Edward Shore, 2017.

Dozenal RPN Calculator App for Android for Android Smartphones and Numworks Beta Firmware Version 25

  Dozenal Calculator App for Android Smartphones and Numworks Beta Firmware Version 25 Dozenal Calculator App for Android Smartphones T...