プログラミング入門B(10)クラス 第4回の巻 テキスト補助資料 あくまでも補助です。 オンラインテキストとあわせて見ること!!! Masayuki Iwai [email protected] 2003 10 29 1 本クラスのページ http://www.ht.sfc.keio.ac.jp/~tailor/ からクリックして http://www.ht.sfc.keio.ac.jp/~tailor/classes/2003pro/ 2 Javaの基本 クラスファイルとクラス名はまったく同じ必要あり ファイル名:○○○○.java クラス名:class ○○○○ extends Turtle{ コメントは以下の二つ // 一行コメントアウト /* 複数行コメントアウト */ インデントと括弧の関係。 3 第3回課題答え合わせ 荻野 緑さんのコードレビュー 4 今日の教材は MuraseGeometricDesign.java 別紙参照 時間がある人は以下に挑戦すること 5 村瀬 啓介 6 Inoue Nobue 7 Emiko Jinny Tsukazawa 8 if(条件式1){ 条件1が成立した場合に行う処理 } else if(条件式2) { それ以外で条件2が成立の場合に行う処理 } else{ それ以外(条件が不成立)の場合に行う処理 } 9 if( if( if( if( 条件式の復習 ) //iが3で割れるなら ) //iが3で割れないなら ) // iが6以上12以下 ) // iが6より小さいか12より大きい 10 Mission1 ① ② 11 Method(関数) if(i%2 == 1){ //奇数の場合は正三角形の各辺を順番に描く int j; for(j=1; j<=3; j++){ fd(50); rt(120); //正三角形の一辺を描く } } else{ //偶数の場合は正方形の各辺を順番に描く int j; for(j=1; j<=4; j++){ fd(50); rt(90); //正方形の一辺を描く } } 部品単位(処理の流れ)でプログラムを見る 12 Method(部品ごとで名前をつけ) if(i%2 == 1){ //奇数の場合は正三角形の各辺を順番に描く triangle(); } else{ //偶数の場合は正方形の各辺を順番に描く rectangle(); } 13 Methodに名前付けした処理を書く void 部品名(){ ・・・処理を記述・・・ } voidとは返り値がなしの意味。 たとえば void triangle(){ int i; for(i=1; i<=3; i++){ fd(50); rt(120); // 三角形の一辺を描く } } MidoriFlower2.javaとして動かしてみましょう。 変数名をiとjに変えてみてうごかしてみよう。 14 計算式もメソッドにできる。 int i=10; int j=10; fd(i+j); ↓↓↓↓↓ int i=10; int j=10; fd(sum(i,j)); int sum(int i , int j){ return i+j; } 15 引数の利用とメソッドの汎用化 void traiangle(){ int j; for(j=1; j<=3; j++){ fd(50); rt(120); } } //正三角形の一辺を描く void rectangle(){ int j; for(j=1; j<=4; j++){ fd(50); rt(90); //正方形の一辺を描く } } 似ている 16 引数の利用とメソッドの汎用化 // 正n角形を描くメソッドの定義 引数整数型のn void polygon(int n){ int angle; angle = 360/n; // 回転角度を割り出す int i; for(i=1; i<=n; i++){ fd(100); rt(angle); // 正n角形の一辺を描く } } MidoriFlower3.javaとして動かしてみましょう。 変数名をiとjに変えてみてうごかしてみよう。 polygon(3)、polygon(4)として呼び出す 17 メソッドの汎用化 // 正n角形を描くメソッドの定義 引数整数型のn void polygon(int n , int size){ int angle; angle = 360/n; // 回転角度を割り出す int i; for(i=1; i<=n; i++){ fd(size); rt(angle); // 正n角形の一辺を描く } } polygon(3,50) 18 正3角形から正10角形までを連続 して描くPolygons.javaを作成しなさ い。但し正7角形は角度が割り切 れず、そのままではうまく描けない ので、除外するようにしなさい 19 課題情報 第4回課題No1 授業中にいったmethodとif文と繰り返し文をすべて 使ったFinalKame.java を完成させなさい。 WEB課題提出システムで提出しなさい。 課題提出ページ 第4回 No1を選択(回数を間違えないこと) 締め切り:11月4日(火)23時59分 コンパイルが通ることを確認したソースファイル (javaファイル)を提出すること(classファイルで はない) 20
© Copyright 2024 ExpyDoc