/// 実習D6 制御文(For 〜Next)と配列 プログラミング実習
 back next 

プロジェクト名   実習D6複数データの合計

動作

 複数の整数データをカンマで区切って入力する。そのデータの合計を

デザイン

フォームのプロパティ
 Font.Size = 11
 Size = 360, 180

コード(プログラム)    [終了ボタン]のメソッドは省略しています。 

Public Class Form1
  Private Sub btnKeisan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnKeisan.Click
    Dim xdata() As String
    Dim goukei, n As Integer
     @  = 0
    xdata = tbxData.Text.Split(",")
    For n = 0 To  A  - 1
      goukei = goukei + CInt(xdata(n))
    Next
    MessageBox.Show("合計は" & goukei.ToString & "です。", "実習D6")
  End Sub
End Class

解答欄(英数字は半角で入力すること。余分な空白は入れないこと)
  @   A
   解答を入力し、[解答チェック]ボタンをクリックする。正解は   、不正解は   で表示される。

キーワード

Split : スプリット。データを指定された区切り文字で区切り、添字が0から始まる1次元配列にする。

解説

 tbxData.Text.Split(",")は、tbxDataオブジェクトのTextプロパティの値に対して、”,”を区切り文字として区切り、1次元の配列xdataに格納する。
 Textプロパティは文字型のデータであるから、配列xdataも文字型(String)で宣言する。
例1 3,4,5と入力するとxdata(0)=3,xdata(1)=4,xdata(2)=5と格納される。
例2 tbxData.Text.Split("/")と変更する。12/34/56と入力する。
   xdata(0)=12,xdata(1)=34,xdata(2)=56と格納される。

テスト

データ=10,20,30,40,50 ⇒ 合計は150です。
データ=,10,20,30 ⇒ エラーになる(中断する)。
理由 配列の値はxdata(0)=(空), xdata(1)=10, xdata(2)=20, xdata(3)=30となる。(空)は値がないので、存在しない値をCintで整数に変換できなくてエラーになる。“10,20,30,”、“10,,20,30” や未入力の場合もエラーになる。

Memo
他の書き方 xdata = Split(tbxData.Text, ",")

 back next 
/// 実習D6 制御文(For 〜Next)と配列 Copyright©2014 Hiroshi Masuda 

 

 

inserted by FC2 system