Advertisement
NelloRizzo

Indovinello

Dec 12th, 2017
348
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.33 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5.  
  6. namespace Algoritmi
  7. {
  8.     class Program
  9.     {
  10.         /*
  11.          * PROBLEMA
  12.          * Il computer pensa ad un numero
  13.          * e l'utente deve indovinarlo in 10
  14.          * tentativi sulla base degli indizi
  15.          * che il computer gli darà ad ogni
  16.          * tentativo.
  17.          *
  18.          * PROCESSO
  19.          * 1) Il computer pensa ad un [numero casuale]
  20.          * 2) L'utente cerca di indovinare digitando un [numero]
  21.          * 3) L'utente ha indovinato? <SCELTA>
  22.          * 3.1) SI -> Hai vinto
  23.          * 3.2) NO -> Il computer dà un indizio
  24.          *            per aiutare l'utente
  25.          * 3.2.1) I [tentativi] sono meno di 10? <SCELTA>
  26.          * 3.2.1.1) SI -> Incrementa il numero di tentativi
  27.          * 3.2.1.1.1)     Torna al punto 2
  28.          * 3.2.1.2) NO -> Hai perso!
  29.          *
  30.          * */
  31.         static void Main(string[] args)
  32.         {
  33.             // definiamo le variabili che serviranno
  34.             // per la gestione dei dati del problema
  35.             int numerocasuale;
  36.             int numero;
  37.             int tentativi = 1; // assegno 1 alla variabile tentativi
  38.             // 1) Il computer pensa ad un [numero casuale]
  39.             numerocasuale = new Random().Next(1, 1001);
  40.             // poiché sono in fase di sviluppo mi scrivo il numero
  41.             Console.WriteLine(numerocasuale);
  42.  
  43.             // MARCHIAMO L'INIZIO DI UN LOOP
  44.             do
  45.             {
  46.                 // 2) L'utente cerca di indovinare digitando un [numero]
  47.                 numero = int.Parse(Console.ReadLine());
  48.                 // 3) L'utente ha indovinato? <SCELTA>
  49.                 if (numero == numerocasuale)
  50.                 {
  51.                     // 3.1) SI -> Hai vinto
  52.                     Console.WriteLine("Bravo, hai vinto!");
  53.                 }
  54.                 else
  55.                 {
  56.                     // 3.2) NO -> Il computer dà un indizio
  57.                     //            per aiutare l'utente
  58.                     // SOTTOANALISI
  59.                     // il numero digitato è più grande?
  60.                     if (numero > numerocasuale)
  61.                     {
  62.                         // SI -> Scrivi "è più grande"
  63.                         Console.WriteLine("Il tuo numero è più grande");
  64.                     }
  65.                     else
  66.                     {
  67.                         // NO -> Scrivi "è più piccolo"
  68.                         Console.WriteLine("Il tuo numero è più piccolo");
  69.                     }
  70.                     // FINE SOTTOANALISI
  71.  
  72.                     // 3.2.1) I [tentativi] sono meno di 10? <SCELTA>
  73.                     if (tentativi < 10)
  74.                     {
  75.                         // 3.2.1.1) SI -> Incrementa il numero di tentativi
  76.                         ++tentativi;
  77.                         // 3.2.1.1.1)     Torna al punto 2
  78.                     }
  79.                     else
  80.                     {
  81.                         // 3.2.1.2) NO -> Hai perso!
  82.                         Console.WriteLine("Hai perso!");
  83.                     }
  84.                 }
  85.                 // 3.2.1.1.1)     Torna al punto 2 reso come condizione di uscita
  86.                 //                dal loop!!!
  87.             } while (tentativi < 10 && numerocasuale != numero);
  88.         }
  89.     }
  90. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement