此為番外篇~~因為Android也是用JAVA寫的,所以目前都是先用JAVA練習後,再將程式轉成Android,之前看到一個「河洛之數」的題目,所以拿來發揚光大一下.......
河洛之數的規則是這樣:
數字範圍為1~9且為3*3的數字矩陣,其縱向、橫向、對角線之3個數字總和皆為15,每次執行之矩陣排列皆不相同。
例如:
6 1 8
3 5 7
4 9 2
這算是一個還滿簡單的程式,所以我將它放大成 9 X 9,其縱向、橫向數字總和皆為45,且數字不能重複,結果如下:
=====================================================
6 8 3 5 9 4 1 7 2
8 1 4 3 2 5 7 6 9
5 7 6 1 4 9 3 2 8
1 6 5 4 7 2 8 9 3
2 5 7 8 6 3 9 1 4
7 3 9 2 8 1 6 4 5
9 2 8 7 5 6 4 3 1
3 4 2 9 1 7 5 8 6
4 9 1 6 3 8 2 5 7
=====================================================
9 3 5 2 4 6 1 8 7
7 1 4 8 5 9 2 3 6
6 9 8 5 3 4 7 2 1
5 8 1 9 7 3 4 6 2
1 6 3 4 2 8 9 7 5
3 5 2 6 1 7 8 9 4
2 4 6 7 9 1 3 5 8
8 7 9 1 6 2 5 4 3
4 2 7 3 8 5 6 1 9
=====================================================
雖然判斷式寫的很長,不過速度上還蠻快的,呈現效果就像「數獨」一樣,下次將將它套用在Android上,改裝成「數獨遊戲」。
沒有留言:
張貼留言