Делите путем


Ранд и РандБетwеен функције

Важи за: Цанвас апликације Десктоп флоwс Модел-дривен аппс Power Pages Power Platform ЦЛИ

Враћа псеудослучајни број.

Опис

Функција Rand враћа псеудослучајни број који је већи од или једнак 0 и мањи од 1. На пример, Rand() може да врати 0,43147 и може да врати 0, али не и 1.

Функција RandBetween враћа псеудослучајни цео број (цео број без децималног дела) који се налази између два броја, укључујући и њих. На пример, RandBetween( 1, 3 ) може да врати 1, 2 или 3.

Променљиве функције

Rand и RandBetween су променљиве функције. Сваки пут када се функција оцени, враћа другачију вредност.

Када се користи у формули тока података, променљива функција ће вратити другачију вредност само ако је формула у којој се појављује поново оцењена. Ако се ништа друго не промени у формули, имаће исту вредност током извршавања ваше апликације.

На пример, ознака контроле са Label1.Text = Rand() се неће променити док је апликација активна. Само затварање и поновно отварање апликације ће довести до нове вредности.

Функција ће бити поново оцењена ако је део формуле у којој се нешто друго променило. На пример, ако променимо пример да бисмо укључили контролу клизача са Label1.Text = Slider1.Value + Rand() онда се генерише нови насумичан број сваки пут када се вредност контроле клизача промени и када се поново процени својство текста ознаке. Погледајте пример у наставку.

Када се користи у формули понашања, Rand и RandBetween ће бити оцењени сваки пут када се формула понашања процени. Погледајте пример у наставку.

Синтакса

Rand()

RandBetween( Bottom, Top )

  • Bottom – Обавезно. Најмањи цео број који функција може да врати.
  • Top – Обавезно. Највећи цео број који функција може да врати. Вредност мора да буде већа од или једнака са Bottom.

Примери

Основна употреба

Формула Опис Резултат
Rand() Враћа псеудослучајни број који је већи или једнак 0 и мањи од 1. Варира при сваком израчунавању, на пример 0,874252.
Rand() * 100 Надограђујући претходни пример, користи множење да би проширио опсег на већи или једнак 0 и мањи од 100. Варира при сваком израчунавању, на пример 78,42521.
Int( Rand() * 100 ) У претходном примеру, функција Int се користи за уклањање децималног дела, што резултира целим бројем већим или једнаким 0 и мањим од 100 Варира при сваком израчунавању, на пример 84.
RandBetween( 0, 99 ) Надовезујући се на претходни пример, извршава исту операцију помоћу функције RandBetween Варира при сваком израчунавању, на пример 21.
RandBetween( -1, 1 ) Даје псеудослучајни број који је између -1 и 1, укључујући оба: -1, 0 или 1. Варира при сваком израчунавању, на пример -1.

Прикажите другачији насумичан број како корисник буде уносио промене функцијом Rand

  1. Додајте контролу Клизач и преименујте у Slider1 ако има другачије име.

  2. Додајте контролу Ознака и подесите њено својство Текст на ову формулу:

    Slider1.Value + Rand()

    Ознака показује 50 (подразумевана вредност за клизач) плус насумичан децимални број:

    Екран који приказује контролу ознаке са 50.741.

  3. Док држите притиснут тастер Alt, промените вредност клизача.

    Сваки пут када промените вредност клизача, децимални део ознаке показује другачији случајни број:

    Четири екрана која приказују контролу ознаке са четири различите насумичне децималне вредности за свако од четири различита подешавања клизача 70.899, 84.667, 90.134, 99.690.

Креирајте табелу насумичних бројева помоћу RandBetween

  1. Додајте контролу Button и подесите њено својство OnSelect према овој формули:

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

    Ова формула креира табелу са једном колоном која се користи за итерацију 100 пута, што резултира са 100 насумичних бројева.

  2. Додајте Табела података, поставите њено својство Ставке као Насумични бројеви, а затим прикажите поље Вредност.

    < ДИЦТ__извор података >Дата соурце </ДИЦТ__извор података > избор колекције РандомНумберс.

  3. Док држите тастер Alt, изаберите дугме тако што ћете кликнути на њега или га додирнути.

    Табела података приказује 100 насумичних бројева између 1 и 20:

    Табела података са 1000 насумичних бројева.

  4. Изаберите дугме поново да бисте приказали другачију листу насумичних бројева:

    Исти екран који приказује табелу података са новим скупом насумичних бројева.

Да бисте генерисали један случајни број уместо табеле, користите Set( RandomNumber, Rand() ) или Set( RandNumber, RandBetween( 1, 20 ) ).