プログラミング 平成24年12月11日 森田 彦 課題進行状況(12/4終了時点) 30 基礎課題提出状況(12/4演習終了時点) 全体平均 65.1 → 【基礎課題6-11-1】に対応 7-2節終了 →70.2% 25 人数 20 挽回を! 15 6章に入っていない人 →6名 10 7章終了→3名 5 0 ~5_7節 ~5-10節 ~6-9節 ~6-12節 ~7-2節 平均的には【基礎課題6-11-1】まで終了 ~7-4節 応用課題提出状況(12/4終了時点) 応用課題提出状況(12/4演習終了時点) 全体平均=7.36 14 平均7.36題 12 人数 10 8章以降に進んで いる人 →2名 8 6 4 2 0 0 1~2 1.34題:1名 3~4 5~6 7~8 2.20題:1名 9~10 11~12 20~34 3.12題:1名 第2回テストのアナウンス 第2回テストを以下の要領で行います。 日時:1月8日13:15~14:05 範囲:テキスト7-4節まで(p.195まで) 形式:ペーパーテスト形式 その他:要領は基本的に第1回と同様です。テキス トは参照可です。 理解度確認テストを掲載しています。→各自取り組 んで下さい。(特に1回目のテストで50点未満だった 人は、必ずこれに取り組み、2回目テストで挽回して 下さい) 成績について 成績=2回のテストの平均点+応用課題数-未提出の 基礎課題数 (50点未満の場合は単位取得ができません。) 特に前回のテストであまり良い成績を収められなかった 人はできる限り応用課題を解いて、2回目テストでの挽 回に備えて下さい。また、理解度確認テストを行って確 実に理解しておいて下さい。 課題の受付は、1/25の演習終了までです。それ以降は 原則として受け付けないので注意して下さい。 理解度チェック1 int a=3; int b=5; MethodA(a,b); 左の様なプログラムを考 えましょう。 void MethodA(int b,int a) { int Ans=b-a; jTextField1.setText( String.valueOf(Ans) ); } ここに、 MethodA()は 左のように定 義されていま す。 このプログラムが実行された時、テキストフィールド jTextField1に表示される答えは? 1.3 2.5 3.2 4.-2 5.8 理解度チェック1 解答 int a=3; int b=5; 3 5 MethodA(a,b); 引数の順番通りに対応 void MethodA(int b,int a) { 3 5 int Ans=b-a; jTextField1.setText( String.valueOf(Ans) ); } 1.3 2.5 3.2 4.-2 5.8 理解度チェック2 int a=1; int b=2; double c; c=MethodA(a,b); 左の様なプログラムを考 えましょう。 ここに、MethodA(a,b)は次のよ うに二つの引数の平均値を返す メソッドとします。 double MethodA(int b,int a){ double c=(a+b)/2.0; return c; } このとき、空欄に入る適切な用語は? 1.public 4.double 2.void 5.String 3.int 理解度チェック2 解答 int a=1; int b=2; double c; c=MethodA(a,b); 戻り値のあるメソッド 空欄には戻り値の型が入る。 MethodAの型は・・・ double MethodA(int b,int a){ double c=(a+b)/2.0; double return c; } 1.public 4.double 2.void 5.String 3.int 理解度チェック3 0,1の乱数cを発生させ、その値によってA,Bの2グ ループにクラス分けを行うプログラムを考えましょう。 int c = (int) ( *************** ); switch(c) { case 0: jTextField1.setText("あなたはAグループです。"); break; case 1: jTextField1.setText("あなたはBグループです。"); break; このとき、空欄に入る適切な式は? } 1.Math.random() 3.Math.random(0) 5.Math.random(2) 2.2* Math.random() 4.Math.random(1) 理解度チェック3 解答 int c = (int) ( *************** ); switch(c) { case 0: jTextField1.setText("あなたはAグループです。"); break; case 1: jTextField1.setText("あなたはBグループです。"); break; } 乱数はMath.random()で発生。 0≦Math.random()<1 n個の乱数は(int) (n*Math.random())で発生 1.Math.random() 3.Math.random(0) 5.Math.random(2) 2.2* Math.random() 4.Math.random(1) 理解度チェック4 jButton1→jButton2→jButton3の順番でクリックした 時に、テキストフィールドjTextField1に表示される結 果は何でしょうか? int a=1; void jButton1ActionPerformed(ActionEvent evt){ a=a+1; } void jButton2ActionPerformed(ActionEvent evt){ a=a*2; } void jButton3ActionPerformed(ActionEvent evt){ jTextField1.setText(String.valueOf(a)); } 1.1 2.2 3.3 4.4 5.5 理解度チェック4 解答 aの値 1 int a=1; void jButton1ActionPerformed(ActionEvent evt) { a=a+1; jButton1クリック } 2(=1+1) void jButton2ActionPerformed(ActionEvent evt) { a=a*2; jButton2クリック } 4(=2*2) void jButton3ActionPerformed(ActionEvent evt) { jTextField1.setText(String.valueOf(a)); } 1.1 2.2 3.3 4.4 5.5 理解度チェック5の実施 次の問題に進みます。 ステップ6の[戻る]ボタンをクリックして下さい。 再びプリントのステップ4を行います→[回答す る]ボタンを押してそのまま待機。 これから次の問題を提示しますので、ステップ5 に従って回答を選択した後、ステップ6の状態で 待機して下さい。 正解した人には応用課題と同じく1点を加算しま す。 理解度チェック5 jButton1→jButton2→jButton3の順番でクリックした 時に、テキストフィールドjTextField1に表示される結 果は何でしょうか? int a=1; void jButton1ActionPerformed(ActionEvent evt){ int a=0; a=a+2; } void jButton2ActionPerformed(ActionEvent evt){ a=a*2; } void jButton3ActionPerformed(ActionEvent evt){ jTextField1.setText(String.valueOf(a)); } 1.1 2.2 3.3 4.4 5.5 理解度チェック5 解答 int a=1; インスタンス変数 aの値 1 void jButton1ActionPerformed(ActionEvent evt) { int a=0; ローカル変数 aの値 0 = +2; 2(=0+2) jButton1クリック } aa void jButton2ActionPerformed(ActionEvent evt) { a=a*2; jButton2クリック } 2(=1*2) void jButton3ActionPerformed(ActionEvent evt) { jTextField1.setText(String.valueOf(a)); } 1.1 2.2 3.3 4.4 5.5 今後の予定 • 12/18 理解度チェック(クラス定義について) 「理解度確認テスト」(テスト範囲)の実施 演習(特に応用課題に取り組む) • 1/8 第2回テスト、テスト後は通常の演習 • 1/22 テスト結果の講評と通常の演習(この 日の4講時終了後は課題を受け付けません) 理解度確認テストについて • テストを行った後は、間違った箇所の解説を よく読んで、なぜ間違ったのかを理解してお いて下さい。 • 解説を読んでも理解できない場合は、テスト には対応できません。→テキストの該当箇所 を読んで、内容を確認するようにして下さい。 • また、友人に尋ねても結構です。お互いに教 え合って下さい。 • それでも、よく分からない点があれば、森田ま で質問に来て疑問点を解消しておいて下さ い。 進度について 本日は、7章までの基礎課題を全て終えた人 は、次のいずれかを終えれば演習を終えて 結構です。ただし、その際は補助員にきちん とその旨断って下さい。 1.理解度確認テスト(「分岐処理2」~「クラ スの定義」まで)を行う。 2.応用課題を10題以上提出する(8章以降 の応用課題でもOK)。
© Copyright 2025 ExpyDoc