第7講 繰り返し処理・if文・配列を総動員して3次魔方陣を自動生成する!
第6話 4の順列の生成
753
を実現するプログラム例
#! ruby -Ks
print "4の順列の生成\n"
a=[0]
def f1(a,i)
 a[0]=i
end
def f2(a,i)
 if i==a[0] then
  return 0
 end
 a[1]=i
 return 1
end
def f3(a,i)
 for j in 0..1
  if i==a[j] then
   return 0
  end
 end
 a[2]=i
 return 1
end
def f4(a,i)
 for j in 0..2
  if i==a[j] then
   return 0
  end
 end
 a[3]=i
 return 1
end
def g(a)
 for i in 0..3
  print a[i]," "
 end
 print "\n"
end
for i in 1..4
 f1(a,i)
 for j in 1..4
  h1=f2(a,j)
  if h1==1 then
   for k in 1..4
    h2=f3(a,k)
    if h2==1 then
     for l in 1..4
      h3=f4(a,l)
      if h3==1 then
       g(a)
      end
     end
    end
   end
  end
 end
end
参考ダウンロード添付ファイル

では、753を2次元に配置して、
wersdvc
qzsw
wq
すべての2次方陣を生成するプログラムを実現しましょう。


第5話へ 第7話へ


004


eclipse c++ 入門
魔方陣 数独で学ぶ VBA 入門
数独のシンプルな解き方・簡単な解法の研究
vc++講義へ
vba 2013 2010 2007 入門へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座へ
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
専門用語なしの C言語 C++ 入門(Visual C++ 2010で学ぶ C言語 C++ 入門)
専門用語なしの excel vba マクロ 入門 2013 2010 2007 対応講義 第1部
eclipse java 入門へ
excel 2016 vba 入門第1部へ
本サイトトップへ