import java.applet.Applet;
import java.awt.*;
public class ren11 extends Applet{
int a[][]=new int[10][10]; ← @
public void init(){
int x,y;
for(x=0;x<10;x++)
for(y=0;y<10;y++)
a[x][y]=0; ←A
a[0][1]=1; ←B
a[1][1]=1;a[1][2]=1;a[1][3]=1;a[1][4]=1;a[1][5]=1;a[1][6]=1;a[1][7]=1;a[1][8]=1;
a[2][1]=1;a[2][8]=1;
a[3][1]=1;a[3][4]=1;a[3][5]=1;a[3][6]=1;a[3][8]=1;
a[4][1]=1;a[4][4]=1;a[4][6]=1;a[4][8]=1;
a[5][1]=1;a[5][2]=1;a[5][3]=1;a[5][4]=1;a[5][6]=1;a[5][8]=1;
a[6][1]=1;a[6][4]=1;a[6][5]=1;a[6][6]=1;a[6][8]=1;
a[7][1]=1;a[7][3]=1;a[7][4]=1;
a[8][1]=1;a[8][4]=1;a[8][5]=1;a[8][6]=1;a[8][7]=1;a[8][8]=1;a[8][9]=1;
}
public void paint(Graphics g){
int x,y;
g.setColor(Color.yellow);
for(x=0;x<10;x++)
for(y=0;y<10;y++)
if(a[x][y]==0)
g.fillRect(y*20+10,x*20+10,20,20); ←C
}
}
@配列の宣言
int a[][]=new int[10][10]
int型で、10行10列の2次元配列aを宣言します。
A配列の全ての要素に0を代入する。
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
B指定した要素に1を代入する。

C2次元配列aの要素のうち0が代入されている要素にしたがって、塗りつぶし四角形を描く。

g.fillRect(y*20+10,x*20+10,20,20)
fillRect()メソッドをはじめ、全ての描画メソッドは左上が0,0という原点になり、描画を開始する位置を左から何ピクセル、上から何ピクセルとふうに指定する。よって、配列の列を表すyを左からの位置指定に、行を表すxを上からの位置指定に用いる。
問題 今実行したプログラムは、迷路のつもりで作っていますが、「迷路に見えない!」という人は迷路らしくしなさい。
問題 下記のGifファイルをコピーして、下記のアプレットを作成しなさい。ただし、10行10列の2次元配列を用います。また、イメージの大きさは縦、横とも20ピクセルとする。
