.NET 3.x Random генерирует одинаковую последовательность - C#

Узнай цену своей работы

Формулировка задачи:

Листинг программы
  1. private void button1_Click(object sender, EventArgs e)
  2. {
  3. //timer1.Start();
  4. fname = GetValues(5,15);//
  5. lname = GetValues(5, 15);//
  6. country = GetValues(4, 12);// глобальные переменные типа string
  7. city = GetValues(5, 10);//
  8. ybirth = GetValues().ToString();//
  9. c.StartCN(); // Генерация некого слова
  10. cnumber = c.ConfirmationNumber;
  11. if (c.InsertToDB(fname, lname, country, city, cnumber, ybirth)) // Вставка данных в БД
  12. {
  13. textBox1.Text += "Loading!!!!\n"; i++; label1.Text = i.ToString();
  14. }
  15. }
  16. string GetValues(int min_val, int max_val)
  17. {
  18. string temp = null;
  19. r = new Random();
  20. rand = r.Next(min_val,max_val);//rand переменная типа int
  21. for (int i = 0; i < rand; i++)
  22. {
  23. rand = r.Next(0, 24);
  24. temp += chars[rand].ToString();//chars это массив букв: chars[A,B,C,D,...]
  25. }
  26. rand = 0;
  27. return temp;
  28. }
  29. string GetValues()
  30. {
  31. r = new Random();
  32. string temp = r.Next(1945, 1999).ToString();
  33. return temp;
  34. }
Проблема в том что при каждом вызова метода GetValues(min_val,max_val) для переменных генерируются только один слово

Решение задачи: «.NET 3.x Random генерирует одинаковую последовательность»

textual
Листинг программы
  1. r = new Random(Environment.TickCount);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.6 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы