< F2D82518E9F8AD CC95BD8D7388DA93AE2E6A7464>

Similar documents
< F2D82518E9F8AD CC834F CC8CFC82AB82C68D4C>

< F2D A839382CC906A2E6A7464>

< F2D F B834E2E6A7464>

< F2D82518CC282CC D2E6A7464>

< F2D825282CC947B909482CC A815B83682E6A>

< F2D BCA82CC978E89BA82CC8EC08CB12E6A7464>

Java言語 第1回

Java言語 第1回

10/31 Java AWTの基本構造(Frameクラスの継承) 演習課題資料

KeyListener init addkeylistener addactionlistener addkeylistener addkeylistener( this ); this.addkeylistener( this ); KeyListener public void keytyped

Microsoft PowerPoint prog1_doc2x.pptx

Java言語 第1回

Local variable x y i paint public class Sample extends Applet { public void paint( Graphics gc ) { int x, y;... int i=10 ; while ( i < 100 ) {... i +=

Applet java.lang.object java.awt.component java.awt.container java.awt.panel java.applet.applet

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

IE6 2 BMI chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chap

Microsoft PowerPoint prog1_doc2.pptx

Java 2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q 2.

アプレットの作成

Java言語 第1回

問題1 以下に示すプログラムは、次の処理をするプログラムである

Object MenuComponent MenuBar MenuItem Menu CheckboxMenuItem

2 p.2 2 Java > javac Hello0.java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.j

次の演習課題(1),(2)のプログラムを完成させよ

I. (i) Foo public (A). javac Foo.java java Foo.class (C). javac Foo java Foo (ii)? (B). javac Foo.java java Foo (D). javac Foo java Foo.class (A). Jav

2008 e-learning T050050

JAVA入門

public class Kadai _02 { public static void main(string[] args) { MyFrame frame = new MyFrame("Kadai _02"); (2) フレームのクラス名は MyFrame とし 以下

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

r3.dvi

Java演習(9) -- クラスとメソッド --

PowerPoint Presentation

Chapter JDK KeyListener keypressed(keyevent e ) keyreleased(keyevent e ) keytyped(keyevent e ) MouseListener mouseclicked(mouseeven

Assignment_.java /////////////////////////////////////////////////////////////////////// // 課題 星の画像がマウスカーソルを追従するコードを作成しなさい 次 ///////////////////

Java 3 p.2 3 Java : boolean Graphics draw3drect fill3drect C int C OK while (1) int boolean switch case C Calendar java.util.calendar A

19 3!! (+) (>) (++) (+=) for while 3.1!! (20, 20) (1)(Blocks1.java) import javax.swing.japplet; import java.awt.graphics;

piyo0702a.rtfd

I 4 p.2 4 GUI java.awt.event.* import /* 1 */ import mouseclicked MouseListener implement /* 2 */ init addmouselistener(this) this /* 3 */ this mousec

: : : TSTank 2

2 static final int DO NOTHING ON CLOSE static final int HIDE ON CLOSE static final int DISPOSE ON CLOSE static final int EXIT ON CLOSE void setvisible

Z...QXD (Page 1)

Transcription:

2 次関数のグラフの平行移動 [Java アプレット ] [Java アプリケーション ] 1. はじめに 2 2 y=ax のグラフとy=a(x-b) +c のグラフは 位置は違うけれど 形も広がりも全く同じです 2 2 y=a(x-b) +c のグラフは y=ax のグラフをx 軸方向に ( 右方向に ) +b y 軸方向に ( 上方向に ) +c だけ平行移動したものです 2 シミュレーションソフト 2 次関数のグラフの平行移動 を使って y=a(x-b) +c のグラ 2 フと y=ax のグラフの位置関係を観察してみてください 2.Java アプレット (1) Java プログラムリスト 2 次関数の平行移動 2 y=-( x+2) ^2+5 Copyright ( C) K.Niwa 2001.11.17 (Javaアプレット) import java.applet.applet; import java.awt.*; import java.awt.event.*; import java.lang.math; public class Kansuu2 extends Applet{ Button[] mybtn; ボタン型として宣言する Panel mypanel; パネル型として宣言する int 変数宣言と初期化 double x,y; グラフの座標 int px,py,oldpx,oldpy; グラフの座標 int N; ゴマの個数 int count,i; ループカウンター -185-

int fg; グラフ描写に使用したフラッグ double a=0,b=0; グラフの頂点の座標 int t; 時間かせぎ *****public void init() init メソット ( void は値を返さないメソッドの意 )*************************** public void init(){ setbackground( Color.lightGray ); 背景色をグレーにする mybtn=new Button[ 6 ]; ボタンの実体化 mybtn[ 0 ] =new Button (" 初期化 "); mybtn[ 1 ] =new Button (" "); mybtn[ 2 ] =new Button (" "); mybtn[ 3 ] =new Button (" "); mybtn[ 4 ] =new Button (" "); mybtn[ 5 ] =new Button (" 自動 "); mypanel=new Panel (); パネルの実体化 mypanel.setlayout( new GridLayout( 1,6 )); ハ ネルをク リット レイアウトにする for ( count=0;count < =5;count++ ){ mypanel.add( mybtn[ count ]); パネルにボタンを貼り付ける setlayout( new BorderLayout ()); 全体をボーダーレイアウトにする add ("South",myPanel); パネルを南に貼り付ける 初期化ボタンを押したときのイベント処理 mybtn[ 0 ].addactionlistener( new ActionListener(){ a=0; b=0; ); ボタンを押したときのイベント処理 mybtn[ 1 ].addactionlistener( new ActionListener(){ a=a+0.1; ); ボタンを押したときのイベント処理 mybtn[ 2 ].addactionlistener( new ActionListener(){ b=b+0.5; ); ボタンを押したときのイベント処理 mybtn[ 3 ].addactionlistener( new ActionListener(){ b=b-0.5; ); -186-

ボタンを押したときのイベント処理 mybtn[ 4 ].addactionlistener( new ActionListener(){ a=a-0.1; ); 自動ボタンを押したときのイベント処理 mybtn[ 5 ].addactionlistener( new ActionListener(){ flag=1; a=0; b=0; ); public void init() *****public void paint( Graphics g )****paint メソット ********************************************** public void paint( Graphics g )paint メソット { 手動のとき if ( flag==0){ g.clearrect( 0,0,300,350 ); 全体のクリア Font f0=new Font(( g.getfont ()).getname(),font.bold,13); g.setfont( f0 ); 座標軸 g.drawline( 150,10,150,290 ); y 軸 g.drawline( 150,10,150-5,10+5 ); g.drawline( 150,10,150+5,10+5 ); g.drawstring (y " ",155+3,10); g.drawline ( 150-2,150-i,150+2,150-i ) ; y 軸メモリ g.drawline ( 150-2,150+i,150+2,150+i ) ; y 軸メモリ g.drawstring (" 5",150-15-3+3,110+5 ); y 軸メモリ値 g.drawstring ("10",150-15-3,70+5); g.drawstring ("15",150-15-3,30+5); g.drawstring (" -5",150-20-6+3,190+5); g.drawstring ("-10",150-20-6,230+5); g.drawstring ("-15",150-20-6,270+5); y 軸メモリ値 g.drawline( 0,150,290,150 ); x 軸 g.drawline( 290,150,290-5,150-5 ); g.drawline( 290,150,290-5,150+5 ); g.drawstring (x " ",290,145); g.drawline ( 150+i,150-2,150+i,150+2 ) ; x 軸メモリ g.drawline ( 150-i,150-2,150-i,150+2 ) ; x 軸メモリ g.drawstring ("1",190-2,165); x 軸メモリ値 g.drawstring ("2",230-2,165); g.drawstring ("3",270-2,165); g.drawstring ("0",150-10,165); g.drawstring ("-1",110-5,165); g.drawstring ("-2",70-5,165); g.drawstring ("-3",30-5,165); x 軸メモリ値 -187-

グラフ描写 y=-( x+2) ^2+5 g.setcolor ( Color.red ) ; 赤色にする Font f1=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f1 ); g.drawstring ("y=-( x+2 )",30,105); Font f2=new Font(( g.getfont ()).getname(),font.bold,10); g.setfont( f2 ); g.drawstring ("2",88,95); Font f3=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f3 ); g.drawstring ("+5",95,105); for ( x=-4;x < =4.1;x=x+0.1){ y=-1* ( x+2 )*( x+2 ) +5; g.setcolor( Color.blue ); 青色にする Font f4=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f4 ); g.drawstring ("y=-x",50,220); Font f5=new Font(( g.getfont ()).getname(),font.bold,10); g.setfont( f5 ); g.drawstring ("2",82,212); for ( x=-4;x < =4.1;x=x+0.1 ) { y=-1* ( x-a )*( x-a ) +b; if ( flag==0) g.setcolor( Color.black ); 黒色にする Font f6=new Font(( g.getfont ()).getname(),font.bold,13); g.setfont( f6 ); g.drawstring ( "Copyright ( C ) K.Niwa 2001.11",60,325 ) ; 作者名 -188-

自動のとき else if ( flag==1) { x 軸方向の移動 for ( a=0;a > =-2;a=a-0.01){ g.clearrect( 0,0,300,350 ); 座標軸 g.drawline( 150,10,150,290 ); y 軸 g.drawline( 150,10,150-5,10+5 ); g.drawline( 150,10,150+5,10+5 ); g.drawstring (y " ",155+3,10); g.drawline ( 150-2,150-i,150+2,150-i ) ; y 軸メモリ g.drawline ( 150-2,150+i,150+2,150+i ) ; y 軸メモリ g.drawstring (" 5",150-15-3+3,110+5 ); y 軸メモリ値 g.drawstring ("10",150-15-3,70+5); g.drawstring ("15",150-15-3,30+5); g.drawstring (" -5",150-20-6+3,190+5); g.drawstring ("-10",150-20-6,230+5); g.drawstring ("-15",150-20-6,270+5); y 軸メモリ値 g.drawline( 0,150,290,150 ); x 軸 g.drawline( 290,150,290-5,150-5 ); g.drawline( 290,150,290-5,150+5 ); g.drawstring (x " ",290,145); g.drawline ( 150+i,150-2,150+i,150+2 ) ; x 軸メモリ g.drawline ( 150-i,150-2,150-i,150+2 ) ; x 軸メモリ g.drawstring ("1",190-2,165); x 軸メモリ値 g.drawstring ("2",230-2,165); g.drawstring ("3",270-2,165); g.drawstring ("0",150-10,165); g.drawstring ("-1",110-5,165); g.drawstring ("-2",70-5,165); g.drawstring ("-3",30-5,165); x 軸メモリ値 グラフ描写 y=-( x+2) ^2+5 g.setcolor ( Color.red ) ; 赤にする Font f7=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f7 ); g.drawstring ("y=-( x+2 )",30,105); Font f8=new Font(( g.getfont ()).getname(),font.bold,10); g.setfont( f8 ); g.drawstring ("2",90-2,95); Font f9=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f9 ); g.drawstring ("+5",100-5,105); -189-

for ( x=-4;x < =4.1;x=x+0.1){ y=-1* ( x+2 )*( x+2 ) +5; else { y=-x^2 g.setcolor( Color.blue ); Font f10=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f10 ); g.drawstring ("y=-x",50,220); Font f11=new Font(( g.getfont ()).getname(),font.bold,10); g.setfont( f11 ); g.drawstring ("2",82,212); for ( x=-4;x < =4.1;x=x+0.1) { y=-1* ( x-a )*( x-a ) +b; g.setcolor( Color.black ); Font f12=new Font(( g.getfont ()).getname(),font.bold,13); g.setfont( f12 ); g.drawstring ( "Copyright ( C ) K.Niwa 2001.11",60,325 ) ; 作者名 for ( t=1;t< 1000000;t++ ){ 時間かせぎ for ( a=-2;a < =0;a=a+0.01) y 軸方向の移動 for ( b=0;b < =5;b=b+0.02){ g.clearrect( 0,0,300,350 ); 座標軸 g.drawline( 150,10,150,290 ); y 軸 g.drawline( 150,10,150-5,10+5 ); g.drawline( 150,10,150+5,10+5 ); g.drawstring (y " ",155+3,10); g.drawline ( 150-2,150-i,150+2,150-i ) ; y 軸メモリ -190-

g.drawline ( 150-2,150+i,150+2,150+i ) ; y 軸メモリ g.drawstring (" 5",150-15-3+3,110+5 ); y 軸メモリ値 g.drawstring ("10",150-15-3,70+5); g.drawstring ("15",150-15-3,30+5); g.drawstring (" -5",150-20-6+3,190+5); g.drawstring ("-10",150-20-6,230+5); g.drawstring ("-15",150-20-6,270+5); y 軸メモリ値 g.drawline( 0,150,290,150 ); gdrawline( 290,150,290-5,150-5 ); g.drawline( 290,150,290-5,150+5 ); x 軸 g.drawstring (x " ",290,145); g.drawline ( 150+i,150-2,150+i,150+2 ) ; x 軸メモリ g.drawline ( 150-i,150-2,150-i,150+2 ) ; x 軸メモリ g.drawstring ("1",190-2,165); x 軸メモリ値 g.drawstring ("2",230-2,165); g.drawstring ("3",270-2,165); g.drawstring ("0",150-10,165); g.drawstring ("-1",110-5,165); g.drawstring ("-2",70-5,165); g.drawstring ("-3",30-5,165); x 軸メモリ値 グラフ描写 y=-( x+2) ^2+5 g.setcolor ( Color.red ) ; 赤色にする Font f13=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f13 ); g.drawstring ("y=-( x+2 )",30,105); Font f14=new Font(( g.getfont ()).getname(),font.bold,10); g.setfont( f14 ); g.drawstring ("2",90-2,95); Font f15=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f15 ); g.drawstring ("+5",100-5,105); for ( x=-4;x < =4.1;x=x+0.1){ y=-1* ( x+2 )*( x+2 ) +5; -191-

y=-x^2 g.setcolor( Color.blue ); Font f16=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f16 ); g.drawstring ("y=-x",50,220); Font f17=new Font(( g.getfont ()).getname(),font.bold,10); g.setfont( f17 ); g.drawstring ("2",82,212); for ( x=-4;x < =4.1;x=x+0.1) { y=-1* ( x-a )*( x-a ) +b; for ( b=-5;b < =0;b=b+0.02) else if ( flag==1) public void paint( Graphics g )paint メソット public class Kansuu extends Applet g.setcolor( Color.black ); Font f18=new Font(( g.getfont ()).getname(),font.bold,13); g.setfont( f18 ); g.drawstring ( "Copyright ( C ) K.Niwa 2001.11",60,325 ) ; 作者名 for ( t=1;t< 1000000;t++ ){ 時間かせぎ (2) HTML リスト < HTML > < HEAD> <!------------------------------------------------------------------------------------------------------------------------------------- 2 次関数の平行移動 2 y=-( x-2) ^2+5 Copyright ( C) K.Niwa 2001.11.17 --------------------------------------------------------------------------------------------------------------------------------------> < /HEAD> < BODY > < CENTER< > B >2 次関数の平行移動 2< /B> < BR>< BR> < APPLET CODE="Kansuu2.class" WIDTH="300" HEIGHT="350" >< /APPLET> < BR>< BR> < B> 赤いグラフは 青いグラフをx 軸方向に-2 y 軸方向に+5 平行移動したものである < /B> < BR> < B> この2つの放物線は 位置は違うけれども形も広がりも全く同じであることを確認してください...</B> < /CENTER> < /BODY> </HTML -192-

3.Java アプリケーション プログラムリスト F2 次関数の平行移動 1 y=2( x+2) ^2-5 Copyright ( C) K.Niwa 2002.08.24 (Javaアプリケーション) import java.awt.*; import java.awt.event.*; import java.lang.math; ***** Frame クラスを継承する ************************************************************* public class FKansuu1 extends Frame{ Button[] mybtn; ボタン型として宣言する Panel mypanel; パネル型として宣言する int 変数宣言と初期化 double x,y; グラフの座標 int px,py,oldpx,oldpy; グラフの座標 int N; ゴマの個数 int count,i; ループカウンター int fg; グラフ描写に使用したフラッグ double a=0,b=0; グラフの頂点の座標 int t; 時間かせぎ ***** フレームとイベントの定義 ************************************************** public FKansuu1(){ setsize( 300+10,360 ); フレームの大きさ addwindowlistener( new WindowAdapter (){ 閉じるボタンのイベント処理 public void windowclosing( WindowEvent e){ System.exit( 0 ); ); mybtn=new Button[ 6 ]; ボタンの実体化 mybtn[ 0 ] =new Button (" 初期化 "); mybtn[ 1 ] =new Button (" "); mybtn[ 2 ] =new Button (" "); mybtn[ 3 ] =new Button (" "); mybtn[ 4 ] =new Button (" "); mybtn[ 5 ] =new Button (" 自動 "); mypanel=new Panel (); パネルの実体化 mypanel.setlayout( new GridLayout( 1,6 )); ハ ネルをク リット レイアウトにする for ( count=0;count < =5;count++ ){ mypanel.add( mybtn[ count ]); パネルにボタンを貼り付ける setlayout( new BorderLayout ()); 全体をボーダーレイアウトにする add ("South",myPanel); パネルを南に貼り付ける 初期化ボタンを押したときのイベント処理 mybtn[ 0 ].addactionlistener( new ActionListener(){ a=0; b=0; -193-

); ボタンを押したときのイベント処理 mybtn[ 1 ].addactionlistener( new ActionListener(){ a=a+0.1; ); ボタンを押したときのイベント処理 mybtn[ 2 ].addactionlistener( new ActionListener(){ b=b+0.5; ); ボタンを押したときのイベント処理 mybtn[ 3 ].addactionlistener( new ActionListener(){ b=b-0.5; ); ボタンを押したときのイベント処理 mybtn[ 4 ].addactionlistener( new ActionListener(){ a=a-0.1; ); 自動ボタンを押したときのイベント処理 mybtn[ 5 ].addactionlistener( new ActionListener(){ flag=1; a=0; b=0; ); public FKansuu1() ***** public void paint( Graphics g ) メソット ******************************************** public void paint( Graphics g )paint メソット { 手動のとき if ( flag==0){ g.clearrect( 0,0,300,360 ); 全体のクリア Font f0=new Font(( g.getfont ()).getname(),font.bold,13); g.setfont( f0 ); 座標軸 g.drawline( 150,10,150,290 ); y 軸 gdrawline( 150,10,150-5,10+5 ); g.drawline( 150,10,150+5,10+5 ); g.drawstring (y " ",155+3,10); -194-

g.drawline ( 150-2,150-i,150+2,150-i ) ; y 軸メモリ g.drawline ( 150-2,150+i,150+2,150+i ) ; y 軸メモリ g.drawstring (" 5",150-15-3+3,110+5 ); y 軸メモリ値 g.drawstring ("10",150-15-3,70+5); g.drawstring ("15",150-15-3,30+5); g.drawstring (" -5",150-20-6+3,190+5); g.drawstring ("-10",150-20-6,230+5); g.drawstring ("-15",150-20-6,270+5); y 軸メモリ値 g.drawline( 0,150,290,150 ); x 軸 g.drawline( 290,150,290-5,150-5 ); g.drawline( 290,150,290-5,150+5 ); g.drawstring (x " ",290,145); g.drawline ( 150+i,150-2,150+i,150+2 ) ; x 軸メモリ g.drawline ( 150-i,150-2,150-i,150+2 ) ; x 軸メモリ g.drawstring ("1",190-2,165); x 軸メモリ値 g.drawstring ("2",230-2,165); g.drawstring ("3",270-2,165); g.drawstring ("0",150-10,165); g.drawstring ("-1",110-5,165); g.drawstring ("-2",70-5,165); g.drawstring ("-3",30-5,165); x 軸メモリ値 グラフ描写 y=2( x+2) ^2-5 g.setcolor ( Color.red ) ; グラフの色を赤にする Font f1=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f1 ); g.drawstring ("y=2( x+2 )",30,210); Font f2=new Font(( g.getfont ()).getname(),font.bold,10); g.setfont( f2 ); g.drawstring ("2",90-2,200); Font f3=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f3 ); g.drawstring ("-5",100-5,210); for ( x=-4;x < =4.1;x=x+0.1){ y=2* ( x+2 )*( x+2) -5; -195-

y=2x^2 ( ) グラフの色を青にする g.setcolor Color.blue ; Font f4=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f4 ); g.drawstring ("y=2x",220,120); Font f5=new Font(( g.getfont ()).getname(),font.bold,10); g.setfont( f5 ); g.drawstring ("2",250+2,110+2); for ( x=-4;x < =4.1;x=x+0.1) { y=2* ( x-a )*( x-a ) +b; if ( flag==0) g.setcolor( Color.black ); Font f6=new Font(( g.getfont ()).getname(),font.bold,13); g.setfont( f6 ); g.drawstring ( "Copyright ( C ) K.Niwa 2002.08",60,325 ) ; 作者名 自動のとき else if ( flag==1) { x 軸方向の移動 for ( a=0;a > =-2;a=a-0.01){ g.clearrect( 0,0,300,300 ); 座標軸 g.drawline( 150,10,150,290 ); y 軸 g.drawline( 150,10,150-5,10+5 ); g.drawline( 150,10,150+5,10+5 ); g.drawstring (y " ",155+3,10); g.drawline ( 150-2,150-i,150+2,150-i ) ; y 軸メモリ g.drawline ( 150-2,150+i,150+2,150+i ) ; y 軸メモリ g.drawstring (" 5",150-15-3+3,110+5 ); y 軸メモリ値 g.drawstring ("10",150-15-3,70+5); g.drawstring ("15",150-15-3,30+5); g.drawstring (" -5",150-20-6+3,190+5); g.drawstring ("-10",150-20-6,230+5); g.drawstring ("-15",150-20-6,270+5); y 軸メモリ値 g.drawline( 0,150,290,150 ); x 軸 g.drawline( 290,150,290-5,150-5 ); g.drawline( 290,150,290-5,150+5 ); g.drawstring (x " ",290,145); -196-

g.drawline ( 150+i,150-2,150+i,150+2 ) ; x 軸メモリ g.drawline ( 150-i,150-2,150-i,150+2 ) ; x 軸メモリ g.drawstring ("1",190-2,165); x 軸メモリ値 g.drawstring ("2",230-2,165); g.drawstring ("3",270-2,165); g.drawstring ("0",150-10,165); g.drawstring ("-1",110-5,165); g.drawstring ("-2",70-5,165); g.drawstring ("-3",30-5,165); x 軸メモリ値 グラフ描写 y=2( x+2) ^2-5 g.setcolor ( Color.red ) ; グラフを赤色にする Font f7=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f7 ); g.drawstring ("y=2( x+2 )",30,210); Font f8=new Font(( g.getfont ()).getname(),font.bold,10); g.setfont( f8 ); g.drawstring ("2",90-2,200); Font f9=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f9 ); g.drawstring ("-5",100-5,210); for ( x=-4;x < =4.1;x=x+0.1){ y=2* ( x+2 )*( x+2) -5; y=2x^2 ( ) グラフを青色にする g.setcolor Color.blue ; Font f10=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f10 ); g.drawstring ("y=2x",220,120); Font f11=new Font(( g.getfont ()).getname(),font.bold,10); g.setfont( f11 ); g.drawstring ("2",250+2,110+2); for ( x=-4;x < =4.1;x=x+0.1) { y=2* ( x-a )*( x-a ) +b; -197-

g.setcolor( Color.black ); Font f12=new Font(( g.getfont ()).getname(),font.bold,13); g.setfont( f12 ); g.drawstring ( "Copyright ( C ) K.Niwa 2002.08",60,325 ) ; 作者名 for ( t=1;t< 1000000;t++ ){ 時間かせぎ for ( a=0;a > =-2;a=a-0.01) y 軸方向の移動 for ( b=0;b > =-5;b=b-0.02){ g.clearrect( 0,0,300,300 ); 座標軸 g.drawline( 150,10,150,290 ); y 軸 g.drawline( 150,10,150-5,10+5 ); g.drawline( 150,10,150+5,10+5 ); g.drawstring (y " ",155+3,10); g.drawline ( 150-2,150-i,150+2,150-i ) ; y 軸メモリ g.drawline ( 150-2,150+i,150+2,150+i ) ; y 軸メモリ g.drawstring (" 5",150-15-3+3,110+5 ); y 軸メモリ値 g.drawstring ("10",150-15-3,70+5); g.drawstring ("15",150-15-3,30+5); g.drawstring (" -5",150-20-6+3,190+5); g.drawstring ("-10",150-20-6,230+5); g.drawstring ("-15",150-20-6,270+5); y 軸メモリ値 g.drawline( 0,150,290,150 ); x 軸 g.drawline( 290,150,290-5,150-5 ); g.drawline( 290,150,290-5,150+5 ); g.drawstring (x " ",290,145); g.drawline ( 150+i,150-2,150+i,150+2 ) ; x 軸メモリ g.drawline ( 150-i,150-2,150-i,150+2 ) ; x 軸メモリ g.drawstring ("1",190-2,165); x 軸メモリ値 g.drawstring ("2",230-2,165); g.drawstring ("3",270-2,165); g.drawstring ("0",150-10,165); g.drawstring ("-1",110-5,165); g.drawstring ("-2",70-5,165); g.drawstring ("-3",30-5,165); x 軸メモリ値 グラフ描写 y=2( x+2) ^2-5 g.setcolor ( Color.red ) ; グラフを赤色にする Font f13=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f13 ); g.drawstring ("y=2( x+2 )",30,210); -198-

Font f14=new Font(( g.getfont ()).getname(),font.bold,10); g.setfont( f14 ); g.drawstring ("2",90-2,200); Font f15=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f15 ); g.drawstring ("-5",100-5,210); for ( x=-4;x < =4.1;x=x+0.1){ y=2* ( x+2 )*( x+2) -5; else if ( flag==1) y=2x^2 ( ) グラフを赤色にする g.setcolor Color.blue ; Font f16=new Font(( g.getfont ()).getname(),font.bold,14); g.setfont( f16 ); g.drawstring ("y=2x",220,120); Font f17=new Font(( g.getfont ()).getname(),font.bold,10); g.setfont( f17 ); g.drawstring ("2",250+2,110+2); for ( x=-4;x < =4.1;x=x+0.1) { y=2* ( x-a )*( x-a ) +b; g.setcolor( Color.black ); Font f18=new Font(( g.getfont ()).getname(),font.bold,13); g.setfont( f18 ); g.drawstring ( "Copyright ( C ) K.Niwa 2002.08",60,325 ) ; 作者名 for ( t=1;t< 1000000;t++ ){ 時間かせぎ for ( b=0;b > =-5;b=b-0.02) public void paint( Graphics g )paint メソット -199-

****** public static void main メソット ************************************************* public static void main( String[] args){ Frame w=new FKansuu1 (); w.show (); public static void main( String[] args) public class FKansuu1 extends Frame -200-