Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
- import java.util.Scanner;
- /**
- * @author morcintonio
- */
- public class adivinaNumero {
- public static void main(String[] args) {
- Scanner sc = new Scanner(System.in);
- int n;
- String respuesta = "";
- do {
- do {
- System.out.println("Digite un 1 para que adivine la máquina, un 2 para que usted adivine el número");
- n = Integer.parseInt(sc.nextLine());
- switch (n) {
- case 1:
- adivinaMaquina();
- break;
- case 2:
- adivinaPersona();
- break;
- default:
- System.out.println("No ha introducido 1 ó 2");
- break;
- }
- } while (n != 1 && n != 2);
- System.out.println("¿Quieres volver a jugar? si/no");
- do {
- respuesta = sc.nextLine();
- if (!respuesta.trim().equalsIgnoreCase("si") && !respuesta.trim().equalsIgnoreCase("no")) {
- System.out.println("Pon si o no");
- }
- } while (!respuesta.trim().equalsIgnoreCase("si") && !respuesta.trim().equalsIgnoreCase("no"));
- } while (respuesta.trim().equalsIgnoreCase("si"));
- }
- public static void adivinaMaquina() {
- Scanner sc = new Scanner(System.in);
- int min = 1;
- int max = 100;
- int adivina = 0;
- int resultado = 150;
- int contador = 0;
- String respuesta = "";
- do {
- adivina = aleatorio(min, max);
- System.out.println(adivina);
- do {
- System.out.println("¿Es mayor, menor o igual al número pensado?");
- respuesta = sc.nextLine().toLowerCase().trim();
- switch (respuesta) {
- case "mayor":
- max = adivina - 1;
- contador++;
- break;
- case "menor":
- min = adivina + 1;
- contador++;
- break;
- case "igual":
- resultado = adivina;
- contador++;
- break;
- default:
- System.out.println("No ha puesto mayor, menor o igual.");
- }
- } while (!(respuesta.trim().equalsIgnoreCase("mayor")
- || respuesta.trim().equalsIgnoreCase("menor")
- || respuesta.trim().equalsIgnoreCase("igual")));
- } while (resultado != adivina);
- System.out.println("El número que has pensado es el " + resultado + ". Lo he intentado " + contador + " veces.");
- }
- public static void adivinaPersona() {
- Scanner sc = new Scanner(System.in);
- int min = 1;
- int max = 100;
- int n = 0;
- int cont = 1;
- int resultado = aleatorio(min, max);
- do {
- System.out.println("Escribe un número del " + min + " al " + max);
- n = Integer.parseInt(sc.nextLine());
- if (n < resultado) {
- System.out.println("Ese número es MENOR que el que he pensado\n");
- min = n + 1;
- cont++;
- } else if (n > resultado) {
- System.out.println("Ese número es MAYOR que el que he pensado\n");
- max = n - 1;
- cont++;
- } else {
- System.out.println("Enhorabuena! " + n + " es el número que habia pensado, te ha llevado " + cont + " intentos");
- n = resultado;
- }
- } while (n != resultado);
- }
- public static int aleatorio(int min, int max) {
- return (int) (Math.floor(Math.random() * (max - min)) + min);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement