§4 計算(1)1 | プログラミング実習 |
2つの数値データの四則演算(+,−,×,÷)を計算して結果を表示するプログラムで、データの型について学習する。
@:ラベル 入力欄の説明用 A:テキストボックス データ入力欄 B:ボタン |
【1】 プログラム作成の準備
操作 1 Windowsアプリケーションを作成するためのプロジェクトを作成する。
プロジェクト名は「実習4計算」とする。
操作 2 フォーム(Form1)のプロパティを次のように設定する。
Font.Size 12 (ポイント) Text 実習4計算 Size 320, 240
操作 3 上の図を参考にして、必要なオブジェクトを配置し、プロパティを設定する。
@ ラベル
(3個)(Name) → Label1、 Text → 数値1、 AutoSize → True
(Name) → Label2、 Text → 数値2、 AutoSize → True
(Name) → Label3、 Text → 答え、 AutoSize → TrueA テキストボックス
(3個)(Name) → Data1、 Text → 0
(Name) → Data2、 Text → 0
(Name) → Kotae、 Text → 0B ボタン
(5個)(Name) → TasuButton、 Text → 加 算
(Name) → HikuButton、 Text → 減 算
(Name) → KakeButton、 Text → 乗 算
(Name) → WaruButton、 Text → 除 算
(Name) → ClearButton、 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"
Data2.Text = "0"
Kotae.Text = "0"
End Sub
Textプロパティは文字列(String型)のデータを記憶するプロパティであるので、プログラムでは0をダブルクォーテーション(")ではさんでいる。
VBは自動的にデータの型の変換をしてくれるので次のように記述してもエラーにはならない。
Data1.Text = 0 数値の0は文字列の"0"に変換されて代入される。
○ データ型
データ型とはデータの種類のことである。次に、主なデータの型についてまとめておく。
型 | キーワード | 備 考 |
整数型 | Short | -32,768〜32,767 |
Integer | -2,147,483,648〜2,147,483,647 | |
Long | -9,223,372,036,854,775,808〜9,223,372,036,854,775,807 | |
実数型 | Single | -3.4028235E+38〜-1.401298E-45 (負の値) 1.401298E-45 〜 3.4028235E+38 (正の値) |
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 | オブジェクト(ボタンやラベル)やデータを値として持つ |
演算速度は、整数型ではInteger型、実数型ではDouble型が最も速い。Integer型とDouble型では、Integer型の方が演算速度は速い。
メモリの消費量を節約したいときは、Short型やSingle型を使用する。大きな数値が必要な場合はLong型を使用する。
【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)なので、"+"の演算子は加算ではなく“文字列の連結”として働くためである。(紛らわしくならないように、文字列の連結には、"&"の演算子を使うようにする。)
○ データ型の変換 VB関数と.NET Frameworkクラスライブラリ
データ型は、整数はInteger、実数はDoubleなどのキーワードを指定する。
型変換 VB関数 .NET Frameworkクラスライブラリ 文字列→数値 x = Val("文字列") x = データ型.Parse("文字列") 数値→文字列 s = Str(数値) s = 数値.ToString()
操作 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 | Copyright©2008 Hiroshi Masuda |