第6講 簡易電卓ソフト作りに挑戦しよう
第4話 ボタン7,3などの解説

7のボタンのプログラムはe1
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
               z=10*z;
               z=z+7;
               textBox1->Text=z.ToString();
}

5のボタンのプログラムはe2
private: System::Void button5_Click(System::Object^ sender, System::EventArgs^ e) {
               z=10*z;
               z=z+5;
               textBox1->Text=z.ToString();
}

となっています。実は、0,1,3,・・・,7,8,9のボタンのプログラムの基本構造は同じです。
1行目 
z=10*z; 
でzを10倍し、2行目
z=z+5;
でさらにそれにボタンのTextプロパティ(つまりボタンの表示名)の数を足して、3行目
textBox1->Text=z.ToString();
によって、10倍しそのボタンの表示名加えた数をTextBox1e3
に表示させています。
それでは、ソフトを実行しボタンを3→7通した場合をトレース(コンピュータの動きを追うこと)してみましょう。
3を押すと
e4
プログラム
private: System::Void button9_Click(System::Object^ sender, System::EventArgs^ e) {
               z=10*z;
               z=z+3;
               textBox1->Text=z.ToString();
}

が実行されます。
zは、グローバル変数でプログラムの冒頭で
#pragma once
int yy;
int z=0;
int w;

と宣言され、0が代入されていました。
int z=0;は変数の宣言と0の代入の二つの操作をまとめて書いたものです(C言語の特徴は、複数の操作をまとめてかけることです。)。
したがって、z=10*z;の前にzは0になっているのでz←10*0
の操作によってzは0です。次に、2行目z=z+3;すなわちz←0+3によって、z=3となります。
そして、3行目textBox1->Text=z.ToString();によって
e5と表示されます。
次にe67が押されると
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
               z=10*z;
               z=z+7;
               textBox1->Text=z.ToString();
}

が実行され生ます。
ボタン3の操作によって、z=3となっていましたから、z=10*zすなわちz←10*3
によって、z=30となります。次のz=z+7すなわちz←30+7
によって、z=37です。こうして、最終行textBox1->Text=z.ToString();
により、e7と表示されます。
次に、ボタン5を押せば同様にしてe8
になることをご自分でトレースして確認して下さい。




第3話へ 第5話へ

e8

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

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