ハノイの塔8 (グラフィック)

HR No Name
int dmax;
char name; クラスBouのフィールド。一文字でインスタンスの名前を格納する。
public Bou(char nam,int max,int maisuu) クラスBouのコンストラクタ。Bou(char,int,int) という引数で呼ばれた時にこれが実行される
public Bou(char nam,int max)
public String toString()
public void paintComponent(Graphics myg) クラスBouのメソッド。このインスタンスを描画する必要が生じた時に自動的に実行される。また、repaint()で再描画させるときにもこのメソッドが使われる。
int maisuu = 10;
public void idou(int n,Bou src,Bou dst)
public Hanoi7()
public static void main( String[] args ) クラスHanoi7のmainメソッド。プログラムはここから開始される
import javax.swing.*; インポート文。javax.swing.JPanel などを単に JPanelと書けるようにする
LinkedList<Integer>
pile.add(maisuu);
for (int p : pile)
int w = getWidth(); 自分自身の表示幅を求めて、w に代入する
int h = getHeight();
上記の自分自身とは何か
インスタンス名で答えよ
int xmax = (int)(w*0.9); 表示幅の90%を一番大きな板の幅とする。整数にしてからxmaxに代入する。
int xmin = (int)(w*0.1);
myg.fillRect((w-x)/2,h-y*ct,x,y);
myg.setColor(new Color(0,0,0));
myg.drawRect((w-x)/2,h-y*ct,x,y);
idou(n-1,src,tmp);
dst.pile.add(src.pile.removeLast());
src.repaint();
JFrame dai = new JFrame("Hanoi");
dai.setDefaultCloseOperation
(JFrame.EXIT_ON_CLOSE);
dai.setSize(bsize*3,bsize);
dai.setLayout(new GridLayout(1,3,0,0));
for(Bou b: bou)
dai.add(b);
もくじ

聖愛中学高等学校
http://www.seiai.ed.jp/
Last Modified