Kopīgot, izmantojot


Funkcijas Rand un RandBetween

Attiecas uz: Audekla programmām Darbvirsmas plūsmas Modeļa vadītas programmas Power Pages Power Platform CLI

Atgriež pseido-nejaušu skaitli.

Apraksts

Rand funkcija atgriež pseido-nejaušu skaitli, kas ir lielāks vai vienāds ar nulli un mazāks par 1. Piemēram, Rand() var atgriezt 0.43147 un 0, bet ne 1.

Kad RandBetween funkcija atgriež pseido-randomizētu veselo skaitli (vesels skaitlis bez cipariem aiz komata), kas ir starp diviem iekļautiem skaitļiem. Piemēram, RandBetween( 1,3 ) var atgriezt 1, 2 vai 3.

Gaistošas funkcijas

Rand un RandBetween ir gaistoša funkcija. Katru reizi, kad funkcija tiek novērtēta, tā atgriež citu vērtību.

Izmantojot datu plūsmas formulu, gaistošā funkcija atgriezīs citu vērtību tikai tad, ja formulu, kurā tā tiek parādīta, tiek novērtēta atkārtoti. Ja formulā nekas cits nemainās, tai būs tāda pati vērtība visā programmas izpildes laikā.

Piemēram, etiķetes vadīkla ar Label1.Text = Rand() nemainīsies, kamēr programma būs aktīva. Jauna vērtība radīsies, vienīgi aizverot un no jauna atverot programmu.

Šī funkcija tiks atkārtoti novērtēta, ja tā ir daļa no formulas, kurā ir mainījies kas cits. Piemēram, ja mēs mainām savu piemēru, lai tas ietvertu slīdņa vadīklu ar Label1.Text = Slider1.Value + Rand(), jauns nejaušs skaitlis tiek ģenerēts katru reizi mainot slīdņa vadīklas vērtību, un tiek pārvērtēts etiķetes teksta rekvizīts. Skatiet šo piemēru zemāk.

Izmantojot uzvedības formulā, Rand un RandBetween tiks novērtēta katru reizi, kad tiek novērtēta uzvedības formula. Skatiet šo piemēru zemāk.

Sintakse

Rands()

RandBetween(Apakša,Augšā )

  • Apakšā - Nepieciešams. Mazākais veselais skaitlis, ko funkcija var atgriezt.
  • Top - Obligāts. Lielākais veselais skaitlis, ko funkcija var atgriezt. Jābūt lielākai par vai vienādai ar Augšējā.

Piemēri

Pamata lietojums

Formula Apraksts Rezultāts
Rands() Atgriež pseido-nejaušu skaitli, kas ir lielāks vai vienāds ar nulli un mazāks par 1. Atšķiras atkarībā no katra novērtējuma, piemēram 0.874252.
Rands() * 100 Pamatojoties uz iepriekšējo piemēru, tiek izmantota kadrācija, lai paplašinātu diapazonu līdz lielākai vai vienādai ar 0 un mazākai par 100. Atšķiras atkarībā no katra novērtējuma, piemēram 78.42521.
Int( Rand() * 100 ) Pamatojoties uz iepriekšējo piemēru, decimāldaļskaitļa noņemšanai tiek izmantota funkcija Int, kā rezultātā vesels skaitlis ir lielāks par vai vienāds ar 0 un mazāks par 100 Atšķiras atkarībā no katra novērtējuma, piemēram 84.
RandBetween( 0, 99 ) Pamatojoties uz iepriekšējo piemēru, veic tādu pašu operāciju, izmantojot RandBetween funkciju Atšķiras atkarībā no katra novērtējuma, piemēram 21.
RandBetween( -1, 1 ) Atgriež nejaušu kadrizācijas skaitli, kas ir no -1 līdz 1 iekļaujošam skaitlim: -1, 0 vai 1. Atšķiras atkarībā no katra novērtējuma, piemēram -1.

Rāda citu nejaušu skaitli, mainoties lietotāja ievadei ar Rand

  1. Pievienojiet Slider vadīklu un pārdēvējiet to par Slider1, ja tai ir cits nosaukums.

  2. Pievienojiet vadīklu Label un iestatiet tās rekvizītu Teksts uz šo formulu:

    Slīdnis1.Vērtība + Rands()

    Etiķetē ir redzams 50 (noklusējuma vērtība slīdnim), kā arī nejauša decimāldaļa:

    Ekrāns, kurā redzama etiķetes vadīkla ar 50,741.

  3. Turot nospiestu Alt taustiņu, mainiet slīdņa vērtību.

    Katru reizi, kad maināt slīdņa vērtību, etiķetes decimāldaļa rāda atšķirīgu nejaušu skaitli:

    Četri ekrāni, kas rāda etiķetes vadīklu ar četrām atšķirīgām nejaušām decimālvērtībām katram no četriem atšķirīgiem slīdņa iestatījumiem 70,899, 84,667, 90,134, 99,690.

Nejaušu skaitļu tabulas izveide ar RandBetween

  1. Pievienojiet vadīklu Button un iestatiet tās rekvizītu OnSelect uz tālāk norādīto formulu.

    ClearCollect( RandomNumbers, ForAll( Sequence( 100 ), RandBetween( 1, 20 ) ))

    Šī formula izveido vienas kolonnas tabulu, kas tiek izmantota, lai atkārtotu 100 reižu, rezultējoties 100 nejaušos skaitļos.

  2. Pievienojiet Data table, iestatiet tās rekvizītu ElementuRandomNumbers un parādiet lauku Vērtība.

    Datu avots RandomNumbers kolekcijas atlasi.

  3. Turot nospiestu Alttaustiņu, atlasiet pogu, noklikšķinot uz tās vai tai pieskaroties.

    Datu tabulā ir parādīti 100 simti nejaušu skaitļu no 1 līdz 20:

    Datu tabula ar 100 simtiem nejaušu skaitļu.

  4. Atlasiet vēlreiz pogu, lai rādītu atšķirīgu nejaušu skaitļu sarakstu:

    Tas pats ekrāns, kurā redzama datu tabula ar jaunu nejaušu skaitļu kopu.

Lai ģenerētu vienu nejaušu skaitli, nevis tabulu, izmantojiet Set( RandomNumber, Rand() ) vai Set( RandNumber, RandBetween( 1, 20 ) ).