/* Programm laseb kasutajal vajutada suvalisele malelaua ruudule ja seejärel arvutab välja kuhu saaks sellelt ruudult käia ratsuga (kui ratsul on üks käik). Kui on välja arvutanud ruudud, joonistab nendele ruutudele peale ristküliku nii, et kasutaja seda näeks. */ import java.awt.*; import java.awt.event.*; public class Ruut extends Frame{ public int[] kaigudx, kaigudy; public int kolx, koly; public Ruut(){ addWindowListener( //kui vajutada akna sulgemisnupule new WindowAdapter(){ //, katkestab programmi töö public void windowClosing(WindowEvent e){ System.exit(0); } } ); setTitle("Ruut"); setSize(320,340); setResizable(false); setVisible(true); } public void paint(Graphics r){ int x = 0, y = 0; for(x=0; x<320; x=x+80){ //joonistab musti ruute for(y = 20; y<340; y = y+80){ r.setColor(Color.black); r.fillRect(x,y,40,40); } } for(x=40; x<320; x=x+80){ for(y = 60; y<340; y = y+80){ r.setColor(Color.black); r.fillRect(x,y,40,40); } } //joonistab kollase ruudu kohale, millele kasutaja vajutas ja //joonistab punased ruudud kohtadele, kuhu ratsu võiks käia ühe käigu jooksul if((kaigudx != null)&&(kaigudy != null)){ r.setColor(Color.yellow); r.fillRect(kolx, koly, 40, 40); for(int n=0; n<8; n++){ r.setColor(Color.red); r.fillRect(kaigudx[n], kaigudy[n], 40, 40); } } } public static void main(String args[]){ Ruut ruutus=new Ruut(); ruutus.addMouseListener(new Hiire(ruutus)); } }