A
AntiPlayer
Здравствуйте, за мой вопрос можно меня сразу к Оленям помещать, но разобраться так и не смог.
Есть простенькое консольное приложение на C#:
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">Приложение</div></div><div class="sp-body"><div class="sp-content">
Вот что выводит программа:
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">Итог</div></div><div class="sp-body"><div class="sp-content">
7 5
7 5
7 5
7 5
7 5
7 5
7 5
7 5
7 5
При этом, если вставить в теле цикла Thread.Sleep(1000), то всё выводится как надо:
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">как надо</div></div><div class="sp-body"><div class="sp-content">
0 8
9 0
3 8
6 6
6 8
9 6
7 1
6 2
0 1
Как это исправить? Потому что пауза не вариант.
При этом в на Java всё просто идеально, учитывая, что код тот же самый:
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">Java</div></div><div class="sp-body"><div class="sp-content">
Это всё-таки небольшой камень в огород C#, либо же я и правда Олень![Smile :) :)](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f642.png)
Помогите, как лаконично и коротко обойти данный глюк(?). Я так понимаю, что Рандом в Си Диез как-то зависит от текущего времени, и так как программа выполняется в минимальный отрезок времени - он и генерирует одинаковый набор цифр.
Есть простенькое консольное приложение на C#:
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">Приложение</div></div><div class="sp-body"><div class="sp-content">
Код:
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
for (int m = 1; m < 10 ; m++)
{
Random rnd = new Random();
int b = rnd.Next(10);
int l = rnd.Next(10);
Console.WriteLine(b + " " + l );
}
Console.ReadKey();
}
}
}
Вот что выводит программа:
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">Итог</div></div><div class="sp-body"><div class="sp-content">
7 5
7 5
7 5
7 5
7 5
7 5
7 5
7 5
7 5
При этом, если вставить в теле цикла Thread.Sleep(1000), то всё выводится как надо:
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">как надо</div></div><div class="sp-body"><div class="sp-content">
0 8
9 0
3 8
6 6
6 8
9 6
7 1
6 2
0 1
Как это исправить? Потому что пауза не вариант.
При этом в на Java всё просто идеально, учитывая, что код тот же самый:
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">Java</div></div><div class="sp-body"><div class="sp-content">
Код:
class fact
{
public static void main(String[] args)
{
for (int i=1;i<10;i++)
{
int b = (int)(10 * Math.random());
int c = (int)(10 * Math.random());
System.out.println(b+" "+c);
}
}
}
Это всё-таки небольшой камень в огород C#, либо же я и правда Олень
![Smile :) :)](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f642.png)
Помогите, как лаконично и коротко обойти данный глюк(?). Я так понимаю, что Рандом в Си Диез как-то зависит от текущего времени, и так как программа выполняется в минимальный отрезок времени - он и генерирует одинаковый набор цифр.