0

ユーザーに 3 つの数値を 3 つのテキスト ボックスに入力して平均を求めさせようとしています。

Private Sub btnAverage_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAverage.Click

  Dim a As Integer = CInt(txtone.Text)        
  Dim b As Integer = CInt(txtTwo.Text)
  Dim c As Integer = CInt(txtThree.Text)
  Dim average As Integer   
  average = (a + b + c) / 3

  lstOutput.Text = average

End Sub 
4

3 に答える 3

2

平均のタイプを Integer から Double に変更してみてください

Dim average as Double

現在、整数のみを保持できる整数に平均を格納しようとしています。平均は非整数になる傾向があり、それを表すデータ型が必要です。Double は、ほとんどの状況に適しています。これで問題が解決するはずです。

編集OPは、lstOutputがListBoxであると述べました

これは、WinForms で紛らわしいことの 1 つです。すべてのコントロールに Text プロパティがありますが、すべてのコントロールが実際に何もしないわけではありません。これらは、単一のテキスト ブロックまたは値を直接表示する要素にのみ適用されます。Ex ボタン、ラベルなど...

一方、ListBox はアイテムのグループを表示します。リストに新しい項目を追加したい。

lstOutput.Items.Add(average.ToString())
于 2009-03-11T02:04:05.327 に答える