Bendrinti naudojant


Funkcijos Rand ir RandBetween

Taikoma: Drobės programos Darbalaukio srautai Modeliu pagrįstos programos Power Pages Power Platform CLI

Pateikia pseudoatsitiktinį skaičių.

Aprašą

Funkcija Rand pateikia pseudoatsitiktinį skaičių, kuris yra didesnis nei 0 arba jam lygus ir mažesnis nei 1. Pavyzdžiui, Rand() gali grąžinti 0.43147 ir gali pateikti 0 bet ne 1.

RandInimoween funkcija pateikia pseudo atsitiktinius sveikieji skaičiai (sveikasis skaičius be dešimtainės dalies), kuris yra tarp dviejų skaičių, ašrų. Pavyzdžiui, RandBetween( 1, 3 ) gali būti grąžintas 1, 2, ar 3.

Kintamos funkcijos

Randas ir RandBetween yra laki funkcija. Kiekvieną kartą įvertinus funkciją, ji pateikia kitą reikšmę.

Kai naudojama duomenų srauto formulėje, kintama funkcija kitą reikšmę pateiks tik tada, jei formulė, kurioje ji rodoma, bus įvertinta iš naujo. Jei formulėje daugiau niekas nekeičiama, tada jos reikšmė vykdant programą bus ta pati.

Pavyzdžiui, žymos valdiklis, kuriame nurodyta Label1.Text = Rand(), nebus aktyviai programai nepakis. Nauja reikšmė bus gauta tik uždarius ir iš naujo atidarius programą.

Jei funkcija yra įtraukta į formulę, kurioje pakito dar kažkas, ji bus įvertinta iš naujo. Pavyzdžiui, jei savo pavyzdį pakeičiame įtraukdami slankiklo valdiklį su Label1.Text = Slider1.Value + Rand(), tada naujas atsitiktinis skaičius generuojamas kiekvieną kartą, kai pasikeičia slankiklio valdiklio reikšmė ir iš naujo įvertinama žymos teksto ypatybė. Šis pavyzdys pateiktas toliau.

Naudojant elgesio formulę, Rand ir RandBetween bus įvertinta kiekvieną kartą, kai įvertinama veikimo formulė. Toliau pateiktas pavyzdys.

Sintaksė

Rand()

RandBetween( apačia, viršus )

  • apačioje - Būtina. Mažiausias sveikasis skaičius, kurį gali pateikti funkcija.
  • Viršus - Būtina. Didžiausias sveikasis skaičius, kurį gali pateikti funkcija. Reikšmė turi būti didesnė arba lygi apačia.

Pavyzdžiai

Pagrindinis naudojimas

Formulė Aprašą Rezultatas
Rand() Funkcija Rand pateikia pseudoatsitiktinį skaičių, kuris yra didesnis nei 0 arba jam lygus ir mažesnis nei 1. Skiriasi atsižvelgiant į kiekvieną nelogią, pvz 0.874252.
Rand() * 100 Pagal ankstesnį pavyzdį dauginimas naudojamas diapazonui išplėsti iki daugiau arba lygu 0 ir mažiau nei 100. Skiriasi atsižvelgiant į kiekvieną nelogią, pvz 78.42521.
Int( Rand() * 100 ) Pagal ankstesnį pavyzdį, naudoja funkciją Int kad pašalintų dešimtainę dalį, kai sveikojo skaičiaus yra daugiau arba lygu 0 ir mažiau nei 100 Skiriasi atsižvelgiant į kiekvieną nelogią, pvz 84.
RandBetween( 0, 99 ) Pagal ankstesnį pavyzdį tą pačią operaciją atlieka naudodami funkciją RandBetween funkciją Skiriasi atsižvelgiant į kiekvieną nelogią, pvz 21.
RandBetween( -1, 1 ) Grąžina pseudo-atsitiktinį skaičių, kuris yra nuo -1 iki 1 įskaitant: -1, 0, or 1. Skiriasi atsižvelgiant į kiekvieną nelogią, pvz. -1.

Skirtingo atsitiktinio skaičiaus rodymas kintant vartotojo su Rand

  1. Įtraukite slankikliovaldiklį ir pervardykite jį Slider1, jei jis pavadintas kitaip.

  2. Įtraukite žymos valdiklį ir jo ypatybę Text nustatykite kaip šią formulę:

    Slider1.Value + Rand()

    Žymoje rodoma 50 (numatytoji slankiklio reikšmė), plius atsitiktinis dešimtainis skaičius:

    Ekranas, kuriame rodomas žymos valdiklis su reikšme 50,741.

  3. Laikydami nuspaudę klavišą „Alt“, pakeiskite slankiklio reikšmę.

    Kiekvieną kartą, kai pakeičiate slankiklio reikšmę, dešimtainėje žymos dalyje rodomas skirtingas atsitiktinis skaičius:

    Keturi ekranai, kuriuose rodomas žymos valdiklis su keturiomis skirtingomis reikšmėmis kiekvienam iš keturių skirtingų slankiklio parametrų 70,899, 84,667, 90,134, 99,690.

Atsitiktinių skaičių lentelės sukūrimas su RandBetween

  1. Įtraukite Button valdiklį ir nustatykite jo OnSelect ypatybę pagal šią formulę:

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

    Ši formulė sukuria vieno stulpelio lentelę, kartojamą penkis kartus 100 ir taip gaunant 100 atsitiktinius skaičius.

  2. Įtraukite duomenų lentelę, jos ypatybę Items nustatykite kaip RandomNumbers ir parodykite lauką Value.

    Duomenų šaltinis RandomNumbers kolekcijos pasirinkimą.

  3. Laikydami nuspaudę klavišą Alt pasirinkite mygtuką, jį spustelėdami arba bakstelėdami.

    Duomenų lentelėje pateikiami 100 šimtų atsitiktinių skaičių nuo 1 iki 20:

    Duomenų lentelė su 100 šimtų atsitiktinių skaičių.

  4. Norėdami rodyti kitą atsitiktinių skaičių sąrašą, dar kartą pasirinkite mygtuką:

    Tame pačiame ekrane rodoma duomenų lentelė su nauju atsitiktinių skaičių rinkiniu.

Norėdami generuoti vieną atsitiktinį skaičių, o ne lentelę, naudokite Set( RandomNumber, Rand() ) ar Set( RandNumber, RandBetween( 1, 20 ) ).