Funkce Rand a RandBetween
Platí pro: aplikace na plátně toky na počítači modelem řízené aplikace Power Pages Power Platform CLI
Vrátí pseudonáhodné číslo.
Description
Funkce Rand vrátí pseudonáhodné číslo, které je větší než nebo rovno 0 a menší než 1. Například Rand() může vrátit 0,43147 anebo také 0, ale ne 1.
Funkce RandBetween Funkce vrací pseudonáhodné celé číslo (celé číslo bez desetinné části), které leží mezi dvěma čísly (včetně nich). Například RandBetween (1, 3) může vrátit 1, 2 nebo 3.
Nestálé funkce
Rand a RandBetween jsou volatilní funkce. Pokaždé, když se tato funkce vyhodnotí, vrátí jinou hodnotu.
Když nestálou funkci použijete ve vzorci toku dat, vrátí jinou hodnotu pouze v případě, že se tento vzorec znovu vyhodnotí. Pokud se ve vzorci nic jiného nemění, bude mít funkce po celou dobu spuštění aplikace stejnou hodnotu.
Například ovládací prvek Popisek s funkcí Label1.Text = Rand() se nezmění, když je aplikace aktivní. Nová hodnota se objeví, pouze pokud aplikaci zavřete a znovu ji otevřete.
Pokud je funkce součástí vzorce, ve kterém se změnilo ještě něco jiného, vyhodnotí se znovu. Například když náš vzorec změníme tak, aby obsahoval ovládací prvek Slider se vzorcem Label1.Text = Slider1.Value + Rand(), vygeneruje se nové náhodné číslo pokaždé, když se hodnota Posuvníku změní, a vlastnost Text ovládacího prvku Label se znovu vyhodnotí. Níže najdete příklad.
Když se funkce Rand nebo RandBetween použije ve vzorci chování, vyhodnotí se pokaždé zároveň se vzorcem chování. Níže najdete příklad.
Syntaxe
Rand()
RandBetween( Spodní, Nahoře )
- Dolní – Povinné. Nejmenší celé číslo, které může funkce vrátit.
- Nahoře – Povinné. Největší celé číslo, které může funkce vrátit. Musí být větší nebo rovná hodnotě Dolní.
Příklady
Základní použití
Vzorec | Popis | Výsledek |
---|---|---|
Rand() | Vrátí pseudonáhodné číslo větší nebo rovné 0 a menší než 1. | Mění se s každým vyhodnocením, například 0,874252. |
Rand() * 100 | Na základě předchozího příkladu používá násobení k rozšíření rozsahu na hodnotu větší nebo rovnou 0 a menší než 100. | Mění se s každým vyhodnocením, například 78,42521. |
Int( Rand() * 100) | V návaznosti na předchozí příklad používá funkci Int k odstranění desetinné části, výsledkem je celé číslo větší nebo rovné 0 a menší než 100 | Mění se s každým vyhodnocením, například 84. |
RandBetween ( 0, 99 ) | Na základě předchozího příkladu provede stejnou operaci pomocí funkce RandBetween | Mění se s každým vyhodnocením, například 21. |
RandBetween (-1, 1) | Vrátí pseudonáhodné číslo, které je mezi -1 a 1 včetně: -1, 0 nebo 1. | Mění se s každým vyhodnocením, například -1. |
Zobrazení jiného náhodného čísla při změně uživatelského vstupu pomocí funkce Rand
Přidejte ovládací prvek Slider, a pokud bude mít jiný název, přejmenujte ho na Slider1.
Přidejte ovládací prvek Label a jeho vlastnost Text nastavte na tento vzorec:
Posuvník1.Hodnota + Rand()
Popisek zobrazí hodnotu 50 (výchozí hodnota posuvníku) plus náhodné desetinné číslo:
Podržte stisknutou klávesu Alt a změňte hodnotu Posuvníku.
Pokaždé, když změníte hodnotu posuvníku, zobrazí se za desetinnou čárkou popisku jiné náhodné číslo:
Vytvoření tabulky náhodných čísel pomocí funkce RandBetween
Přidejte ovládací prvek Button a nastavte jeho vlastnost OnSelect na tento vzorec:
ClearCollect( RandomNumbers, ForAll( Sequence( 100 ), RandBetween( 1, 20) ))
Tento vzorec vytvoří jednosloupcovou tabulku, která se 100krát iteruje a výsledkem bude 100 náhodných čísel.
Přidejte Data table, nastavte její vlastnost Items na RandomNumbers a zobrazte pole Value.
Podržte stisknutou klávesu Alt a kliknutím nebo klepnutím vyberte tlačítko.
Tabulka dat ukazuje 100 náhodných čísel v rozmezí 1 až 20:
Pokud chcete zobrazit jiný seznam náhodných čísel, vyberte tlačítko znovu:
Chcete-li místo tabulky vygenerovat jediné náhodné číslo, použijte Set( RandomNumber, Rand() ) nebo Set( RandNumber, RandBetween( 1, 20 ) ).