6.4.. Napisati program koji generiše četverocifren broj, ispiše ga. Zatim ispiše cifre generisanog četverocifrenog broja.

Opis programa: Slučajan broj se generiše funkcijom random() iz biblioteke Math u opsegu [0 , 1): nula je uključena a jedan nije uključen u opseg. Četverocifren broj se računa na osnovu izraza: = (max-min) * rnd + min odnosno: (10000 - 1000) * Math.random() + 1000. Za cjelobrojne vrijednosti se koristi (int) (Vidi Slučajan broj /RANDOM/ - funkcija Math.random())
Pri pretvaranju se koristi osobina pozicionog sistema. Četverocifren broj
broj = h*103 + s*102 + d*101 + j*100
Izrazom broj % 10 dobijamo jedinice broja. Cjelobrojnim dijeljenom sa 10 (broj / 10) dobija se trocifren broj t (prethodni broj ostaje bez cifre sa desna) te se dijeli sa 10 i izdvaja cifra sa desna (t % 10) to je cifra desetica. Cjelobrojnim dijeljenem broja t sa 10 (t / 10) dobija se dvocifren nova vrijednost broja t i izdvoji se cifra sa desna (t % 10) to je cifra desetica. Cjelobrojnim dijeljenje broja t sa 10 sad se dobija cifra hiljadica.

Listing programa:

// 06421162
public class Main {
    public static void main(String[] args) {

        int broj = (int) ((10000 - 1000) * Math.random() + 1000);     // slucajan cetverocifren broj
        System.out.println("Slucajan cetverocifren broj =  " + broj); // ispis
        int h, s, d, j;          // deklarisanje varijabli

        h = broj / 1000;         // cifra hiljadica
        s = (broj / 100) % 10;   // cifra stotica
        d = (broj / 10) % 10;    // cifra desetica
        j = broj % 10;           // cifra jedinica

        System.out.println("cifra hiljadica = " + h + "  cifra stotica = " + s + "  cifra desetica = " + d + "  cifra jedinica = " + j );
    }
}

II varijanta  izdvajanje cifara s desna
// 06421162
public class Main {
    public static void main(String[] args) {

        int broj = (int) ((10000 - 1000) * Math.random() + 1000);     // slucajan cetverocifren broj
        System.out.println("Slucajan cetverocifren broj =  " + broj); // ispis
        int h, s, d, j, t;// deklarisanje varijabli

        j = broj % 10;  // cifra jedinica
        t = broj / 10;  // prve tri cifre
        d = t % 10;     // cifra desetica
        t = t / 10;     // prve dvije cifre
        s = t % 10;     // cifra stotica
        h = t / 10;     // cifra hiljadica

        System.out.println("cifra hiljadica = " + h + "  cifra stotica = " + s + "  cifra desetica = " + d + "  cifra jedinica = " + j );
    }
}

Ispis na ekranu:
Slucajan cetverocifren broj =  3895
cifra hiljadica = 3  cifra stotica = 8  cifra desetica = 9  cifra jedinica = 5

Index