Foros del Web » Programando para Internet » Javascript »

script que genera numeros al azar

Estas en el tema de script que genera numeros al azar en el foro de Javascript en Foros del Web. bien, saludos para todos, de nuevo con otra tonteria.....veran consegui un script que genera cuatro numeros al azar cada vez que se carga o regenera ...
  #1 (permalink)  
Antiguo 09/09/2002, 20:21
Avatar de mamagallo  
Fecha de Ingreso: marzo-2002
Ubicación: Caracas, Venezuela
Mensajes: 210
Antigüedad: 22 años, 1 mes
Puntos: 0
script que genera numeros al azar

bien, saludos para todos, de nuevo con otra tonteria.....veran consegui un script que genera cuatro numeros al azar cada vez que se carga o regenera la pagina donde se coloca, el asunto es que quiero que estos números se muestren dentro de una tabla de cuatro celdas y que en vez de generarse al azar cada vez que se regenera la pagina lo haga diariamente, en otras palabras: cuando entre el usuario a la pagina este generaria los números y si el usuario recarga la pagina o sale de ella y regresa, los números no cambien por realizarse esa operación el mismo dia, creo que se podria hacer por medio de una cokie, pero no se como...
alguien sabe como podria hacer?
a continuación el script en cuetión:
Código:
numb = new Array(4)

var Different;
for (var i = 0; i < 4; i++) {
  Different = false;
  while (Different == false) {
    Different = true;
    numb[I] = Math.floor(Math.random() * 50) + 1;
    //check it is different
    for (j = 0; j < 4; j++) {
      if ((numb == numb[j]) && (i != j)) {
        Different = false;
      }
    }
  }
}

document.write('<center><font color=000080 size=+3>' + numb[0] + ' ' + '<font color=993300 size=+3>' + numb[1] + ' ' + '<font color=black size=+3>' + numb[2] + ' ' + '<font color=green size=+3>' + numb[3] + ' ' + '<font color=red size=+3>' + '<//font></center>')

    


un hombre es tan grande como el compromiso que se le presenta
  #2 (permalink)  
Antiguo 10/09/2002, 15:23
Avatar de Beakdan  
Fecha de Ingreso: diciembre-2001
Ubicación: Monterrey, Nuevo León
Mensajes: 433
Antigüedad: 22 años, 4 meses
Puntos: 7
Re: script que genera numeros al azar

Mamagallo:
Con unas ligeras modificaciones a tu script, le incluí funciones para escribir la cookie, leerla y hacerla caducar al día siguiente. A continuación el código:
Código:
<script LANGUAGE=JAVASCRIPT>
<!--
function generaNum(){
	numc = new Array(4);
	var Different;
	for (var i = 0; i < 4; i++) {
		Different = false;
		while (Different == false) {
			Different = true;
			numc[I] = Math.floor(Math.random() * 50) + 1;
			//check it is different
			for (j = 0; j < 4; j++) {
				if ((numc == numc[j]) && (i != j)){
					Different = false;
				}
			}
		}
	}
	strNum = numc.join();
	return strNum;
}
//función que devuelve la fecha del día siguiente con la hora a las 0000.
//Esto es para hacer caducar los datos numéricos obtenidos con el cambio
//del día. El formato devuelto es adecuado para establecer el parámetro expires de la cokie.
function fecha(){
	var dias = new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
	var meses = new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
	var hoy = new Date();
	var diaSig = new Date();
	diaSig.setTime(hoy.getTime() + 24*60*60*1000);
	strDate = dias[diaSig.getDay()] + ", " + diaSig.getDate() + "-" + meses[diaSig.getMonth()] + "-" + diaSig.getFullYear() + " 00:00:00 GMT";
	return strDate;
}

// Función para definir cookie
function defineCookie(nombre, contenido, caduca){
	encontrar = document.cookie.indexOf(nombre);
	if (encontrar == -1){
		document.cookie = nombre + "=" + escape(contenido) + ";" + "expires = " + caduca + "; path=/;";
	}
}
  

continúa...
  #3 (permalink)  
Antiguo 10/09/2002, 15:26
Avatar de Beakdan  
Fecha de Ingreso: diciembre-2001
Ubicación: Monterrey, Nuevo León
Mensajes: 433
Antigüedad: 22 años, 4 meses
Puntos: 7
Re: script que genera numeros al azar

Código:
//Función para obtener el contenido de una Cookie
function obtieneCookie(nombre){
	var nombreCookie = nombre + "=";
	var dc = document.cookie;
	if (dc.length > 0){
		inicio = dc.indexOf(nombreCookie);
			if (inicio != -1){
				inicio += nombreCookie.length;
				fin = dc.indexOf(";", inicio);
				if (fin == -1) fin = dc.length;
					return unescape(dc.substring(inicio, fin));
			}
	}
	return null;
}

//Para escribir la cookie con los datos que arriba generamos.
defineCookie('numeros', generaNum(), fecha());

//para obtener los datos
var datosCookie = obtieneCookie('numeros');
numb = datosCookie.split(",")

document.write('<center><font color=000080 size=+3>' + numb[0] + ' ' +
'<font color=993300 size=+3>' + numb[1] + ' ' +
'<font color=black size=+3>' + numb[2] + ' ' +
'<font color=green size=+3>' + numb[3] + ' ' +
'<font color=red size=+3>' + '</font></center>')
//-->
</script>
Espero que te sea útil.
Saludos
  #4 (permalink)  
Antiguo 10/09/2002, 15:32
Avatar de Beakdan  
Fecha de Ingreso: diciembre-2001
Ubicación: Monterrey, Nuevo León
Mensajes: 433
Antigüedad: 22 años, 4 meses
Puntos: 7
Re: script que genera numeros al azar

Una línea del código llevaba una "i" dentro de "[]" y el foro lo eliminó... supongo que tu no tendrás problema para reconocerlo, ya que a partir de ese punto el código parece en itálicas:

Different = true;
numc[letra i] = Math.floor(Math.random() * 50) + 1;

Ahora sí, adiós...
  #5 (permalink)  
Antiguo 10/09/2002, 17:50
Avatar de mamagallo  
Fecha de Ingreso: marzo-2002
Ubicación: Caracas, Venezuela
Mensajes: 210
Antigüedad: 22 años, 1 mes
Puntos: 0
Re: script que genera numeros al azar

VAYA!! Gracias Beakdan, exelente haora solo me falta hacer que los numeros que se generen se muestren en una tabla con cuatro celdas, aunque esto no es demasiado importante, solo es por razones decorativas y hacer que los números aparescan enmarcados como en los juegos de las maquinas traganiqueles, pero aun asi realmente no me pudo quejar, nuevamente gracias, voy a probarlo de inmediato a ver ;)

un hombre es tan grande como el compromiso que se le presenta
  #6 (permalink)  
Antiguo 13/09/2002, 17:17
Avatar de mamagallo  
Fecha de Ingreso: marzo-2002
Ubicación: Caracas, Venezuela
Mensajes: 210
Antigüedad: 22 años, 1 mes
Puntos: 0
Re: script que genera numeros al azar

Beakdan, funciono perfecto, nuevamente muchas gracias, ahora vere como hago para que los numeros aparescan en una tabla con cuatro celdas, una para cada par, ;)

un hombre es tan grande como el compromiso que se le presenta
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:05.