Udostępnij za pośrednictwem


Funkcja Rand i RandBetween

Dotyczy: Aplikacje kanwy Przepływy pulpitu Aplikacje oparte na modelu Interfejs Power Pages Power Platform wiersza polecenia aplikacji opartych na modelu

Zwraca liczbę pseudolosową.

Popis

Funkcja Rand zwraca liczbę pseudolosową większą lub równą 0 i mniejszą od 1. Na przykład Rand() może zwrócić 0.43147 i może zwrócić 0, ale nie 1.

Funkcja RandBetween zwraca losową liczbę całkowitą (liczbę całkowitą bez części dziesiętnej) mniejszą od dwóch liczb. Na przykład w RandBetween( 1, 3 ) może zwrócić 1, 2 lub 3.

Funkcje nietrwałe

Rand i RandBetween są funkcjami ulotnymi. Każde wywołanie funkcji zwraca inną wartość.

Funkcja nietrwała używana w formule przepływu danych zwróci inną wartość tylko wtedy, gdy formuła, w której ta funkcja się znajduje, zostanie obliczona ponownie. Jeśli nic innego się nie zmieni, funkcja będzie mieć taką samą wartość podczas wykonywania aplikacji.

Na przykład kontrolka etykiety z tekstem Label1.Text = Rand() nie ulegnie zmianie, gdy aplikacja będzie aktywna. Tylko zamknięcie i ponowne otwarcie aplikacji spowoduje zwrócenie nowej wartości.

Funkcja zostanie obliczona ponownie, jeśli jest częścią formuły, w której zmienił się inny element. Jeśli na przykład zmienimy nasz przykład tak, aby uwzględniał kontrolkę slider z tekstem Label1.Text = Slider1.Value + Rand(), nowa liczba będzie losowo generowana za każdym razem, gdy wartość kontrolki Slider zmieni się, a właściwość tekstu etykiety będzie ponownie obliczana. Zobacz ten przykład poniżej.

W przypadku użycia w formule zachowania funkcja Rand i RandBetween będzie obliczana zawsze, gdy będzie obliczana wartość formuły zachowania. Zobacz przykład poniżej.

Składnia

Rand()

RandBetween( Dół, Góra )

  • Na dole - Wymagane. Najmniejsza liczba całkowita, jaką może zwrócić funkcja.
  • Góra - Wymagane. Największa liczba całkowita, jaką może zwrócić funkcja. Musi być równy lub większy niż Dolne.

Przykłady

Podstawowy sposób użycia

Formuła Opis Result
Rand() Zwraca liczbę pseudolosową większą lub równą 0 i mniejszą od 1. Różnią się w poszczególnych ocenach, na 0,874252.
Rand() * 100 Na podstawie poprzedniego przykładu użyto kedytowania w celu rozszerzenia zakresu do większej lub równej 0 i mniejszej niż 100. Różnią się w poszczególnych ocenach, na 78,42521.
Int( Rand() * 100 ) Opierając się na poprzednim przykładzie, używa funkcji Int do usunięcia części dziesiętnej, co daje w wyniku liczbę całkowitą większą lub równą 0 i mniejszą niż 100 Różnią się w poszczególnych ocenach, na 84.
RandPomiędzy( 0, 99 ) Korzystając z poprzedniego przykładu, wykonuje tę samą operację przy użyciu funkcji RandBetween Różnią się w poszczególnych ocenach, na 21.
RandBetween( -1, 1 ) Zwraca pseudolosową liczbę z zakresu od -1 do 1 włącznie: -1, 0 lub 1. Różnią się w poszczególnych ocenach, na -1.

Wyświetlanie innej liczby losowej w przypadku wprowadzania zmian przez użytkownika z Rand

  1. Dodaj kontrolkę Slider i zmień jej nazwę na Slider1, jeśli ma inną nazwę.

  2. Dodaj kontrolkę Label i ustaw jej właściwość Text na następującą formułę:

    Suwak1.Wartość + Rand()

    Etykieta zawiera liczbę 50 (wartość domyślną suwaka) i losową wartość dziesiętną:

    Ekran przedstawiający kontrolkę etykiety z liczbą 50,741.

  3. Trzymając naciśnięty klawisz Alt, zmień wartość suwaka.

    Przy każdej zmianie wartości suwaka część dziesiętna etykiety będzie zawierać inną liczbę losową:

    Cztery ekrany przedstawiające kontrolkę etykiety z czterema różnymi losowymi wartościami dziesiętnymi dla każdego z czterech różnych ustawień suwaka: 70,899, 84,667, 90,134, 99,690.

Tworzenie tabeli liczb losowych przy użyciu funkcji RandBetween

  1. Dodaj kontrolkę Button i ustaw jej właściwość OnSelect na następującą formułę:

    ClearCollect( LiczbyLosowe, Dla Wszystkich( Sekwencja( 100 ), RandBetween( 1, 20 ) ))

    Ta formuła tworzy jednokolumnową tabelę, która jest używana do iteracji 100 razy, co daje 100 losowych liczb.

  2. Dodaj Data table, ustaw jej właściwość Items na RandomNumbers i wyświetl pole Wartość.

    źródło danych wyboru kolekcji RandomNumbers.

  3. Trzymając naciśnięty klawisz Alt, wybierz przycisk przez kliknięcie lub dotknięcie.

    W tabeli danych jest liczba losowa 1000 z liczb od 1 do 20:

    Tabela danych z 10000 losowymi liczbami.

  4. Wybierz przycisk ponownie, aby wyświetlić inną listę liczb losowych:

    Ten sam ekran zawiera tabelę danych z nowym zestawem liczb losowych.

Aby wygenerować pojedynczą liczbę losową zamiast tabeli, użyj Set( RandomNumber, Rand() ) lub Set( RandNumber, RandBetween( 1, 20 ) ).