Advertisement
NelloRizzo

GuessTheNumber

May 20th, 2020
1,521
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.96 KB | None | 0 0
  1. package corso.java;
  2.  
  3. import java.util.Random;
  4. import java.util.Scanner;
  5.  
  6. public class Program {
  7.  
  8.     public static int dammiNumeroCasuale() {
  9.         return new Random().nextInt(1000) + 1;
  10.     }
  11.  
  12.     public static int leggiNumero() {
  13.         // apro uno scanner sullo standard input
  14.         Scanner in = new Scanner(System.in);
  15.         // mostro un piccolo feedback
  16.         System.out.print("Scrivi un numero:");
  17.         // leggo il prossimo intero
  18.         int scelta = in.nextInt();
  19.         return 10;
  20.     }
  21.  
  22.     public static void main(String[] args) {
  23.         // 1. Il computer pensa ad un numero casuale compreso tra 1 e 1000
  24.         // 1.1. Mi serve una variabile per memorizzare il numero!
  25.         int target = dammiNumeroCasuale();
  26.         // 2. L'utente ha a disposizione 10 tentativi per indovinarlo
  27.         // 2.1. definisco il numero di tentativi che l'utente può fare
  28.         int counter = 10; // questa variabile sarà decrementata ad ogni tentativo
  29.         // 2.2. ciclo while -> condizione di uscita?
  30.         // utente ha indovinato oppure counter == 0
  31.         // 2.3. variabile che indica se l'utente ha indovinato
  32.         boolean indovinato = false;
  33.         while (!indovinato && counter != 0) {
  34.             // 3. sulla base dei suggerimenti che gli vengono proposti ad ogni tentativo.
  35.             // 3.1. una buona volta l'utente dovrà pure inserire il numero...
  36.             int numero = leggiNumero();
  37.             // 3.2. controllo la relazione con target
  38.             // 3.2.1. controllo se ha vinto
  39.             if (numero == target)
  40.                 // l'utente ha indovinato
  41.                 indovinato = true;
  42.             else {
  43.                 // 3.2.2 controllo se minore
  44.                 if (numero < target) {
  45.                     // stampo un feedback
  46.                     System.out.println("Il numero da indovinare è più grande");
  47.                 } else // il numero è maggiore
  48.                 {
  49.                     System.out.println("Il numero da indovinare è più piccolo");
  50.                 }
  51.                 --counter; // decremento il numero di tentativi effettuati
  52.             }
  53.         }
  54.         // controllo come è terminato il gioco
  55.         if (indovinato)
  56.             System.out.println("Bravo, hai indovinato con " + (10 - counter) + " tentativi");
  57.         else
  58.             System.out.println("Hai perso, il numero da indovinare era " + target);
  59.     }
  60.  
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement