キーボードから整数値を入力するプログラムを作成しますが、入力エラーあったときは再入力できるように改良します。
画面から入力したデータが数値でなければ、再入力できるように改良したサンプルプログラムです。入力した値が数値か否かを、IsNumeric関数で調べて、数値でなければ、Do ... Loop を利用して再入力できるようにしています。
Module Module1 Sub Main() ' 変数の宣言 Dim inStr As String Dim inNum As Integer ' 数値以外の入力は再入力 Do Console.WriteLine("** 数値を入力してください **") ' キーボードから入力 inStr = Console.ReadLine() ' IsNumeric関数で数値検査 If IsNumeric(inStr) = True Then ' 数値を入力したら、Do Loopを抜ける Exit Do Else Console.WriteLine("数字以外の文字があります") Console.WriteLine() End If Loop ' 入力した文字列を数値に変換 inNum = Integer.Parse(inStr) ' 入力値の確認 Console.Write("入力した数値=") Console.WriteLine(inNum) End Sub End Module
【注意】ただし、これでも完璧ではありません。これでも例外が発生することがあります。皆さんで改良してみてください。
次回は、コメントの書き方 について勉強します。
| ◆ VB 文法 目次へ◆ |
|---|
| 文字列を表示する |
| Dim 変数の宣言 |
| = 代入演算子 |
| キーボード入力 |
| & 文字列連結演算子 |
| 3つ以上の文字列を連結 |
| 文字列を改行する |
| + 加算演算子 |
| - 減算演算子 |
| * 乗算演算子 |
| / 除算演算子 |
| ¥ 整数除算演算子 |
| Mod 整数剰余演算子 |
| ^ べき乗(累乗)演算子 |
| += -= *= /= |
| \= ^= &= |
| ◆ VB 文法 目次へ◆ |
|---|
| Day() |
| Fix() |
| Format() 数値編 |
| Hour() |
| Int() |
| IsNumeric() |
| LTrim() |
| Minute() |
| Month() |
| RTrim() |
| Second() |
| Space() |
| Trim() |
| Year() |
| ◆ VB 文法 目次へ◆ |
|---|
| Math.Absメソッド |
| Math.Ceilingメソッド |
| Math.Floorメソッド |
| Math.Maxメソッド |
| Math.Minメソッド |
| Math.Roundメソッド |
| Math.Signメソッド |
| Math.Truncateメソッド |