Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: luisdn en 30 de Enero 2017, 20:04

Título: Cómo generar números aleatorios en Java ejemplo ejercicio resuelto CU00672B
Publicado por: luisdn en 30 de Enero 2017, 20:04
Hola a todos. Dejo mi código del siguiente ejercicio CU00672B del curso básico de programación en Java:

Citar
Crea un programa Java que permita “jugar a adivinar un número” como se expone a continuación. El programa debe iniciarse indicando “Se ha generado un número aletatorio entero entre 1 y 100, intente adivinarlo”. El usuario introducirá un número y si el número aleatorio generado por el ordenador es menor deberá indicarse “No has acertado: el número es menor. Prueba otra vez”. Si el usuario introduce un número menor que el número aleatorio deberá indicarse “No has acertado: el número es mayor”. El programa terminará cuando el usuario introduzca el número aleatorio que había escogido el ordenador.


Código AdivinarNumero:

Código: [Seleccionar]
/*Ejercicio cu00672b del curso programar Java desde cero.*/

import java.util.Random;

class AdivinarNumero{
    Random numOculto;
    int num;
    //Constructor que genera un número pseudo aleatorio cada vez que se inicializa un objeto de la clase
    public AdivinarNumero(){
        numOculto = new Random();
        num = numOculto.nextInt(100)+1;//+1 para que sea un número entre 1 y 100.
    }
    //Método para comparar el número que introduce el usuario con el elegido por el programa.
    public int comprobarNumero(int n){
        if(n == num)  return 0;
        else if(n > num) return 1;
        return -1;
    }
       
}


Código TestAdivinarNumero:

Código: [Seleccionar]
/*Ejercicio cu00672b del curso aprender a programar Java desde cero.*/

import java.util.Scanner;

class TestAdivinarNumero{
    public static void main(String args[]){
        AdivinarNumero ob = new AdivinarNumero();
        Scanner entrada = new Scanner(System.in);
        int num, comprobado = 0;

        System.out.println("Se ha generado un numero entre 1 y 100. Intente adivinarlo");
        do{
            System.out.println("Introduzca un número: ");
            num = (int) entrada.nextInt();
            comprobado = ob.comprobarNumero(num);
            if(comprobado == 1){
                System.out.println("No ha acertado. El numero es más pequeño. Prueba otra vez.");
            }
            else if(comprobado == -1){
                System.out.println("No ha acertado. El numero es más grande. Prueba otra vez.");
            }
        }while(comprobado != 0);
        System.out.println("¡Ha acertado!");
    }
}

Saludos
Título: Re:cu00672b-Generar números aleatorios en Java
Publicado por: Erik_Escriche en 31 de Enero 2017, 17:08
Hola luisdn.
Lo veo todo bien.
¡Un saludo!