コンソールからスペース( )で区切られた1 行n
で指定された数値を読み取るタスクがあります。
別々の行にあるすべての数字を読むときのやり方は知っていますが( )、数字が同じ行Console.ReadLine()
にあるときのやり方については助けが必要です。
コンソールからスペース( )で区切られた1 行n
で指定された数値を読み取るタスクがあります。
別々の行にあるすべての数字を読むときのやり方は知っていますが( )、数字が同じ行Console.ReadLine()
にあるときのやり方については助けが必要です。
使用できますString.Split
。文字列を複数に分割するために使用する文字を指定できます。何も指定しない場合、すべての空白は分割文字 (改行、タブなど) と見なされます。
string[] tokens = line.Split(); // all spaces, tab- and newline characters are used
または、区切り文字としてスペースのみを使用する場合:
string[] tokens = line.Split(' ');
それらを解析したい場合は、int
次を使用できますArray.ConvertAll()
。
int[] numbers = Array.ConvertAll(tokens, int.Parse); // fails if the format is invalid
フォーマットが有効かどうかを確認したい場合は、 を使用しますint.TryParse
。
次を使用して行を分割できますString.Split()
。
var line = Console.ReadLine();
var numbers = line.Split(' ');
foreach(var number in numbers)
{
int num;
if (Int32.TryParse(number, out num))
{
// num is your number as integer
}
}
入力したデータを分割するだけです。
string numbersLine = console.ReadLine();
string[] numbers = numbersLine.Split(new char[] { ' '});
// Convert to int or whatever and use