FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Generación de Números Aleatorios
Buenas con todos los amigos foristas .... Bueno aqui va mi pregunta, quisiera generar o crear numeros aleatorios, pero quisiera hacerlo sin tener la necesidad de usar la funcion Random(), ni Randomize().
Bueno no se si se pueda hacer esto, bueno creo que si, pero no se como es que deberia empezar. No les pido que me digan todo, solo alguna idea de como empezar . Les agradezco de antemano.
__________________
Dark Drakon:: "Ego sum Draco dormiens ... Aut insanit Draco, aut Versus facit..." |
#2
|
||||
|
||||
Una forma de generar números pseudo-aleatorios puede ser la siguiente:
Lo he traducido de un código fuente en C, así que no sé si funciona del todo bien. Posiblemente debas usar algún que otro molde. Por cierto, el rango de los números aleatorios es de 0 a 2^16. |
#3
|
||||
|
||||
Otro algoritmo diferente:
Se utiliza igual que el Random de toda la vida, y en este caso también hay que acordarse de darle un valor inicial a la semilla. Aquí un ejemplo de como usarlo, y una prueba de que tal funciona:
Otra forma de generar números "aleatorios" es utilizar un algoritmo de encriptación, donde cada numero es el anterior encriptado. Utilizando un buen algoritmo, AES, MD5, Serpent, etc ... la secuencia sera tan difícil de descifrar, como lo sera romper el algoritmo. |
#4
|
||||
|
||||
Gracias
Muchas gracias a los 2 por responder ... ahora lo pondre en practica y despues ya vere lo que pasa .
__________________
Dark Drakon:: "Ego sum Draco dormiens ... Aut insanit Draco, aut Versus facit..." |
#5
|
||||
|
||||
Un poco mas...
Quisiera aportar un poco de información al asunto.
He visto el código que muestra Seoane y me he preguntado: ¿No es demasiado procesamiento hacer operaciones de corrimiento de bits? Yo hago empleo de geenradores multiplicativos congrenciales mixtos y multiplicativos... que son los más usados y mejores. Haz una búsqueda en los foros.... he posteado en más de una ocasión sobre esto.. no se si te sirva.. pero con aportar un poco no se pierde nada. Saludos, |
#6
|
||||
|
||||
Cita:
Me gustaría ver tus algoritmos para generar números aleatorios, seguramente con mucha mas base matemática que los mios. Y aunque tengo un poco oxidada esa materia desde que salí de la universidad nunca esta de mas aprender algo. |
#7
|
||||
|
||||
Cita:
Cita:
Que tienen mayos base matemática... no creo. No hubo mucho avance en lo que hace a generación de numeros aletorios. La "técnica" es emplear no uno, sino varios en "cadena" para producir series aún más grandes. Tal es el caso del generador del ARENA, que tiene series del orden de los 10^149 si mas no me equivoco... pasarían 49 años antes de que se repita la secuencia. Si los quieres, están por aqui.... en los foros... ahorita estoy en l trabajo... si logro enontrarme un tiempo te los paso en otra oportunidad. Saludos, |
#8
|
||||
|
||||
Era eso, pues no te preocupes, las operaciones desplazamiento de bit shl y shr se corresponden a una sola instrucción de ensamblador. De echo se utilizan mucho para dividir y multiplicar por potencias de dos de forma rápida. No se como de "lentas" serán pero en ningún caso mas que una operación de multiplicación o división.
|
#9
|
|||
|
|||
Podrías tener tambien numeros aleatorios de la hora al descomponerla y tomar un milisegundo.
Saludos |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Función números aleatorios | Sarola | Oracle | 6 | 17-11-2005 21:26:02 |
Generador de números aleatorios | gontxalo | OOP | 16 | 09-06-2005 21:38:07 |
registros aleatorios | Paulina | Tablas planas | 1 | 03-12-2004 07:53:38 |
Crear una Grid con numeros aleatorios ¿Como le hago? | aragorneuf | Varios | 7 | 24-04-2004 02:29:48 |
numeros aleatorios | emeritos | Varios | 1 | 24-11-2003 14:09:43 |
|