//
/* ---------------------------------------------------------------------------------------------- subtract.java 減算 ver. 2.00 (JDK 1.02) ueyama@infonet.co.jp 2007.07.26 ---------------------------------------------------------------------------------------------- */ import java.applet.Applet; import java.awt.*; import java.util.*; public class subtract extends Applet { int FigA, FigB; // 数値 A, B int Bx=70, Dx=430, By=10; // 数値表示座標 int Y1=10, Y2= 46, Y3=90; // 数値表示 Y座標 int P=22; // 数字の表示ピッチ Graphics gx,gr; Image Img; public void update(Graphics g) { paint(g); } public void init() { String s=getParameter("bgcolor"); int c=Integer.valueOf(s,16).intValue(); setBackground(new Color(c)); MediaTracker mt=new MediaTracker(this); Img=getImage(getCodeBase(), getParameter("figure")); // Applet用 GIF画像ファイル mt.addImage(Img, 0); try { mt.waitForID(0); } catch(InterruptedException e){}; gr=getGraphics(); Random r=new Random(); FigA=Math.abs(r.nextInt())%128+128; // FigA を 128〜255 の範囲で乱数で発生 while(!(FigB戻る100)) FigB=Math.abs(r.nextInt())%128+128; // 100 < FigB < FigA } public boolean inside(int n, int a, int b) { return (n<=Math.max(a,b) && n>=Math.min(a,b)) ? true:false; } public String dec2str(int n, int d) // 10進数nのd進数文字列化 { String s=Integer.toString(n, d); return s; } public int num2com(int m, int l) // m を2の補数にする { int i,j; String s=dec2str(m, 2); for(i=0,j=1; i FigB) FigA=k; // 数値 A の変更 if(inside(my,Y2-5,Y2+28) && inside(k,1,FigA)) FigB=k; // 数値 B の変更 repaint(); } return true; } } //