スライド

平成27年12月7日
森田 彦
問題1のプログラムに従うと、年齢が60の人の料金はいくらにな
るでしょうか?次の選択肢から選んで下さい。
1.無料
4.500円
2.200円
5.1000円
3.300円
解答
int Age=Integer.parseInt(jTextFieldAge.getText());
if( Age<=6 ) {
0
1 ・・・ 6
7
jTextFieldMessage.setText("無料です。");
・・・
}
else if( Age<=12 ) {
0
・・・
6
7
・・・ 12
13 ・・・
jTextFieldMessage.setText("料金は300円です。");
}
0 ・・・ 12 13 ・・・ 59 60 ・・・
jTextFieldMessage.setText("料金は500円です。");
else if( Age<=59 ) {
}
else {
0
・・・ 59
60 ・・・
jTextFieldMessage.setText("料金は200円です。");
}
2.200円
問題2のプログラムが問題1のプログラムと(動作結果が)同等と
なるためには( )内にどのような条件式を記述すれば良いでしょ
うか。次の選択肢の中から適切な条件式を選んで下さい。
1.Age<=6 && Age>=60
2.Age<6 && Age>60
3.Age<=6
4.Age<=6 || Age>=60
5.Age<6 || Age>60
解答
int Age=Integer.parseInt(jTextFieldAge.getText());
if(Age<=6) {
jTextFieldMessage.setText("無料です。");
}
else if(Age<=12) {
jTextFieldMessage.setText("料金は300円です。");
}
else if(Age<=59) {
jTextFieldMessage.setText("料金は500円です。");
}
無料
else {
300円
・
500円
0 ・・・ 6
7 ・ 12 13 ・・・ 59
・
jTextFieldMessage.setText("無料です。");
}
無料
60 ・・・
無料の年齢は、Age≦6 と Age≧60の和
解答
int Age=Integer.parseInt(jTextFieldAge.getText());
if(
) {
jTextFieldMessage.setText("無料です。");
}
else if(Age<=12) {
4. Age<=6 || Age>=60
jTextFieldMessage.setText("料金は300円です。");
}
else if(Age<=59) {
jTextFieldMessage.setText("料金は500円です。");
}
 無料の年齢は、Age≦6 と Age≧60
 Age≦6 または Age≧60
問題3のプログラムに従うと、3月生まれの人はどのグループに
所属する事になりますか?次の選択肢から選んで下さい。
1. Aグループ
2. Bグループ
3. Cグループ
4. Dグループ
5. どのグループにも属さない
解答
int Month=Integer.parseInt(jTextFieldMonth.getText());
int a=Month % 4;
if(a ==0) {
jTextFieldMessage.setText("Aグループです。");
}
else if(a ==1) {
jTextFieldMessage.setText("Bグループです。");
}
else if(a ==2) {
jTextFieldMessage.setText("Cグループです。");
}
else {
4. Dグループ
jTextFieldMessage.setText("Dグループです。");
}
 月を4で割った時の余りで分類
 3月は3
問題4のプログラムが問題3のプログラムと同等になるためには、
( )内にどの様な式を記入すれば良いですか?適切な式を下
の選択肢から選んで下さい。
1. Month
2. a
3. Month % a
4. case
5. break
解答
int
Month=Integer.parseInt(jTextFieldMonth.getText());
int a=Month % 4;
switch(
) {
2.
case 0:
jTextFieldMessage.setText("Aグループです。");
break;
case 1:
jTextFieldMessage.setText("Bグループです。");
break;
case 2:
jTextFieldMessage.setText("Cグループです。");
break;
case 3:
jTextFieldMessage.setText("Dグループです。");
break;
}
a
問題5の空欄に入る適切な式を次の選択肢から選んで下さい。
1. case
2. break
3. else
4. default
5. case 1,2,4,5,6,9,10
解答
int
Number=Integer.parseInt(jTextFieldNo.getText());
switch(Number) {
case 7:
jTextFieldMessage.setText("おめでとう!一等賞です。");
break;
case 8:
jTextFieldMessage.setText("おめでとう!二等賞です。");
break;
case 3:
jTextFieldMessage.setText("おめでとう!三等賞です。");
break;
**************** :
jTextFieldMessage.setText("残念!外れです。");
break;
}
4. default
プログラムの構造を明確にするために字下げを徹底して下さい。
不要なミスを防げます。
void jButton1ActionPerformed(ActionEvent evt) {
int a=Integer.parseInt(jTextField1.getText());
if( (a%2)==0 ) {
jTextField1.setText("偶数です。");
}
else {
jTextField1.setText("奇数です。");
}
}
構造がよく分かる!
良い例
}の付け忘れを防げます。
プログラムの構造を明確にするために字下げを徹底して下さ
い。不要なミスを防げます。
<悪い例>
void jButton1ActionPerformed(ActionEvent evt) {
int a=Integer.parseInt(jTextField1.getText());
if( (a%2)==0 ) {
カッコが閉じているの
jTextField1.setText("偶数です。");
か分からない!
}
else {
jTextField1.setText("奇数です。");} }
void jButton1ActionPerformed(ActionEvent evt) {
int a=Integer.parseInt(jTextField1.getText());
if( (a%2)==0 ) {
jTextField1.setText("偶数です。");
}
<良い例>
else {
jTextField1.setText("奇数です。");
}
}
 学習内容
「5-5節 繰り返し処理 (1) ―累乗―」pp.124~126
「5-6節
繰り返し処理 (2) -for 文の導入―」pp.127~132
「5-7節
繰り返し処理 (3) ―for文の流れの観察(デバッガ利用)―」
pp.133~137
 学習目標
 for文を使った反復処理の記述方法を身につける。
for(int i=〇;i<=△;i++) {
 学習のポイント
繰り返し行う処理
この書式を身につけること。
}
【基礎課題5-7-1】までチェックを受けた人は終了して結構です。
反復構造(繰り返し処理)
サンプルプログラム
怒りの度合いを変数Doaiに入力する
private void jButton1ActionPerformed(ActionEvent evt) {
int Doai=Integer.parseInt(jTextField1.getText());
String Ikari="";
文字列型変数Ikariを空文字にしておく
for(int i=1; i<=Doai ; i=i+1) {
Ikari=Ikari+"こら";
変数Ikariに”こら”を連結する
この処理を
}
jTextFieldOut.setText(Ikari);
}
Doai回だけ繰り返す