public class Lotto{ public static void main (String[] args) { int[] lotto = new int[40]; /* luodaan ja nollataan taulukko */ /* nollapaikka on tarpeeton, mutta numeroilla 1-39 indeksointi on suoraviivaista, joten taulukon kooksi valitaan 40 eikä 39 */ int x; for (int i=1; i <= 7; i++) /* Arvotaan 7 numeroa */ { x = 1+ (int) (Math.random() * 39); /* arvotaan luku 1-39*/ while (lotto[x]!=0) /*jos luku on jo arvottu */ { x = 1+ (int) (Math.random() * 39); /* arvotaan luku 1-39*/ } /* mahdollisesti toistuvasti */ /* kun löytyy luku, jota ei vielä ole arvottu, sijoitetaan taulukkoon arvotun luvun osoittamaan lokeroon 1 */ lotto[x]=1; } /* ja palataan arpomaan seuraava luku */ for (int i=1; i<=3; i++) /* Arvotaan 3 lisänumeroa */ { x = 1+ (int) (Math.random() * 39); /* arvotaan luku 1-39*/ while (lotto[x]!=0) /* jos luku on jo arvottu */ { x = 1+ (int) (Math.random() * 39); /* arvotaan luku 1-39*/ } /* mahdollisesti toistuvasti */ /* kun löytyy luku, jota ei vielä ole arvottu, sijoitetaan taulukkoon arvotun luvun osoittamaan lokeroon 2 */ lotto[x]=2; } /* ja palataan arpomaan seuraava luku */ /* Tulostetaan oikea lottorivi */ System.out.println("Kierroksen " + (1+(int)(Math.random()*52)) + " oikea lottorivi on"); for (int i=1; i<=39; i++) { if (lotto[i]==1) { System.out.print(" " + i); } } System.out.println("\nLisänumerot ovat"); for (int i=1; i<=39; i++) { if (lotto[i]==2) { System.out.print(" " + i); } } } }