プログラムを作るというのは数式を組み合わせるといっても過言ではありません。入力したデータをどのように加工して求める値を導くか?という流れですね。今回は円の面積と円周を入力した直径から計算するプログラムです。
VS Basicを起動したら[新しいプロジェクトの作成]にて新規プログラム作成モードに入ります。最初にTextBox1つ、Button3つ、Label6つを配置します。
プロパティーにて文字やパーツのサイズを調整して上の様なレイアウトとしました。次にソースです。その前に数式の確認です。
円の面積は[半径×半径×π(パイ)]
円周は[直径×π(パイ)]
今回は入力するデータを直径値としました。IllustratorなどのDraw系ソフトで円を数値描画する際は直径値で処理しているので、それを考慮しました。よって考え方としては・・・
円の面積は数値変換したTextBox1の値(直径値)を半分にして半径とし[半径×半径×π(パイ)]の公式に当てはめる。
円の円周は数値変換したTextBox1の値(直径値)を[直径×π(パイ)]の公式に当てはめる。
なお、計算結果は小数第2桁までとすることにしました。そのため、一旦計算結果を変数に入れ、変数を小数第2桁表示させるという流れにします。桁指定はFormatを利用します。
Format(変数, "0.00")
ということで[計算]ボタンをダブルクリックして以下のソースを記述します。
「-----------------」は区切り線なので記述の必要はありません。
青字は自動入力部分で修正の必要はありません。
黒字が入力部分です。
赤字はコメント文なので記述の必要はありません。
-----------------
Public Class Form1
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
' CircleAria, CircumferenceをDecimal変数宣言
' TextBox1に円の直径を入力。
' 円の面積は数値変換したTextBox1を半分にして半径とし、
' 半径掛ける半径にPI(3.14)を掛けてCircleAriaに入れる。
' CircleAriaの値をLabel4.Textに小数第2桁までの値で表示
' 円の円周は数値変換したTextBox1にPI(3.14)を掛けてCircumferenceに入れる。
' Circumferenceの値をLabel5.Textに小数第2桁までの値で表示。
Dim CircleAria, Circumference As Decimal
CircleAria = (Val(TextBox1.Text) /2) *(Val(TextBox1.Text) /2) * Math.PI
Circumference = Val(TextBox1.Text)*Math.PI
Label4.Text = Format(CircleAria, "0.00")
Label5.Text = Format(Circumference, "0.00")
End Sub
End Class
-----------------
続けて[C]ボタンをダブルクリックして以下のソースを記述します。
TextBox1のリセット(クリア)
-----------------
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
TextBox1.ResetText()
End Sub
-----------------
更に[AC]ボタンをダブルクリックして以下のソースを記述します。
TextBox1、Label4、Label5のリセット(クリア)
-----------------
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
TextBox1.ResetText()
Label4.ResetText()
Label5.ResetText()
End Sub
-----------------
最後にパレットの[Form1]をプロパティーの[font>Text]をForm1から[Circle calculator ver1.0]に変更します。
記述が済んだらデバッグを実行して問題が出なければ完成です。
最終的なソースは以下の様になりました。
-----------------
Public Class Form1
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
' CircleAria, CircumferenceをDecimal変数宣言
' TextBox1に円の直径を入力。
' 円の面積は数値変換したTextBox1を半分にして半径とし、
' 半径掛ける半径にPI(3.14)を掛けてCircleAriaに入れる。
' CircleAriaの値をLabel4.Textに小数第2桁までの値で表示
' 円の円周は数値変換したTextBox1にPI(3.14)を掛けてCircumferenceに入れる。
' Circumferenceの値をLabel5.Textに小数第2桁までの値で表示。
Dim CircleAria, Circumference As Decimal
CircleAria = (Val(TextBox1.Text) /2) *(Val(TextBox1.Text) /2) * Math.PI
Circumference = Val(TextBox1.Text)*Math.PI
Label4.Text = Format(CircleAria, "0.00")
Label5.Text = Format(Circumference, "0.00")
End Sub
-----------------
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
TextBox1.ResetText()
End Sub
-----------------
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
TextBox1.ResetText()
Label4.ResetText()
Label5.ResetText()
End Sub
End Class
-----------------
その他の数式としては以下が覚えておくと便利な数式です。
関数 | 関数名 | 関数の意味 |
絶対値 | Math.Abs(x) | xの絶対値 |
余弦 | Math.Cos(x) | xのcos値[radian] |
指数 | Math.Exp(x) | eのx乗の値 |
対数 | Math.Log(x) | 自然対数logの値 |
四捨五入 | Math.Round(x) | xの小数点以下を四捨五入 |
切り上げ | Math.Ceiling(x) | xの小数点以下を切り上げ |
切り下げ | Math.Floor(x) | xの小数点以下を切り下げ |
正負符号 | Math.Sign(x) | xの値ら正・負・零を1,-1,0で与える |
正弦 | Math.Sin(x) | xのsin値[radian] |
平方根 | Math.Sqrt(x) | √xの値、xは正(x>0) |
正接 | Math.Tan(x) | xのtan値[radian] |
※[radian]xはラジアン(角度の単位)で与える
Visual Studio Basic 2019