Ejercicios Resueltos, Ejemplos, Numeros Aleatorios Clase Random Java
Ejercicios Resueltos, Ejemplos, Numeros Aleatorios Clase Random Java
Ejercicios Resueltos, Ejemplos, Numeros Aleatorios Clase Random Java
APRENDERAPROGRAMAR.COM
EJERCICIOS RESUELTOS.
EJEMPLOS CON NMEROS
ALEATORIOS EN JAVA.
RANDOM NEXTINT,
NEXTDOUBLE, ETC.
(CU00909C)
Seccin: Cursos
Categora: Lenguaje de programacin Java nivel avanzado I
Fecha revisin: 2039
Resumen: Entrega n9 del curso Lenguaje de programacin Java Nivel Avanzado I.
aprenderaprogramar.com, 2006-2039
Solucin:
/* Ejemplo uso clase Random() aprenderaprogramar.com */
import java.util.Random;
public class Programa {
public static void main(String arg[]) {
float a, b, c;
Random rnd = new Random();
a = (rnd.nextFloat() * 10);
b = (rnd.nextFloat() * 10);
c = (rnd.nextFloat() * 10);
System.out.println(a);
System.out.println(b);
System.out.println(c);
}
}
Comentario: la instruccin siguiente (rnd.nextFloat() * 10), se genera un valor de tipo float y dado que
la variables a, b, y c han sido declaradas como float al inicio del programa, los tipos son coherentes.
aprenderaprogramar.com, 2006-2039
EJERCICIO RESUELTO
Crear el cdigo de un programa en el que se declaran tres variables tipo int a, b y c, cuyo valor se
muestra en pantalla y debe estar comprendido entre cero y 100, utilizando el mtodo nextInt de la
clase Random.
Solucin:
System.out.println(a);
System.out.println(b);
System.out.println(c);
}
}
Fjate que el tipo devuelto por el mtodo nextInt es un int, mientras que el tipo devuelto por el mtodo
nextDouble es un double el tipo devuelto por el mtodo nextFloat es un float.
EJERCICIO RESUELTO
Crear el cdigo de un programa que genera tres nmeros enteros aleatorios a, b, c, comprendidos entre
65 y 90, ambos inclusive. Los mostraremos en pantalla.
aprenderaprogramar.com, 2006-2039
Solucin:
/* Ejemplo uso clase Random() aprenderaprogramar.com */
import java.util.Random;
public class Programa {
public static void main(String arg[]) {
int a, b, c;
Random rnd = new Random();
a = (rnd.nextInt(26) + 65);
b = (rnd.nextInt(26) + 65);
c = (rnd.nextInt(26) + 65);
System.out.println(a);
System.out.println(b);
System.out.println(c);
}
}
Comentario: Si quieres puedes usar otra frmula. Puedes escribir con igual resultado, lo siguiente:
a = rnd.nextInt (90 - 65 + 1) + 65;
b = rnd.nextInt (90 - 65 + 1) + 65;
c = rnd.nextInt (90 - 65 + 1) + 65;
EJERCICIO N 1
Crea un programa que elija dos nmeros enteros aleatorios A y B pero no los muestre por pantalla an.
Si los dos nmeros fueran iguales, deber repetirse la eleccin hasta que sean distintos. El programa
preguntar por quin apostamos, A o B (gana el nmero ms alto). Una vez el usuario haya introducido
su apuesta, el programa mostrar el valor de A y B, dir si hemos ganado la apuesta (acertado el
nmero ms alto) o perdido y nos dir cuntas partidas hemos ganado y perdido hasta el momento.
Tras una jugada, nos preguntar si queremos jugar otra vez.
aprenderaprogramar.com, 2006-2039
Ejemplo de ejecucin:
Apuestas por A o por B ? : A
A saca un 9 y B saca un 6 HAS GANADO!!!
Llevas 1 partidas ganadas y 0 partidas perdidas
Quieres probar otra vez ? (S/N) : S
Apuestas por A o por B ? : A
A saca un 1 y B saca un 8 HAS PERDIDO!!!
Llevas 1 partidas ganadas y 1 partidas perdidas
Quieres probar otra vez ? (S/N) : N
Adis
Para comprobar si tu solucin es correcta puedes consultar en los foros aprenderaprogramar.com.
EJERCICIO N 2
Ahora vamos a jugar a la Lotera primitiva. Para ello, se pedir al usuario que introduzca 6 nmeros
enteros comprendidos entre el 1 y el 49 ambos incluidos. No estar permitido repetir nmero. Una vez
elegidos los seis nmeros el programa nos mostrar nuestros 6 nmeros as como la combinacin
ganadora (ordenada de menor a mayor). Esta combinacin constar de 6 nmeros entre 1 y 49 elegidos
al azar por el programa. Finalmente nos dir cuntos aciertos hemos tenido y nos preguntar si
queremos volver a jugar.
Ejemplo de ejecucin:
Elige 6 numeros entre el 1 y el 49.
Elige el numero 1 : 3
Elige el numero 2 : 8
Elige el numero 3 : 14
Elige el numero 4 : 2
Elige el numero 5 : 34
Elige el numero 6 : 38
Numeros Elegidos : 3 8 14 2 34 38
Combinacin ganadora : 6 14 21 27 30 48
Has acertado : 1 nmeros
Quieres probar otra vez ? (S/N) : n
Adis
Para comprobar si tu solucin es correcta puedes consultar en los foros aprenderaprogramar.com.
aprenderaprogramar.com, 2006-2039