Compartir por


Funcións Rand e Rand Entre

Aplícase a: Aplicacións de lenzo Fluxos de escritorio Aplicacións baseadas en modelos Power Pages Power Platform CLI

Devolve un número pseudo-aleatorio.

Descripción

A función Rand devolve un número pseudo-aleatorio maior ou igual a 0 e inferior a 1. Por exemplo, Rand() podería devolver 0.43147 e podería devolver 0 pero non 1.

A función RandBetween devolve un número enteiro pseudoaleatorio (número enteiro sen porción decimal) que está entre dous números, incluídos. Por exemplo, RandBetween( 1, 3 ) pode devolver 1, 2 ou 3.

Funcións volátiles

Rand e RandBetween son unha función volátil. Cada vez que se avalía a función, devólvese un valor diferente.

Cando se usa nunha fórmula de fluxo de datos, unha función volátil só devolverá un valor diferente só se se reevalúa a fórmula na que aparece. Se nada cambia na fórmula, terá o mesmo valor durante toda a execución da súa aplicación.

Por exemplo, un control de etiqueta con Label1.Text = Rand() non cambiará mentres a aplicación estea activa. Só o peche e a reapertura da aplicación darán lugar a un valor novo.

A función reevaluarase se forma parte dunha fórmula na que algo máis cambiou. Por exemplo, se cambiamos o noso exemplo para implicar un control deslizante con Label1.Text = Slider1.Value + Rand(), entón un novo número aleatorio xérase cada vez que cambie o valor do control deslizante e vólvese avaliar a propiedade do texto da etiqueta. Vexa a continuación este exemplo.

Cando se usa nunha fórmula de comportamento, Rand e RandBetween avaliarase cada vez que se avalíe a fórmula de comportamento. Vexa a continuación un exemplo.

Sintaxe

Rand()

RandBetween( Bottom, Top )

  • Bottom - Obrigatorio. Número enteiro máis pequeno que pode devolver a función.
  • Top - Obrigatorio. Número enteiro máis grande que pode devolver a función. Debe ser igual ou superior a Bottom.

Exemplos

Uso básico

Fórmula Descripción Resultado
Rand() Devolve un número pseudo-aleatorio maior ou igual a 0 e inferior a 1. Varía con cada avaliación, por exemplo 0.874252.
Rand() * 100 Partindo do exemplo anterior, utiliza a multiplicación para ampliar o intervalo a maior ou igual a 0 e inferior a 100. Varía con cada avaliación, por exemplo 78.42521.
Int( Rand() * 100 ) Partindo do exemplo anterior, utiliza a función Int para eliminar a parte decimal, dando como resultado un número enteiro maior ou igual a 0 e inferior a 100 Varía con cada avaliación, por exemplo 84.
RandBetween( 0, 99 ) Partindo do exemplo anterior, realiza a mesma operación mediante a función RandBetween Varía con cada avaliación, por exemplo 21.
RandBetween( -1, 1 ) Devolve un número pseudoaleatorio que está entre -1 e 1 incluídos: -1, 0 ou 1. Varía con cada avaliación, por exemplo -1.

Amosar un número aleatorio diferente a medida que cambia a entrada do usuario con Rand

  1. Engada un control deslizante e renoméeo Slider1 se ten un nome diferente.

  2. Engada un control de Etiqueta e configure a súa propiedade de Texto nesta fórmula:

    Slider1.Value + Rand()

    A etiqueta mostra 50 (o valor por defecto do control deslizante) mais un decimal aleatorio:

    Unha pantalla que mostra un control de etiqueta con 50.741.

  3. Mentres mantén premida a tecla Alt, cambia o valor do control deslizante.

    Cada vez que cambia o valor do control deslizante, a parte decimal da etiqueta mostra un número aleatorio diferente:

    Catro pantallas que amosan un control de etiqueta con catro valores decimais aleatorios diferentes para cada unha das catro configuracións de cursor da barra de desprazamento diferentes 70.899, 84.667, 90.134, 99.690.

Crear unha táboa de números aleatorios con RandBetween

  1. Engada un control de Button e axuste a súa propiedade OnSelect nesta fórmula:

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

    Esta fórmula crea unha táboa dunha única columna que se usa para repetir 100 veces, obtendo 100 números aleatorios.

  2. Engada unha Táboa de datos, estableza a súa propiedade Elementos en RandomNumbers e mostre o campo Valor.

    Orixe de datos selección da colección RandomNumbers.

  3. Mantendo premida a tecla Alt, seleccione o botón facendo clic ou tocándoo.

    A táboa de datos mostra 100 cen números aleatorios entre 1 e 20:

    Táboa de datos con 100 cen números aleatorios.

  4. Seleccione de novo o botón para mostrar unha lista diferente de números aleatorios:

    A mesma pantalla que mostra unha táboa de datos cun novo conxunto de números aleatorios.

Para xerar un único número aleatorio no canto dunha táboa, use Set( RandomNumber, Rand() ) ou Set( RandNumber, RandBetween( 1, 20 ) ).