Autor Tema: Java generar números aleatorios en un rango entre dos valores ejemplo CU00672B  (Leído 4983 veces)

matru

  • Sin experiencia
  • *
  • Mensajes: 41
    • Ver Perfil
Solución propuesta para el ejercicio CU00672B del curso de programación Java desde cero:

Código: [Seleccionar]
import java.util.Random;
import java.util.Scanner;

public class AdivinaElNumero{

    public static void main(String []args){

        Scanner entrada = new Scanner(System.in);
        Random numRandom = new Random();
        Integer tmp = numRandom.nextInt(100);
        boolean desicion = false;
        int num;
        System.out.println("Se a generado un numero aleatorio entero entre 1 y 100, intente adivinarlo");
        while(desicion == false){

            num = Integer.valueOf(entrada.nextLine());
            if(tmp < num){

                System.out.println("No has acertado: el numero es menor.\nPrueba otra vez");
            }else if(tmp > num){

                System.out.println("No has acertado: el numero es mayor.\nPrueba otra vez");
            }else{

                desicion = true;
                System.out.println("Felicidades, Haz Acertado");
            }

        }
    }
}


« Última modificación: 17 de Marzo 2016, 08:54 por Mario R. Rancel »

Enzo

  • Principiante
  • **
  • APR2.COM
  • Mensajes: 82
    • Ver Perfil
Re:EJERCICIO (CU00672B) Numeros aleatorios
« Respuesta #1 en: 15 de Marzo 2016, 14:39 »
Hola Matru,

Aunque, a priori, el programa parece que funciona bien, según la información del método realmente esta generando un aleatorio entre 0 y 99:
Citar
nextInt(int n) Devuelve un pseudoaleatorio de tipo int comprendido entre cero (incluido) y el valor especificado (excluido).

Seguro que se te ocurre como hacer para que el número este entre el 1 y el 100. ¿Verdad?.

Un Saludo,


matru

  • Sin experiencia
  • *
  • Mensajes: 41
    • Ver Perfil
Re:EJERCICIO (CU00672B) Numeros aleatorios
« Respuesta #2 en: 15 de Marzo 2016, 18:11 »
pienso que si, pero quería la opinión de usted si con estas sentencia controlaría eso?

Integer tmp = (numRandom.nextInt(100)+1);

Enzo

  • Principiante
  • **
  • APR2.COM
  • Mensajes: 82
    • Ver Perfil
Hola Matru,

Perfecto. De esa forma le sumas 1 al número generado y siempre estará en el rango entre 1 y 100.

A por otro,

Y, por favor, no me llames de usted.

Un Saludo,


 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".