Gyakorlati alapok

Amit nem lehet megcinkelni: a virtuális dobókocka

 

Az egyik előző fejezetben ismertetett véletlenszám-generálás segítségével most gyártsunk le egy virtuális dobókockát!

 

www.informatika-programozas.hu

 

Képi megvalósítása egy másik, jóval nehezebb projekt témája lesz, addig is nézzük meg valószínűségi implementálását.

 

Mivel a dobókocka pöttyei 6 db számot jelképeznek (1 2 3 4 5 6) és feltételezzük, hogy nincsen megcinkelve, azaz nem csalnak vele, ezért dobáskor mindegyik számnak 1/6 esélye van legfelülre kerülni. Olyan algoritmust kell tehát gyártanunk, amelyik teljesíti az 1/6 valószínűséget. Természetesen ezt többféleképpen is megtehetjük, én a java.util csomagban (import java.util.Random;) elérhető nextInt() függvénnyel dolgoztam:

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

import java.util.Random;

public class Main {
    public static void main(String[] args) {
    int tomb[] = new int [10];
    Random random = new Random();
    for (int i = 0; i < tomb.length; i++){
        tomb[i] = random.nextInt(6) + 1;
        System.out.print(tomb[i] + " ");
        }
    }
}

 

Végeredmény (például):

2 1 1 1 6 2 3 5 1 1

 

A feltétel beállítása után (random.nextInt(6) + 1;) csak a dobókocka 6 számából lesz számgenerálás. A feladatnak ez az implementáció tökéletesen elég, feltéve, hogy a Java alkotói helyesen valósították meg a véletlenszám-generálást. Természetesen a kód futtatása szempontjából a tömb felhasználása nem fontos, helyettesíthető int típussal (int veletlenSzam):

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

import java.util.Random;

public class Main {
    public static void main(String[] args) {
    int veletlenSzam;
    Random random = new Random();
    for (int i = 0; i <= 10; i++){
        veletlenSzam = random.nextInt(6) + 1;
        System.out.print(veletlenSzam + " ");
        }
    }
}

 

Végeredmény (például):

4 3 4 4 3 4 6 2 4 6 3