Generowanie liczb losowych w pewnym zakresie w C ++

Generowanie liczb losowych w pewnym zakresie w C ++
Generowanie liczb losowych W C ++ ma wiele zastosowań, od symulacji i rozwoju gier do analizy danych i kryptografii. Pomimo swojej przydatności, tworzenie prawdziwie losowych liczb jest trudnym zadaniem. Jednak z pewnym podstawowym zrozumieniem języka programowania C ++ możliwe jest wygenerować losowe Liczby ze względną łatwością.

Ten artykuł jest użytecznym przewodnikiem generowania liczb losowych w pewnym zakresie w C++.

Generowanie liczb losowych w pewnym zakresie w C++

W C ++ istnieją dwie różne metody produkcji losowe liczby:

  • funkcja rand ()
  • funkcja srand ()

1: funkcja rand ()

Pierwszy rodzaj losowy Generowanie liczb w C ++ używa funkcji biblioteki skraj(). Dzięki tej funkcji użytkownik zapewnia maksymalne i minimalne dane wejściowe i zwróci Liczba losowa między tymi dwiema wartościami. Zwrócona liczba może być liczbą całkowitą lub liczbą zmiennoprzecinkową, w zależności od wyboru użytkownika. Zakres dostarczonych wartości musi być dodatnia, ale może przyjąć dowolną wartość i nie jest ograniczona do 0 i 1.

#włączać
#włączać
za pomocą przestrzeni nazw Std;
int main ()

dla (int x = 0; x < 5; x++)
Cout << rand() << " ";
powrót 0;

W tym kodzie do tworzenia używana jest pętla losowy liczby pięć razy za pomocą wbudowanej funkcji skraj().

Wyjście

Jeśli chcesz wygenerować liczby losowe od 0 do 1 do "skraj", Możesz użyć następującego kodu:

#włączać
#włączać
za pomocą przestrzeni nazw Std;
int main ()

dla (int x = 0; x < 5; x++)
Cout << (rand() % 10001) / 10000.0 << " ";
powrót 0;

Wyjście:

Problem z skraj() Funkcja polega na tym, że za każdym razem, gdy będziemy wykonywać program, wynikiem będzie ta sama sekwencja.

2: funkcja srand ()

Jedyna różnica między SRAND () I skraj() Funkcje to wartość nasion, która jest używana do ustalenia zakresu lub sekwencji pseudo-randomych całkowitych. C++ Generator liczb losowych rozpocznie się po wprowadzeniu wartości nasiennej za pomocą SRAND () metoda. Wyjście wydaje się losowe dzięki tej wartości nasion.

#włączać
#włączać
#włączać
za pomocą przestrzeni nazw Std;
int main ()

SRAND (czas (0));
dla (int i = 0; i < 5; i++)
Cout << rand() << " ";
powrót 0;

W tym kodzie używamy czas() funkcjonować jako wartość nasion SRAND () funkcja, a następnie Liczba losowa jest generowany 5 razy za pomocą pętli.

Wyjście

Jeśli chcesz wygenerować liczby losowe od 0 do 1 do „Srand”, Możesz użyć następującego kodu:

#włączać
#włączać
#włączać
za pomocą przestrzeni nazw Std;
int main ()

SRAND (czas (0));
dla (int i = 0; i < 5; i++)
Cout << (rand() % 10001) / 10000.0 << " ";
powrót 0;

Wyjście

Generowanie liczb losowych w danym zakresie - C++

Łatwo jest Wygeneruj liczby losowe a określony zakres w c++. Aby to zrobić, programista musi mieć pomysłowe zrozumienie tego, jak losowe liczby Można tworzyć i to, co każda biblioteka, funkcja i parametr mogą wnieść do całego procesu.

W C ++, skraj() Funkcja i podstawowa matematyka może być użyta do wytworzenia losowej liczby całkowitej w określonym zakresie. Przykład kodu, który produkuje losowy Tutaj podano liczbę całkowitą między 0 a 99:

#włączać
#włączać
#włączać
za pomocą przestrzeni nazw Std;
int main ()
SRAND (czas (null));
int num = rand () % 100;
Cout << "Random number: " << num << endl;
powrót 0;

Obecny czas jest używany do zaszczepienia Generator liczb losowych w powyższym kodzie, który pomaga zapewnić wygenerowane losowe liczby są różne za każdym razem, gdy program jest wykonywany. Funkcja Rand ()% 100 zajmuje resztę wyniku skraj() i mnoży go przez 100, aby uzyskać losową liczbę całkowitą między 0 a 99.

Wyjście

Wniosek

Użytkownicy C ++ mogą generować liczby losowe w pewnym zakresie przy użyciu dwóch prostych metod. Jeden używa skraj() który generuje liczby losowe w pewnym zakresie. Jednak generuje podobną liczbę za każdym razem, gdy wykonujesz kod. SRAND () Metoda jest używana do wyświetlania zakresu różnych losowych liczb całkowitych.