banner aleatorio en JSP

Manuel
08 de Febrero del 2005
Hola,

me gustaría cargar 2 banner aleatoriamente en una misma página cada vez que se cargue. Necesito un poco de ayuda ya que soy bastante novato.

Los banners en cuestion son dos .swf y lo quiero cargar en una jsp.

Muchas gracias anticipadas por vuestra colaboración.

Manuel

Ken
08 de Febrero del 2005
Hay dos enfoques clásicos para este problema:

1) Números aleatorios. Puedes generar un número (pseudo)aleatorio con Math.random(). Este método te devuelve un double entre 0.0 y 1.0 (límite abierto). Esto significa que si quieres generar un número aleatorio entre 1 y 10 debes hacer

double aleat = Math.random();
aleat = aleat*10 + 1;
int numero = Math.round(aleat);

(Seguro que hay rutinas mucho más eficientes, probablemente alguien lo comentará).

2) Elegir entre dos es más fácil:

Como cuando sorteaban los equipos en el patio del colegio: PARES o NONES.

cuando tenemos que elegir entre dos, es mucho más fácil. El truco es coger el número de segundos que pasan de la Fecha Estándar de Inicio (1 de Enero de 1970) según el reloj del sistema, y si es par hacemos una cosa y si es impar hacemos otra:

long segundos = System.currentTimeMillis();
if(segundos % 2 == 0)
{
//Numero par, hacemos algo
}
else
{
// Numero impar, hacemos otra cosa.
}

En concreto con tu problema, quizás podrías asignar a una variable de tipo String el nombre de un SWF o de otro según sea par ó impar, y luego poner la referencia a esa cadena como nombre del fichero SWF del OBJECT.

Un saludo,

Ken

Manuel
08 de Febrero del 2005
muchas gracias, lo he probado y funciona perfectamente.