2乗した数(Ruby) [Ruby]
0から100までの整数の2乗を表示するプログラムをRubyで書きました。
25ずつに区切り、上から下、下から上といわゆる「牛耕式」と呼ばれる配列だそうです。
このように並べるのは、和や差が50とか100になる整数の2乗の値の間には、はっきりとした関係が認められるからだそうです。
いくつかすぐに見てとることができる例を紹介します。
1.一の位は、0149656941の順に数字が現れる。2,3,7,8は現れない。しかも中央の5に対して数字の列が点対称(5以上は逆順)になっている。
2.下2桁を見ると、一の位が0なのは10の倍数の2乗のときの00だけである。一の位が5なのは、もとの数の一の位が5のときだけで、下2桁は25となる。
3.この表のようにn,50-n,50+n,100-nとそろえて、それぞれの2乗数をとると、それらの下2桁が同じになる。
4.一の位が0,1,4,5,9である2乗数の十の位は偶数0,2,4,6,8である。それに対して一の位が6である2乗数の十の位は奇数1,3,5,7,9である。
─────
#! ruby -Ks
# メイン・ルーチン
puts " n n^2 n^2 n n n^2 n^2 n"
puts "───────────────────"
(0..25).each do |n|
printf("%3d %3d %4d %3d",n,n**2,(50-n)**2,50-n)
printf(" |%3d %4d %5d %3d\n",50+n,(50+n)**2,(100-n)**2,100-n)
end
puts "───────────────────"
─────
コメント 0