{"id":402,"date":"2010-01-27T16:30:08","date_gmt":"2010-01-27T15:30:08","guid":{"rendered":"http:\/\/www.donatantonio.net\/blog\/?p=402"},"modified":"2010-01-27T16:30:08","modified_gmt":"2010-01-27T15:30:08","slug":"esercizio-12-simulatore-lancio-dado","status":"publish","type":"post","link":"https:\/\/www.donatantonio.net\/blog\/guide_tutorial\/java\/esercizio-12-simulatore-lancio-dado\/","title":{"rendered":"Esercizio 12 &#8211; Simulatore lancio dado"},"content":{"rendered":"<p>Progettare una classe che implementi un dado, specificando da prima il numero di facce (caso base 4) e quindi un metodo che restituisca una faccia del dado simulando appunto il lancio. Utilizzare la classe Random per generare il valore della faccia del dado.<br \/>\nRealizzare infine una classe di test.<\/p>\n<p>Codice della classe Dado.java:<\/p>\n<pre class=\"brush: java; title: ; notranslate\" title=\"\">\r\nimport java.util.Random;\r\npublic class Dado\r\n{\r\n  \/\/ Metodo Costruttore inizializzato con il numero di facce del dado\r\n  public Dado(int s)\r\n  {\r\n    facce = s;\r\n    \/\/ Generatore di numeri casuali\r\n    generatore = new Random();\r\n  }\r\n\r\n  \/\/ Metodo costruttore del dado classico con 4 facce\r\n  public Dado(){\r\n    facce = 4;\r\n    \/\/ Generatore di numeri casuali\r\n    generatore = new Random();\r\n  }\r\n\r\n  \/\/ Metodo che simula il lancio del dado\r\n  public int lancia()\r\n  {\r\n      return 1 + generatore.nextInt(facce);\r\n  }\r\n\r\n  private Random generatore;\r\n  private int facce;\r\n}\r\n<\/pre>\n<p>La classe di test TestLancio.java:<\/p>\n<pre class=\"brush: java; title: ; notranslate\" title=\"\">\r\nimport java.util.Scanner;\r\npublic class TestLancio {\r\n\r\n  public static void main(String[] args)\r\n  {\r\n      \/\/ Creo un nuovo dado con 6 facce\r\n      Dado d = new Dado(6);\r\n      Scanner in = new Scanner(System.in);\r\n\r\n      \/\/ Simulo una certa quantit\u00e0 di lanci\r\n      System.out.println(&quot;Quanti lanci vuoi simulare?&quot;);\r\n      int n = in.nextInt();\r\n\r\n      for( int i = 0 ; i &lt; n ; i++)\r\n      {\r\n          int r = d.lancia();\r\n          \/\/ Visualizzo il risultato di ogni singolo lancio\r\n          System.out.print(r + &quot;  &quot;);\r\n      }\r\n  }\r\n}\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Progettare una classe che implementi un dado, specificando da prima il numero di facce (caso base 4) e quindi un metodo che restituisca una faccia del dado simulando appunto il lancio. Utilizzare la classe Random per generare il valore della faccia del dado.<br \/>\nRealizzare infine una classe di test.<\/p>\n<p>Codice della classe Dado.java:<\/p>\n<p>import java.util.Random;<br \/>\npublic class Dado<br \/>\n{<br \/>\n  \/\/ Metodo Costruttore inizializzato con il numero di facce del dado<br \/>\n  public Dado(int s)<br \/>\n  {<br \/>\n    facce = s;<br \/>\n    \/\/ Generatore di numeri casuali<br \/>\n    generatore = new Random();<br \/>\n  }<\/p>\n<p>  \/\/ Metodo costruttore del dado classico con 4 facce<br \/>\n  public Dado(){<br \/>\n    facce = 4;<br \/>\n    \/\/ Generatore di numeri casuali<br \/>\n    generatore = new Random();<br \/>\n  }<\/p>\n<p>  \/\/ Metodo che simula il lancio del dado<br \/>\n  public int lancia()<br \/>\n  {<br \/>\n      return 1 + generatore.nextInt(facce);<br \/>\n  }<\/p>\n<p>  private Random generatore;<br \/>\n  private int facce;<br \/>\n}<\/p>\n<p>La classe di test TestLancio.java:<\/p>\n<p>import java.util.Scanner;<br \/>\npublic class TestLancio {<\/p>\n<p>  public static void main(String[] args)<br \/>\n  {<br \/>\n      \/\/ Creo un nuovo dado con 6 facce<br \/>\n      Dado d = new Dado(6);<br \/>\n      Scanner in = new Scanner(System.in);<\/p>\n<p>      \/\/ Simulo una certa quantit\u00e0 di lanci<br \/>\n      System.out.println(&quot;Quanti lanci vuoi simulare?&quot;);<br \/>\n      int n = in.nextInt();<\/p>\n<p>      for( int i = 0 ; i &lt; n ; i++)<br \/>\n      {<br \/>\n          int r = d.lancia();<br \/>\n          \/\/ Visualizzo il risultato di ogni singolo lancio<br \/>\n          System.out.print(r + &quot;  &quot;);<br \/>\n      }<br \/>\n  }<br \/>\n}<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[69],"tags":[88],"_links":{"self":[{"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/posts\/402"}],"collection":[{"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/comments?post=402"}],"version-history":[{"count":0,"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/posts\/402\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/media?parent=402"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/categories?post=402"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.donatantonio.net\/blog\/wp-json\/wp\/v2\/tags?post=402"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}