2

ユーザーからの入力を受け取り、それらを簡単に追加するコードが必要です。しかし、0が押されるまで入力を取得し、数字を追加する方法を見つけることができません..これまでのところ、10個の値を取るようにしましたが、カスタムにする必要があると言ったように..助けてくれてありがとう.

int[] myarray = new int[10];
for (int i = 0; i < 10; i++)
{
    myarray[i] = Convert.ToInt32(Console.ReadLine());
}

int a = 0;
for (int j = 0; j < 10; j++)
{
    a = a + myarray[j];
}

Console.WriteLine(a);
Console.ReadLine();
4

5 に答える 5

2

追加する前に入力を確認し、0 の場合はループから抜け出します

int input = Convert.ToInt32(Console.ReadLine());
if(input == 0) 
{
  break;
}

myarray[i] = input;
于 2013-05-29T12:27:39.650 に答える
1

配列の長さがわからないので、リストを使用することをお勧めします。危険なユーザー入力に対処するために、tryparse も追加しました。リストで Sum() を使用して、別のループを書き出さないようにすることができます。

        IList<int> myList = new List<int>();
        string userInput = "";
        int myInt = 0;

        while (userInput != "0")
        {
            userInput = Console.ReadLine();
            if(Int32.TryParse(userInput, out myInt) && myInt > 0)
            {
                myList.Add(myInt);
            }
        }

        Console.WriteLine(myList.Sum());
        Console.ReadLine();
于 2013-05-29T12:38:16.847 に答える
0

サイズが不明な配列がある場合は、リストを使用する必要があります。

var ls = new List<int>();

    while(true)
    {
        var input = Convert.ToInt32(Console.ReadLine());
        if(input == 0) 
            break;

        ls.Add(input);
    }

MSDN によるリスト

于 2013-05-29T12:32:06.703 に答える