martes, 24 de septiembre de 2019

NUMEROS ALEATORIOS

¿QUE SON LOS NÚMEROS ALEATORIOS?
es un resultado de una combinación variable al azar especificada por una función de distribución. Cuando no se especifica ninguna distribución, se presupone que se utiliza la distribución uniforme continua en el intervalo (0,1).
En los ordenadores personales es fácil simular la generación de números aleatorios, mediante mecanismos de generación de números pseudoaleatorios, que, sin ser aleatorios lo aparentan.
Los números pseudo-aleatorios aparentan ser aleatorios porque solo puede medirse la equiprobabilidad de un número aleatorio, mientras que su impredecibilidad es inmensurable.

¿COMO PODEMOS GENERAR NÚMEROS ALEATORIOS EN LENGUAJE C?
La generación de números aleatorios adquiere gran relevancia para un programador, pudiendo usarse para distintas tareas de las que vamos a citar algunas, aunque hay tantas posibilidades que resultan prácticamente infinitas. Es algo muy frecuente, cuando ya dominas todo eso de pedir y almacenar datos, ahora tu profesor te pedirá que tus programas generen números aleatorios para automatizar el proceso de llenar arreglos y todo eso.

  • Así que lo primero que tenemos que hacer es incluir la librería:
#include <stdlib.h>

  • Necesitamos esta libreria para usar la función time()

  1. #include <time.h>

  • Luego inicializar los números aleatorios incluyendo esto:

  1. srand(time(NULL));

  • Luego guardar el número aleatorio en alguna parte:

  1. num = rand();
"Para ajustar el rango de número aleatorios podemos hacer varias cosas."

  • - Número aleatorios entre 0 y 50:
  num=rand()%51;

  • - Número aleatorios entre 1 y 100:
  num=1+rand()%(101-1);

  • - Número aleatorios entre 250 y 420:
  num=250+rand()%(421-250);

  • De forma general es:
variable = limite_inferior + rand() % (limite_superior +1 - limite_inferior) ;

Así que un programa que muestre 10 números aleatorios entre 1 y 10 quedaría así:



#include <stdlib.h>
#include <time.h>
#include<iostream>
using namespace std;
int main()
{
int num, c;
srand(time(NULL));
for(c = 1; c <= 10; c++)
{
num = 1 + rand() % (11 - 1);
cout << num<< " ";
}
return 0;
}

No hay comentarios.:

Publicar un comentario