• Domingo 22 de Diciembre de 2024, 03:31

Autor Tema:  Necesito El Codigo De Un Generador De Nºs De 0 A N  (Leído 2766 veces)

PeterM

  • Nuevo Miembro
  • *
  • Mensajes: 23
    • Ver Perfil
Necesito El Codigo De Un Generador De Nºs De 0 A N
« en: Miércoles 2 de Noviembre de 2005, 14:15 »
0
Hola. Necesito hacer un trabajo sobre un generador de números desde 0 a N (N se lo doy yo) y por más que busco en la red no encuentro ni un solo código. Un ejemplo es el algoritmo de Tausworthe, pero este lo ha dao el profesor y va a ser q no vale. Me hariais un gran favor facilitandome uno. Thank you very much.  :comp:
return(0);

}//Fin del mensaje

Super_G

  • Miembro MUY activo
  • ***
  • Mensajes: 375
    • Ver Perfil
Re: Necesito El Codigo De Un Generador De Nºs De 0 A N
« Respuesta #1 en: Domingo 6 de Noviembre de 2005, 19:00 »
0
¿es un contador?

PeterM

  • Nuevo Miembro
  • *
  • Mensajes: 23
    • Ver Perfil
Re: Necesito El Codigo De Un Generador De Nºs De 0 A N
« Respuesta #2 en: Lunes 7 de Noviembre de 2005, 10:45 »
0
No es un contador. He estado mirando los otros ejemplos que hay en el foro: de sumar uno hasta pulsar una tecla xo eso no creo q m valga. Lo q yo pido,creo, es un algoritmo generador ya hexo ya que el q se me ha facilitado a mi tiene autor conocido.

Algoritmo de Tausworthe.
Pasos:

1. Se toma una semilla inicial, que llamaremos seed, con una longitud de 8 bits. Por ejemplo: seed = 10111001

2. Se desplaza seed tres bits a la derecha. El resultado lo guardamos en
seed_desplazamiento1, con lo cual tenemos que: seed_desplazamiento1 = 00010111

3. Se hace la operación: seed2 = seed_desplazamiento1 XOR seed = 10101110

4. Se desplaza seed2 cinco bits a la izquierda. El resultado lo guardamos en
seed_desplazamiento2, con lo cual tenemos que: seed_desplazamiento2 = 11000000

5. Se hace la operación: seed_final = seed_desplazamiento2 XOR seed2 = 01101110

6. Se repite la secuencia de pasos 1-5 cien veces mediante un bucle, tomando como semilla inicial (seed) en cada iteración el valor de seed_final en la iteración anterior. El último valor que se obtenga para seed_final es nuestro primer número aleatorio.

7. Cuando se vaya a calcular el siguiente número aleatorio hay que actualizar la semilla.Para ello habrá que hacer: seed = seed_final

Esta forma de proceder genera números aleatorios entre 0 y 255 (8 bits)
return(0);

}//Fin del mensaje

Alpha_

  • Miembro activo
  • **
  • Mensajes: 72
    • Ver Perfil
Re: Necesito El Codigo De Un Generador De Nºs De 0 A N
« Respuesta #3 en: Lunes 7 de Noviembre de 2005, 20:22 »
0
Hmmm bueno, si lo que necesitás es un generador de números pseudo-aleatorios, te presto un algoritmo fácil que suelo usar:

-El usuario introduce N. Mientras lo introduce, nosotros contamos el tiempo que tarda en hacerlo (por ejemplo, +1 en la iteración mientras está presionada la tecla).

-Luego, obtengo los milisegundos de la hora actual.

-Efectúo un XOR de ambos valores.

-Y a ese número, le aplico MOD N para obtener el deseado.

No lo he probado mucho, pero suele ser bastante aleatorio.
Alpha
http]

PeterM

  • Nuevo Miembro
  • *
  • Mensajes: 23
    • Ver Perfil
Re: Necesito El Codigo De Un Generador De Nºs De 0 A N
« Respuesta #4 en: Viernes 11 de Noviembre de 2005, 12:43 »
0
Muxas gracias, lo probaré. De todos modos si alguien sabe de alguno otro pseudo-algoritmo se siguen aceptando propuestas.  :kicking:
return(0);

}//Fin del mensaje