ちょっと気まぐれで、西暦に対する十干十二支(じっかんじゅうにし)を計算してみました。
レイアウトは上の様にしました。
L=Label
TB=TextBox
B=Button
ソースの「-----------------」は区切り線なので記述の必要はありません。
青字は自動入力部分で修正の必要はありません。
黒字が入力部分です。
緑字はコメント文なので記述の必要はありません。
------------------
Public Class Form1
Private Sub Button1_Click(sender As Object,
e As EventArgs) Handles Button1.Click
' TextBox1に入力された西暦を取得
Dim year As Integer
If Integer.TryParse(TextBox1.Text, year) Then
' 十干十二支を計算してLabel4に表示
Label4.ForeColor = Color.Green
Label4.Text = GetJikkanJunishi(year)
Else
' 入力が無効な場合のエラーメッセージ
Label4.ForeColor = Color.Red
Label4.Text = "有効な西暦年を入力"
End If
End Sub
Private Function GetJikkanJunishi(year As Integer) As String
' 十干の配列
Dim jikkan() As String = {"甲(きのえ)", "乙(きのと)",
"丙(ひのえ)", "丁(ひのと)", "戊(つちのえ)",
"己(つちのと)", "庚(かのえ)", "辛(かのと)",
"壬(みずのえ)", "癸(みずのと)"}
' 十二支の配列
Dim junishi() As String = {"子(ね)", "丑(うし)",
"寅(とら)", "卯(う)", "辰(たつ)", "巳(み)",
"午(うま)", "未(ひつじ)", "申(さる)",
"酉(とり)", "戌(いぬ)", "亥(い)"}
' 十干を計算(西暦年を10で割った余りで決定)
Dim jikkanIndex As Integer = (year + 6) Mod 10
' 十二支を計算(西暦年を12で割った余りで決定)
Dim junishiIndex As Integer = (year + 8) Mod 12
' 十干と十二支を結合して結果を返す
Return jikkan(jikkanIndex) & junishi(junishiIndex)
End Function
Private Sub Button2_Click(sender As Object,
e As EventArgs) Handles Button2.Click
TextBox1.ResetText()
Label4.ResetText()
End Sub
Private Sub Button3_Click(sender As Object,
e As EventArgs) Handles Button3.Click
End
End Sub
End Class