第5講 if文に挑戦しよう 
第2話 合否判定ソフト
今回は次のようなForm1を作り、5教科の総合得点が合格であるか、
不合格であるかを判定するソフトを作ってみましょう。
合格ラインは、5教科の合計が300点としましょう。
300点以上なら合格、
300点未満なら不合格と判定するソフトを作ってみましょう。


今まで、From1のTextはいじらず来ましたが、
Textでソフト名をつけることも出来ます。
Form1が出来た後、合否判定ボタンをダブルクリックをして、
次のようにプログラムしてみましょう。

(コピーペースト用
int a;
int b;
int c;
int d;
int f;
int w;
a=int::Parse(textBox1->Text);
b=int::Parse(textBox2->Text);
c=int::Parse(textBox3->Text);
d=int::Parse(textBox4->Text);
f=int::Parse(textBox5->Text);
w=a+b+c+d+f;
if(w>=300)textBox6->Text=L"合格です";
if(w<300)textBox6->Text=L"不合格です";


4番目の変数がeではなく、fになっていますがeだとエラーしてしまいます。
変数名は基本的には自由につけられるのですが、
一部禁則があります。
例えば、ifやisは変数名としては使えません。
これは、C++の文法で意味を定められているので使ってはいけないのです。
したがって、forも文法で定めれれているので使ってはいけません。
eは
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) のe
と重なるのでeは使えません。
ただし、例えばe1や_eとすれば、エラーはしません。


ようするにVisul C++の文法の中で意味の定められている単語(ifなど)は
変数として使ってはならず、eもその一つだと思って下さい。
ビルドしてエラーが指摘されたら、何らかの禁則に反していますので、
そのときは変数名は変更して下さい。

そのほかの禁則を確認しておきましょう。
変数に使えるのは、アルファベットと数字と_(アンダーバー)のみです。
数字は途中や最後で使えますが、1aのように先頭で使うとエラーします。
a1やa1bのように先頭以外なら問題ありません。

問題のない変数名の例
_a,aA,AA,Aa,a_,a_b, a11_
問題のある変数名の例
^a(使えるのはアルファベットと数字と_(アンダーバー)のみに反する)
/a(使えるのはアルファベットと数字と_(アンダーバー)のみに反する)
a-1(使えるのはアルファベットと数字と_(アンダーバー)のみに反する)
1a(数字が先頭に来ている。)


さて、プログラムの入力が終わったらビルドして、
国語、社会、数学、理科、英語に適当に数字を入力して、
合否判定ボタンを押して下さい。
合計得点が300点以上なら合格です、300点未満なら不合格ですと、
表示されるはずです。

if(w>=300)textBox6->Text=L"合格です";
は合計得点であるwが300以上ならTextBox6に合格と表示させる命令です。
if(w<300)textBox6->Text=L"不合格です";

は合計得点であるwが300未満ならTextBox6に不合格と表示させる命令です。


問 上のソフトは、
   合計が表示されないためソフトが正しいかどうか即に分かるというわけにはいきません。
   そこで、LabelとTextBoxを一つずつ加えて、

のように合否判定ボタンを押すと総合得点も表示されるように変更して下さい。


解答例


第1話へ 第3話へ


初心者のためのjava 入門 基礎から応用まで
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第1部
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第2部
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第3部

vb講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすい vb 入門 vba 入門 基礎から応用まで 第1部
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座へ