Como generar un número aleatorio en PseInt

Hola a todos, hoy os voy a explicar como podemos generar un número aleatorio en PseInt.

Generar números aleatorios en PseInt es bastante sencillo, ya que tenemos una función que podemos utilizar para este propósito.

Según la documentación oficial de PseInt:

AZAR(X)   Entero aleatorio en el rango [0;x-1]

Que quiere decir que si hacemos AZAR(20), generará un número entre 0 y 19. El problema que tenemos es que si queremos generar un número entre 10 y 20, no podríamos hacerlo con esta función.

La forma sería generar números entre 0 y el máximo + 1 (para incluir el mismo) y salir cuando el numero este entre esos dos números.

[code]

Proceso testNumeroAzar

definir numeroAzar, minimo, maximo como numero;
numeroAzar <- 0;
minimo <- 10;
maximo <- 20;

Repetir
numeroAzar <- AZAR(maximo+1);
Hasta Que numeroAzar >= minimo Y numeroAzar<=maximo

FinProceso

[/code]

Este es el resultado:

Podéis pulsar en reiniciar para ver que genera diferentes valores.

También lo podemos hacer en forma de subproceso:

[code]

Proceso testNumeroAzar

definir numeroAzar, minimo, maximo como numero;
numeroAzar <- 0;

minimo <- 10;
maximo <- 20;

numeroAzar <- numeroAleatorioEntre(minimo, maximo) * (-1) ;

Escribir «El numero aleatorio generado es «, numeroAzar ;

FinProceso
//Genera un numero aleatorio entre el minimo y máximo incluidos
SubProceso numeroAzar <- numeroAleatorioEntre(minimo, maximo)
definir numeroAzar como numero;
numeroAzar <- 0;

Repetir

numeroAzar <- AZAR(maximo+1);

Hasta Que numeroAzar >= minimo Y numeroAzar<=maximo

FinSubProceso

FinSubProceso

[/code]

En principio, no podemos generar números aleatorios negativos, pero podemos generar un número como hemos visto y lo que obtengamos lo multiplicamos por -1 para hacerlo negativo.

[code] Proceso testNumeroAzar

definir numeroAzar, minimo, maximo como numero;
numeroAzar <- 0;

minimo <- 10;
maximo <- 20;

numeroAzar <- numeroAleatorioEntre(minimo, maximo) * (-1) ;

Escribir «El numero aleatorio generado es «, numeroAzar ;

FinProceso

//Genera un numero aleatorio entre el minimo y máximo incluidos
SubProceso numeroAzar <- numeroAleatorioEntre(minimo, maximo)
definir numeroAzar como numero;
numeroAzar <- 0;

Repetir

numeroAzar <- AZAR(maximo+1);

Hasta Que numeroAzar >= minimo Y numeroAzar<=maximo

FinSubProceso
[/code]

Recordar que tenemos más subprocesos útiles en nuestra biblioteca en github.

Y no te olvides que tenemos un curso en udemy de PseInt.

Curso iniciación pseudocodigo con Pseint

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


Warning: Trying to access array offset on value of type null in /home2/discodur/public_html/discoduroderoer/wp-content/themes/disto/single.php on line 539