Как сделать заполнение массива за один раз? - C#
Формулировка задачи:
Как сделать чтобы заполнения массива была за один раз,
например когда будет запрос ReadLine'а
через пробел чтобы можно было заполнить массив
сейчас у меня в этом коде в зависимости от размера массива выводится ReadLine
то есть если размер массива равно 2 ( 0 и 1)
то приходиться дважды ввести значения
А хочется чтобы за раз заполнить массив когда будет запрос ReadLine()
вот в этом месте "mas[idx] = int.Parse(Console.ReadLine());"
int x = int.Parse(Console.ReadLine()); int[] mas = new int[x]; Console.WriteLine("Заполни массив"); int idx = 0; loop: mas[idx] = int.Parse(Console.ReadLine()); //Console.Write(mas[idx] + "\n"); idx++; if (idx < x) goto loop; int idx2 = 0; Console.WriteLine("\nВывод массива"); loop2: //mas[idx] = int.Parse(Console.ReadLine()); Console.Write(mas[idx2] + "\n"); idx2++; if (idx2 < x) goto loop2; Console.ReadKey();
Решение задачи: «Как сделать заполнение массива за один раз?»
textual
Листинг программы
static void Main(string[] args) { inputLoop: Console.WriteLine("Заполни массив: "); string strArray = Console.ReadLine(); if (strArray.Length == 0) { Console.Clear(); goto inputLoop; } int size = strArray.Length - strArray.Replace(" ", "").Length + 1; int[] numArray = new int[size]; int i = 0; int pos = 0; fillArrayLoop: pos = strArray.IndexOf(" "); if (pos < 0) { pos = strArray.Length; } numArray[i] = int.Parse(strArray.Substring(0, pos)); i++; if (i < size) { strArray = strArray.Substring(pos + 1); goto fillArrayLoop; } i = 0; outputLoop: Console.Write(numArray[i].ToString() + " "); i++; if (i < size) goto outputLoop; Console.ReadKey(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д