第6講 if文を理解しよう
第6話 if~else文による3段階評価
第5話問題解答例
class y{
public static void main(String args[]){
int a,i;
for(i=0;i<20;i++){
a=(int)(Math.random()*101);
System.out.print (a);
if(a>=80){
System.out.println(":優秀");
}
else{
if(a>=50){
System.out.println(":がんばりました");
}
else{
if(a<10)System.out.print(" ");
System.out.println(":今一歩の努力が必要です。");
}
}
}
}
}
解説
if(a<10)System.out.print(" ");に?マークですよね。
今までの書き方なら
if(a<10){
if(a<10)System.out.print(" ");
}
ですが、
実はif文もif~else文も1文しかないときは、
if(*)A;
if(*)A;else B;
と1行で書けるのです。
ただし、elseと文の間には半角スペースが必要です。
この書き方を使用すれば
class y{
public static void main(String args[]){
int a,i;
for(i=0;i<20;i++){
a=(int)(Math.random()*101);
System.out.print (a);
if(a>=80)System.out.println(":優秀");else if(a>=50)System.out.println(":がんばりました");else{
if(a<10)System.out.print(" ");
System.out.println(":今一歩の努力が必要です。");
}
}
}
}
と簡略になります。ただ、余りにも簡略にするのはお勧めできません。
わかりにくくなるからです。やはり、
class y{
public static void main(String args[]){
int a,i;
for(i=0;i<20;i++){
a=(int)(Math.random()*101);
System.out.print (a);
if(a>=80){
System.out.println(":優秀");
}
else{
if(a>=50){
System.out.println(":がんばりました");
}
else{
if(a<10)System.out.print(" ");
System.out.println(":今一歩の努力が必要です。");
}
}
}
}
}
と書くべきです。段組が組んであって、入れ子式の構造が明らかだからです。
さて、それでは次に4段階評価に挑戦しましょう。段階評価は、例えば
80点以上なら『非常に優秀』、80点未満70点以上なら『優秀』、70点未満50点以上なら『普通』、50点未満なら『努力が必要』
などとしましょう。尚、プログラミングには遊びが必要ですから、コメントをいろいろ変えて楽しんでください。
第5話へ 第7話へ
VB講義へ
VB講義基礎へ
vc++講義へ第1部へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 入門 C++ 入門
基礎から応用まで第1部
初心者のための VC++による C言語 入門 C++ 入門
基礎から応用まで第2部
初心者のための
VC++による C言語 入門 C++ 入門 基礎から応用まで第3部