숫자가 이전과 일치하면 난수를 생성합니다.

카오루

앞에 텍스트가있는 난수를 만들고 시스템에 숫자가 두 번 표시되는 것을 원하지 않습니다. 그래서, 이것이 제가 한 방식입니다.

Random _rand = new Random();

private void RandomNumberGenerator()
        {
            int random = _rand.Next(10000);
            string text = "TP0" + random;

            if (random.Equals(random))
            {
                _rand.Next();
            }

            else
            {
                random = _rand.Next(10000);
            }

            MessageBox.Show(text);
        }

표시된 숫자가 두 번 표시되지 않습니다 (하지만 숫자가 5 번 표시 될 때까지 프로그램을 닫았 기 때문에 확실하지 않습니다 (모두 동일한 숫자가 아님)).

위의 코드에서 혹시 숫자를 두 번 표시하는 것이 가능합니까?

감사합니다.

온 드레이 스베 다르

매직 넘버를 제거하고 온전함을 보장하기 위해 편집되었습니다.

  Random _rand = new Random();
  HashSet<int> _taken = new HashSet<int>();
  object _syncRoot = new object();

  private int RandomNumberGenerator() {
    lock (_syncRoot) {
      const int MAX_NUMBER = 10000;
      if (_taken.Count == MAX_NUMBER) {
        throw new Exception("All possible numbers are already generated.");
      }

      int random = _rand.Next(MAX_NUMBER);
      while (_taken.Contains(random)) {
        random = (random + 1) % MAX_NUMBER;
      }
      _taken.Add(random);
      return random;
    }
  }

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

kdb를 사용하여 숫자가 목록의 숫자 색인과 동일하지 않아야하는 고유 한 난수 목록을 생성합니다.

분류에서Dev

임의의 숫자가 생성되며 조건과 일치하지 않으면 다시 생성합니다. 수행하는 방법?

분류에서Dev

난수 생성기는 Android에서 동일한 숫자를 생성합니다.

분류에서Dev

pyspark. 난수를 생성하는 변환기는 항상 동일한 숫자를 생성합니다.

분류에서Dev

파이썬에서 큰 숫자를 합하면 최대 매개 변수가 생성됩니다.

분류에서Dev

bash는 난수를 생성하지만 번호가 이미 선택된 경우 파일을 확인합니다.

분류에서Dev

내 난수 생성기 함수가 동일한 번호를 생성합니다.

분류에서Dev

round () 함수가 이상한 숫자를 생성합니다.

분류에서Dev

내 파이썬 난수는 동일한 결과를 생성합니다

분류에서Dev

클래스 생성자가 인수 목록과 일치하지 않습니다 ....하지만 일치합니다 ....?

분류에서Dev

C 난수 생성기는 때때로 동일한 숫자를 생성합니다.

분류에서Dev

난수 생성기가 동일한 숫자를 생성하지 못하도록하려면 어떻게해야합니까? (Javascript)

분류에서Dev

4 자리 미만의 난수를 생성하지만 1, 2 또는 3 자리 숫자를 가질 확률은 동일합니다.

분류에서Dev

arraylist의 항목과 동일하지 않은 숫자를 생성합니다.

분류에서Dev

새 숫자가 이전 숫자보다 커야하는 경우 매초 0에서 100 사이의 증가 된 난수 생성

분류에서Dev

생성 된 각 숫자가 이전 숫자에 따라 일부 조건을 따르도록 목록에서 난수 샘플을 코딩하려면 어떻게해야합니까?

분류에서Dev

한 문자열이 다른 문자열과 일치 할 때 숫자를 더하기 위해 조건부 합계를 어떻게 생성합니까?

분류에서Dev

자바 스크립트 : 난수 생성기는 항상 동일한 숫자를 표시합니다.

분류에서Dev

파이썬에서 이전 숫자를 기반으로 의사 난수를 생성하는 방법

분류에서Dev

내 다섯 가지 추측과 일치하는 난수를 두 개 이상 얻을 수 없습니다.

분류에서Dev

유전 알고리즘 도구 상자, Deap에서 0과 1 사이의 난수를 생성하는 방법

분류에서Dev

난수는 범위를 벗어난 숫자를 생성합니다 (자바)

분류에서Dev

스키마 수준에서 기본 난수를 생성하는 Mongodb는 동일한 숫자를 생성합니다.

분류에서Dev

최대 50 개의 난수를 생성합니다. 사용자가 JavaScript를 사용하는 난수를 최대 5 배까지 추측하도록합니다.

분류에서Dev

Bash는 숫자 풀에서 난수를 생성합니다.

분류에서Dev

난수를 가진 파일이 있습니다. 2000-4000에서 xyzw로 모든 숫자를 변환해야합니다.

분류에서Dev

트리거가 생성되었지만 이벤트를 실행하면 숫자 또는 값 오류가 발생합니다.

분류에서Dev

레일 생성으로 컨트롤러를 생성하면 이상한 오류가 발생합니다.

분류에서Dev

생성자를 통해 생성자를 초기화하면 예기치 않은 결과가 발생합니까?

Related 관련 기사

  1. 1

    kdb를 사용하여 숫자가 목록의 숫자 색인과 동일하지 않아야하는 고유 한 난수 목록을 생성합니다.

  2. 2

    임의의 숫자가 생성되며 조건과 일치하지 않으면 다시 생성합니다. 수행하는 방법?

  3. 3

    난수 생성기는 Android에서 동일한 숫자를 생성합니다.

  4. 4

    pyspark. 난수를 생성하는 변환기는 항상 동일한 숫자를 생성합니다.

  5. 5

    파이썬에서 큰 숫자를 합하면 최대 매개 변수가 생성됩니다.

  6. 6

    bash는 난수를 생성하지만 번호가 이미 선택된 경우 파일을 확인합니다.

  7. 7

    내 난수 생성기 함수가 동일한 번호를 생성합니다.

  8. 8

    round () 함수가 이상한 숫자를 생성합니다.

  9. 9

    내 파이썬 난수는 동일한 결과를 생성합니다

  10. 10

    클래스 생성자가 인수 목록과 일치하지 않습니다 ....하지만 일치합니다 ....?

  11. 11

    C 난수 생성기는 때때로 동일한 숫자를 생성합니다.

  12. 12

    난수 생성기가 동일한 숫자를 생성하지 못하도록하려면 어떻게해야합니까? (Javascript)

  13. 13

    4 자리 미만의 난수를 생성하지만 1, 2 또는 3 자리 숫자를 가질 확률은 동일합니다.

  14. 14

    arraylist의 항목과 동일하지 않은 숫자를 생성합니다.

  15. 15

    새 숫자가 이전 숫자보다 커야하는 경우 매초 0에서 100 사이의 증가 된 난수 생성

  16. 16

    생성 된 각 숫자가 이전 숫자에 따라 일부 조건을 따르도록 목록에서 난수 샘플을 코딩하려면 어떻게해야합니까?

  17. 17

    한 문자열이 다른 문자열과 일치 할 때 숫자를 더하기 위해 조건부 합계를 어떻게 생성합니까?

  18. 18

    자바 스크립트 : 난수 생성기는 항상 동일한 숫자를 표시합니다.

  19. 19

    파이썬에서 이전 숫자를 기반으로 의사 난수를 생성하는 방법

  20. 20

    내 다섯 가지 추측과 일치하는 난수를 두 개 이상 얻을 수 없습니다.

  21. 21

    유전 알고리즘 도구 상자, Deap에서 0과 1 사이의 난수를 생성하는 방법

  22. 22

    난수는 범위를 벗어난 숫자를 생성합니다 (자바)

  23. 23

    스키마 수준에서 기본 난수를 생성하는 Mongodb는 동일한 숫자를 생성합니다.

  24. 24

    최대 50 개의 난수를 생성합니다. 사용자가 JavaScript를 사용하는 난수를 최대 5 배까지 추측하도록합니다.

  25. 25

    Bash는 숫자 풀에서 난수를 생성합니다.

  26. 26

    난수를 가진 파일이 있습니다. 2000-4000에서 xyzw로 모든 숫자를 변환해야합니다.

  27. 27

    트리거가 생성되었지만 이벤트를 실행하면 숫자 또는 값 오류가 발생합니다.

  28. 28

    레일 생성으로 컨트롤러를 생성하면 이상한 오류가 발생합니다.

  29. 29

    생성자를 통해 생성자를 초기화하면 예기치 않은 결과가 발생합니까?

뜨겁다태그

보관