§4 計算(1) 1 vb2005 | プログラミング実習 [Menu] | |
2つの数値データの四則演算(+,−,×,÷)を計算して結果を表示するプログラムについて学習する。
オブジェクト:ラベル(Label)、テキストボックス(TextBox)
@:ラベル
入力欄の説明用
A:テキストボックス
データ入力欄
B:ボタン
【1】 プログラム作成の準備
(1) Windowsアプリケーションを作成するためのプロジェクトを作成する。
プロジェクト名は「計算」とする。
(2) フォーム(Form1)のプロパティを次のように設定する。
Font.Size 12 (ポイント) Size 320, 240 Text 計算
(3) 上の図を参考にして、必要なオブジェクトを配置し、プロパティを設定する。
@ ラベル (Name) Label1 (Name) Label2 (Name) Label3 Text 数値1 Text 数値2 Text 答え AutoSize True AutoSize True AutoSize True
A テキストボックス (Name) Data1 (Name) Data2 (Name) Kotae Text 0 Text 0 Text 0
B ボタン (Name) TasuButton (Name) HikuButton (Name) KakeButton Text 加 算 Text 減 算 Text 乗 算 (Name) WaruButton (Name) ClearButton Text 除 算 Text クリア
(4) プログラムを保存する。
[ファイル(F)] → [すべてを保存(L)]
(5) プログラムを実行する。
数値は入力できるが、どのボタンをクリックしても何も起こらない。
【2】 クリアの処理とデータの型
(6) [クリア](ClearButton)のクリックイベントに対応するメソッドを次のように作成する。
[クリア]のクリックで、数値1、数値2、答えの入力欄を0 にする。
Private Sub ClearButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ClearButton.Click
Data1.Text = "0" 'Textプロパティは文字列を扱う
Data2.Text = "0"
Kotae.Text = "0"
End Sub
Textプロパティは文字列(String型)のデータを記憶するプロパティであるので、プログラムでは0をダブルクォーテーション(")ではさんでいる。
VBは自動的にデータの型の変換をしてくれるので次のように記述してもエラーにはならない。
Data1.Text = 0 ← 数値の0は文字列の"0"に変換されて代入される。
○ データの型
データの型とはデータの種類のことである。次に、主なデータの型についてまとめておく。
型 キーワード 備 考 整数型 Integer -2,147,483,648〜2,147,483,647 (符号付き) 実数型 Double 1.79769313486231570E+308〜-4.94065645841246544E-324(負の値)
4.94065645841246544E-324〜1.79769313486231570E+308(正の値)文字型 String 0文字〜約20億文字の Unicode 文字 ブール型 Boolean True(真)またはFalse(偽)のどちらかを値として持つ 日付型 Date 0001年1月1日0:00:00 (午前0時)〜9999年12月31日 11:59:59 PM オブジェクト型 Object オブジェクト(ボタンやラベル)を値として持つ
【3】 加算の処理とデータ型の変換
(7) [加算](TasuButton)のクリックイベントに対応するメソッドを次のように作成する。
数値1と数値2の計算結果を答えの入力欄に表示(出力)する。
Private Sub TasuButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TasuButton.Click
Kotae.Text = Data1.Text + Data2.Text
End Sub
(8) プログラムを実行する。数値1と数値2を入力して、[加算]ボタンをクリックする。
例えば、12.3と45.6と入力して[加算]ボタンをクリックすると「12.345.6」と結果が表示される。
Textプロパティの値は文字列型(String)なので、"+"の演算子は加算ではなく“文字列の連結”として働くためである。(紛らわしくならないように、文字列の連結には、"&"の演算子を使うようにする。)
○ データ型の変換 Val関数とStr関数
数字の文字列を数値に変換するには「Val関数」を使う。
Val(Data1.Text1) + Val(Data2.Text)
加算の結果は数値なので、Kotae.Textに結果を代入するには「Str関数」で文字列に変換する必要がある。(VBでは自動的仁変換が行われるのでstr関数を省略してもエラーにはならない。)
Kotae.Text = Str(Val(Data1.Text1) + Val(Data2.Text))
(9) 加算の処理を次のように修正する。
Private Sub TasuButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TasuButton.Click
Dim x1 As Double, x2 As Double
x1 = Val(Data1.Text)
x2 = Val(Data2.Text)
Kotae.Text = Str(x1 + x2) '← Kotae.Text = x1 + x2
End Sub
プログラムは3行の計算を
「Kotae.Text= Str(Val(Data1.Text1) + Val(Data2.Text))」
のように1行にまとめてもよいが、次に、入力されたデータを検査する予定なので変数x1,x2に代入している。変数x1,x2は実数型(Double)で宣言している。
(10) プログラムを実行する。数値1と数値2を入力して、[加算]ボタンをクリックする。
例えば、12.3と45.6と入力して[加算]ボタンをクリックすると「57.9」と結果が表示される。
§4 計算(1) 1 vb2005 | Copyright©2007 Hiroshi Masuda |