Программа не работает правильно без "Console.ReadLine()" - C#
Формулировка задачи:
Помогите решить проблему. Пишу программу, которая генерирует 45 случайных шестиразрядных чисел. Условие задачи такого, что цифры в числах не должны повторяться. После чего программа считает какая цифра в этих числах повторяется чаще всего. Я написал весь код к этой задаче: и генератор чисел, и подсчет цифр. Но! Программа работает только, если после каждого сгенерированного числа ожидается ввод с клавиатуры(Console.ReadLine()). Объясните в чем проблема. Если убрать строку Console.ReadLine() то все числа будут одинаковыми. Как исправить эту ошибку?
Ниже приведен код(методы для генерации чисел и метод Main). Часть кода я вырезал.
Листинг программы
- static int Generate()
- {
- int[] mass = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
- string s = "";
- Random r = new Random();
- for (int i = 0; i < 6; i++)
- {
- if (i == 0)
- {
- int ran = r.Next(0, mass.Length - 2);
- s += mass[ran];
- mass = DelEl(mass, ran);
- }
- else
- {
- int ran = r.Next(0, mass.Length - 1);
- s += mass[ran];
- mass = DelEl(mass, ran);
- }
- }
- return int.Parse(s);
- }
- static int[] DelEl(int[] mass, int ran)
- {
- int[] mass2 = new int[mass.Length - 1];
- for (int i = 0; i < mass2.Length; i++)
- {
- if (i < ran)
- mass2[i] = mass[i];
- else
- mass2[i] = mass[i + 1];
- }
- return mass2;
- }
- static void Main(string[] args)
- {
- int[] array = new int[45];
- Console.WriteLine("Автоматическое генерирование чисел:");
- for(int i = 0; i < array.Length; i ++)
- {
- array[i] = Generate();
- Console.ReadLine(); // Если убрать эту строку, то все значения элементов будет одинаковыми!
- Console.WriteLine("Число номер {0, 2} получило значение = {1}", i + 1, array[i]);
- }
- Console.ReadLine();
- }
Решение задачи: «Программа не работает правильно без "Console.ReadLine()"»
textual
Листинг программы
- static readonly Random r = new Random();
- static int Generate()
- {
- int[] mass = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
- string s = "";
- ...
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д