45
VEROVATNOĆA I STATISTIKA 6/6/2018

VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

  • Upload
    others

  • View
    21

  • Download
    0

Embed Size (px)

Citation preview

Page 1: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I

STATISTIKA

6/6/2018

Page 2: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

2

MINI-PROJEKAT IZ VEROVATNOĆE I STATISTIKE

-UZASTOPNI BROJEVI U IGRI LOTO-

AUTORI:

PARIPOVIĆ ALEKSANDAR 417/2016

MITROVIĆ KSENIJA 421/2016

Page 3: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

3

a) Verovatnoća da je razlika između svaka dva

izvučena broja veća ili jednaka k:

P(A) = ∑ (𝒎−𝟏+𝒊

𝒎−𝟏 )𝒏−(𝒎−𝟏)∙𝒌−𝟏𝒊=𝟎𝒏∙(𝒏−𝟏)∙ ... ∙(𝒏−𝒎+𝟏)

𝒎!

n – broj kuglica numerisanih brojevima od 1 do n m – broj izvučenih kuglica 𝒏∙(𝒏−𝟏)∙… ∙(𝒏−𝒎+𝟏)

𝒎! - predstavlja broj različitih kombinacija

od po m brojeva.

∑ (𝒎−𝟏+𝒊𝒎−𝟏

)𝒏−(𝒎−𝟏)∙𝒌−𝟏𝒊=𝟎 – koliko ima kombinacija

koje zadovoljavaju dati uslov.

Našli smo maksimalnu vrednost najmanjeg od ovih m brojeva. Ona iznosi amin1= 𝒏 − (𝒎 − 𝟏) ∙ 𝒌.

Takvih kombinacija ima (𝒎−𝟏𝒎−𝟏

).

Sledeća moguća vrednost za najmanji broj je za

jedan manja tj. iznosi amin2 = 𝒏 − (𝒎 − 𝟏) ∙ 𝒌 − 𝟏. U ovom slučaju, kada je vrednost najmanjeg broja

fiksirana imamo ukupno (𝒎−𝟏+𝟏𝒎−𝟏

) kombinacija.

Page 4: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

4

Sledeća moguća vrednost za najmanji broj iznosi amin3 = 𝒏 − (𝒎 − 𝟏) ∙ 𝒌 − 𝟐.

U ovom slučaju imamo ukupno (𝒎−𝟏+𝟐𝒎−𝟏

) kombinacija.

Dalje, najmanja moguća vrednost najmanjeg broja je 1.

U ovom slučaju imamo ukupno (𝒎−𝟏+𝒏−(𝒎−𝟏)∙𝒌−𝟏 𝒎−𝟏

).

Primećujemo da kada saberemo sve slučajeve za najmanji

broj dobijamo sumu koja je jednaka : ∑ (𝒎−𝟏+𝒊𝒎−𝟏

)𝒏−(𝒎−𝟏)∙𝒌−𝟏𝒊=𝟎 .

b) U igri Loto naći verovatnoću da su izvučena dva susedna broja.

U formuli iz primera pod a) ako bismo za n, m i k uzeli konkretne vrednosti, tj. n=39, m=7 i k=2 dobili bismo verovatnoću da je razlika svaka dva izvučena broja u igri Loto veća ili jednaka 2 (dogadjaj A). Neka je ta verovatnoća jednaka

P(A) = ∑ (𝟔+𝒊

𝟔 )𝟐𝟔𝒊=𝟎

𝟑𝟗∙𝟑𝟖∙… ∙𝟑𝟑

𝟕!

.

Suprotan dogadjaj dogadjaju A je da je izvučen barem jedan par brojeva čija je razlika manja od 2, tj. jednaka 1 (pošto su brojevi različiti), a to znači da su ti brojevi susedni.

Page 5: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

5

Važi : P(A’) = 1 -∑ (𝟔+𝒊

𝟔 )𝟐𝟔𝒊=𝟎

𝟑𝟗∙𝟑𝟖∙… ∙𝟑𝟑

𝟕!

.

Page 6: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

6

Loto (ital. Lotto) je oblik igre na sreću u kojoj se pogađa kombinacija brojeva koja će biti izvučena u predstojećem događaju.

U sledećoj tabeli se mogu videti svi nizovi uzastopnih brojeva – 2,3,4,5,6,7 koji su izvučeni u loto kombinacijama od 1985. do 2011. godine. Kao što se iz priložene tabele vidi do kraja 2011. godine Još nisu izvučeni nizovi od 7 i 6 uzastopnih brojeva. Za nizove od 5 i 4 uzastopna broja prikazani su Pojedinačni brojevi kojisu bili zastupljeni u izvučenim kombinacijama, kao I njihova učestanost u pojedinim godinama. Za nizove od 3 i 2 broja, zbog velike zastupljenosti u izvučenim kombinacijama suvišno je prikazati sve kombinacije u kojima su bili zastupljeni.

Page 7: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

7

f- brojpojavljivanjaodređenognizauzastopnihbrojeva pojedinačnojgodiniiliukupno od 1985. godine.

Page 8: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

8

Za nizove od 3 uzastopna broja prikazani su samo brojevi koji su se najmanje i najviše puta pojavljivali u dobitnim kombinacijama. Za nizove od 2 uzastopna broja, u ovom period su bili zastupljeni svi parovi.

Sledeći grafikon prikazuje učestanost raspona brojeva u svim loto kombinacijama izvučenim u 2018. godini. Ukupan broj odigranih kola je 2178, a brojo digranih kola u 2018. godini je 44.

Ukupno: -najmanji raspon – 25 (1 kolo) -najveći raspon -39 (3 kola) -najčešći raspon -33 (6 kola)

Page 9: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

9

Na sledećem grafikonu je prikazana učestanost brojeva u 2018. godini:

Najveća učestanost-brojevi: 8, 23 Broj izvlačenja : 14 Najmanja učestanost – brojevi: 12, 29 Broj izvlačenja: 2 Ukupno je izvučeno:

- Neparnih brojeva – 159 - Parnih brojeva – 149

Najčešće kombinacije sa neparnim i parnim brojevima: -3n i 4p (14 kombinacija) -4n i 3p (14 kombinacija) Kombinacije sa najmanjim zbirom brojeva izvučene u 2018. godini: zbir – 65 Kombinacije sa najvećim zbirom brojeva: zbir - 201

Page 10: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

10

Prvi zadatak: package loto; import java.awt.JobAttributes.MultipleDocumentHandlingType; import java.lang.Math; import java.math.BigDecimal; import java.math.BigInteger; import java.math.RoundingMode; public class Lutrija { private int m, n, k; private int loto[]; public Lutrija(int m, int n, int k) { this.m=m; this.n=n; this.k=k; loto=new int[m]; } private BigDecimal faktorijal(int m, int i) { BigDecimal rez=new BigDecimal("1"); rez = rez.multiply(fact2(i+1, m-1+i)); rez = rez.divide(fact1(m-1), 10, RoundingMode.HALF_UP); return rez; } public static BigDecimal fact1(int iNo) { BigDecimal a = new BigDecimal("1");

Page 11: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

11

for(int i=1;i<=iNo;i++) { String s=Integer.toString(i); BigDecimal b = new BigDecimal(s); a = a.multiply(b); } return a; } private static BigDecimal fact2(int k, int n) { BigDecimal rez= new BigDecimal("1"); for(int i=k;i<=n;i++) { String s = Integer.toString(i); BigDecimal b = new BigDecimal(s); rez = rez.multiply(b); } return rez; } private BigDecimal suma(int n) { BigDecimal rez= new BigDecimal("0"); for(int i=0;i<=n;i++) rez=rez.add(faktorijal(m, i)); return rez; } public BigDecimal finalno() { BigDecimal rez = new BigDecimal("1"); rez = rez.multiply(suma(n-(m-1)*k-1)); rez=rez.divide(fact2(n-m+1, n), 10, RoundingMode.HALF_UP); rez=rez.multiply(fact1(m)); return rez; } private int getN() {

Page 12: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

12

return n; } private int getM() { return m; } private int getK() { return k; } } package loto; import java.math.BigDecimal; import java.math.BigInteger; import java.util.Scanner; public class Program { public static void main(String[] args) { Scanner s = new Scanner(System.in); Simulacija sim; Provera provera; int n, m, k, p; int broj=1; while(broj!=0) { System.out.println("Izaberite jednu stavku menija");

Page 13: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

13

System.out.println("1.Simulacija ispisa jednog loto listica"); System.out.println("2.Provera formule simulacijom"); System.out.println("3.Provera formule u slucaju igre LOTO 7/39"); System.out.println("4.Provera formule za susedne brojeve u igri LOTO 7/39"); System.out.println("5.Simulacija igre LOTO 7/39"); System.out.println("0.Zavrsetak programa"); broj=s.nextInt(); switch(broj) { case 1: System.out.println("Unesite n"); n=s.nextInt(); System.out.println("Unesite m"); m=s.nextInt(); System.out.println("Unesite k"); k=s.nextInt(); sim = new Simulacija(n, m, k); sim.napravi_kombinaciju(); sim.sortiraj(); if(sim.proveri()) System.out.println("Razlika svih susednih brojeva je veca ili jednaka od " + k + "\n"); else System.out.println("Postoji par susednih brojeva cija je razlika manja od " + k + "\n"); sim.ispisi();

Page 14: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

14

System.out.println(); break; case 2: System.out.println("Unesite n"); n=s.nextInt(); System.out.println("Unesite m"); m=s.nextInt(); System.out.println("Unesite k"); k=s.nextInt(); System.out.println("Unesite broj ponavljanje"); p=s.nextInt(); provera=new Provera(n, m, k, p); provera.provera(); System.out.println(); break; case 3: System.out.println("Unesite broj ponavljanja"); p=s.nextInt(); provera=new Provera(39, 7, 2, p); provera.provera(); System.out.println(); break; case 4:

Page 15: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

15

System.out.println("Unesite broj ponavljanja"); p=s.nextInt(); provera=new Provera(39, 7, 2, p); provera.proveraB(); System.out.println(); break; case 5: System.out.println("Unesite broj loto listica"); p=s.nextInt(); provera=new Provera(39, 7, 2, p); provera.simulacija(); System.out.println(); break; } } } } package loto;

Page 16: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

16

import java.math.BigDecimal; import java.util.Scanner; public class Provera { private int n, m, k, ponavljanje; private int loto[][]; private int pomoc[]; public Provera(int n, int m, int k, int ponavljanje) { this.n=n; this.m=m; this.k=k; this.ponavljanje=ponavljanje; loto=new int[ponavljanje][m]; pomoc=new int[5]; } public void provera() { int brojac=0; Lutrija l =new Lutrija(m, n, k); BigDecimal big = (BigDecimal) l.finalno(); System.out.println("Verovatnoca bi priblizno trebalo da bude : " + big); for(int i=0;i<ponavljanje;i++) { Simulacija sim = new Simulacija(n, m, k); sim.napravi_kombinaciju(); sim.sortiraj(); if(sim.proveri()==true) brojac++;

Page 17: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

17

} System.out.println(); double rez=(double)brojac/(double)ponavljanje; System.out.println("Verovatnoca prilikom ove provere simulacije je: " + rez + " \n"); System.out.println(); } public void simulacija() { int brojac=0; for(int i=0;i<ponavljanje;i++) { Simulacija sim = new Simulacija(n, m, k); sim.napravi_kombinaciju(); sim.sortiraj(); for(int j=0;j<m;j++) loto[brojac][j]=sim.pniz[j]; brojac++; } Simulacija sim = new Simulacija(n, m, k); sim.napravi_kombinaciju(); sim.sortiraj(); System.out.println("Izvucena LOTO kombinacija je: "); sim.ispisi(); for(int i=0;i<ponavljanje;i++){ int b=0; for(int j=0;j<m;j++) for(int z=0;z<m;z++) if(loto[i][j] == sim.pniz[z])

Page 18: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

18

b++; if (b >= 3) pomoc[b-3]++; } for(int i=0;i<5;i++) if(i<2) System.out.println("Sa " + (i+3) + " pogotka ima " + pomoc[i] + " kombinacija"); else System.out.println("Sa " + (i+3) + " pogodataka ima " + pomoc[i] + " kombinacija"); } public void proveraB() { int brojac=0; Lutrija l =new Lutrija(m, n, k); BigDecimal big = (BigDecimal) l.finalno(); BigDecimal a = new BigDecimal(1); a = a.subtract(big); System.out.println("Verovatnoca bi priblizno trebalo da bude : " + a); for(int i=0;i<ponavljanje;i++) { Simulacija sim = new Simulacija(n, m, k); sim.napravi_kombinaciju(); sim.sortiraj(); if(sim.proveri()==false) brojac++;

Page 19: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

19

} System.out.println(); double rez=(double)brojac/(double)ponavljanje; System.out.println("Verovatnoca prilikom ove provere simulacije je: " + rez + " \n"); System.out.println(); } } package loto; import java.util.Scanner; import java.lang.Math; public class Simulacija { private int m, n, k; public int pniz[]; public Simulacija(int n, int m, int k) { this.n=n; this.m=m; this.k=k; pniz=new int[m]; } public void napravi_kombinaciju() { boolean flag=false; for(int i=0;i<m;i++) { flag=false;; int broj = (int)(Math.random()*n + 1); for(int j=0;j<i;j++)

Page 20: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

20

if(pniz[j]==broj) { flag=true; break; } if(flag==true) i--; else pniz[i]=broj; } } public void sortiraj() { for(int i=0;i<m-1;i++) for(int j=i+1;j<m;j++) if(pniz[i]>pniz[j]) { int temp=pniz[i]; pniz[i]=pniz[j]; pniz[j]=temp; } } public boolean proveri() { boolean flag=true; for(int i=0;i<m-1;i++) if(pniz[i+1]-pniz[i]<k) { flag=false; break; } return flag; } public void ispisi() {

Page 21: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

21

for(int i=0;i<m;i++) System.out.print(pniz[i] + " "); System.out.println(); }

}

Page 22: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

22

Prikaz simulacije za prvi zadatak :

Page 23: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

23

Drugi zadatak : package loto_gui; import java.awt.Canvas; import java.awt.Color; import java.awt.Graphics; import java.util.Random; import java.awt.*; public class Bubanj extends Panel implements Runnable { private static int[] niz=new int[39]; private static int idUk=0; private int id=++idUk; private boolean radi=false; private Thread nit=new Thread(this); private Label label=new Label("39", Label.CENTER); public Bubanj() { setSize(15000, 70000); setBackground(Color.YELLOW); label.setFont(new Font(null, Font.BOLD, 30)); add(label, "Center"); for(int i=0;i<39;i++) niz[i]=0; setVisible(true); nit.start(); } private void radnja() {

Page 24: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

24

Random rand =new Random(); String s=label.getText(); int d=Integer.parseInt(s); niz[d-1]=0; int number=0; boolean flag=true; while(flag) { number=rand.nextInt(39)+1; flag=false; if(niz[number-1]==1) flag=true; else niz[number-1]=1; } label.setText(Integer.toString(number)); } @Override public void run() { try { while(!Thread.interrupted()) { synchronized (this) { if(!radi) wait(); } radnja(); Thread.sleep(10); } }catch(InterruptedException ie) {} } public String tekst() {

Page 25: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

25

return label.getText(); } public synchronized void kreni() { setBackground(Color.RED); radi=true; notifyAll(); } public synchronized void stani() { setBackground(Color.GREEN); radi=false; } public void unisti() { nit.interrupt(); } }

package loto_gui; import java.awt.*; import java.awt.event.*; public class Masina extends Panel { private Bubanj[] niz; private int pop=0; private int[] brojevi; private int jot=0; public Masina(int kap) { niz=new Bubanj[kap]; for(int i=0;i<niz.length;i++) {

Page 26: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

26

niz[i]=new Bubanj(); add(niz[i]); } brojevi=new int[niz.length]; setVisible(true); } public String zaustavi(int k) { niz[k].stani(); brojevi[jot++]=Integer.parseInt(niz[k].tekst()); if(jot==7) { sortiraj(); jot=0; } return niz[k].tekst(); } public void pokreniSve() { for(int i=0;i<niz.length;i++) niz[i].kreni(); } private void zaustaviSve() { for(int i=0;i<niz.length;i++) niz[i].stani(); } private void brojevi() { zaustaviSve(); for(int i=0;i<brojevi.length;i++) {

Page 27: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

27

String s=niz[i].tekst(); brojevi[i]=Integer.parseInt(s); } } private void sortiraj() { for(int i=0;i<brojevi.length-1;i++) for(int j=i+1;j<brojevi.length;j++) if(brojevi[i]>brojevi[j]) { int temp=brojevi[i]; brojevi[i]=brojevi[j]; brojevi[j]=temp; } } public void zaustaviBubnjeve() { brojevi(); sortiraj(); } public void unisti() { for(int i=0;i<niz.length;i++) niz[i].unisti(); } public int[] niz() { return brojevi; } }

package loto_gui; import java.awt.*; import java.awt.event.*;

Page 28: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

28

package loto_gui; import java.util.Random; public class Listici { private int[][] loto; private int broj=0; private int[] listic =new int[7]; private int[] pomoc=new int[5]; private int pop=0; private int[] help=new int[39]; public Listici() { loto=new int[1][1]; } public int[] prebroj() { for(int i=0;i<5;i++) pomoc[i]=0; for(int i=0;i<broj;i++) if(loto[i][7]>2) { switch(loto[i][7]) { case 3: pomoc[0]++; break; case 4: pomoc[1]++; break; case 5: pomoc[2]++; break; case 6: pomoc[3]++; break; case 7: pomoc[4]++; break; } }

Page 29: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

29

return pomoc; } public void pretrazi(int br) { for(int i=0;i<broj;i++) for(int j=0;j<7;j++) if(loto[i][j]==br) { loto[i][j]=0; loto[i][7]++; break; } } public void napravi(int kap) { broj=kap; loto=new int[broj][8]; int[] pom=new int[7]; for(int i=0;i<broj;i++) { pom=napraviListic(); for(int j=0;j<pom.length;j++) loto[i][j]=pom[j]; loto[i][7]=0; } } private int[] napraviListic() { boolean flag=false; Random rand=new Random(); for(int i=0;i<listic.length;i++) { flag=false; int broj = rand.nextInt(39)+1; for(int j=0;j<i;j++) if(listic[j]==broj) { flag=true; break;

Page 30: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

30

} if(flag==true) i--; else listic[i]=broj; } sortiraj(); return listic; } private void sortiraj() { for(int i=0;i<listic.length-1;i++) for(int j=i+1;j<listic.length;j++) if(listic[i]>listic[j]) { int temp=listic[i]; listic[i]=listic[j]; listic[j]=temp; } } public int[] pobeda() { help=new int[vratiBroj()]; pop=0; for(int i=0;i<broj;i++) if(loto[i][7]==6) { int p=0; while(loto[i][p]==0) p++; help[pop++]=loto[i][p]; } return help; }

Page 31: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

31

public int vratiBroj() { pop=0; for(int i=0;i<broj;i++) if(loto[i][7]==6) pop++; return pop; } } public class Loto extends Frame { private Masina masina; private Button kreni, zaustavi, stani, napravi; private TextField[] txt; private Label label, label_br; private int[] niz; private Label[] labele; private TextField[] tekst; private static int brojac=0; private int broj_kombinacija=0; private Listici listici=new Listici(); private int[] pomoc=new int[5]; private Panel tabela=new Panel(new GridLayout(13, 3)); private Label[] tab=new Label[39]; private Panel[] paneli=new Panel[39]; private Dobitak dobitak=new Dobitak(); private int[] help=new int[20]; private TextField broj_komb=new TextField("1"); { kreni=new Button("Kreni"); zaustavi=new Button("Zaustavi");

Page 32: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

32

stani=new Button("Stani"); napravi=new Button("Napravi"); } private void mozeKreni(boolean flag) { kreni.setEnabled(flag); zaustavi.setEnabled(!flag); } private void mozeStani(boolean flag) { kreni.setEnabled(!flag); zaustavi.setEnabled(!flag); } public Loto(int kap) { super("Loto"); setSize(1000, 600); masina=new Masina(kap); niz=new int[kap]; for(int i=0;i<pomoc.length;i++) pomoc[i]=0; labele=new Label[5]; for(int i=0;i<labele.length;i++) if(i<2) labele[i]=new Label("Loto listica sa " + Integer.toString(i+3) + " pogotka ima:"); else labele[i]=new Label("Loto listica sa " + Integer.toString(i+3) + " pogodaka ima:"); tekst=new TextField[5]; for(int i=0;i<tekst.length;i++) { tekst[i]=new TextField("");

Page 33: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

33

tekst[i].setEditable(false); tekst[i].setFont(new Font(null, Font.ITALIC, 50)); } txt=new TextField[niz.length]; for(int i=0;i<txt.length;i++) { txt[i]=new TextField(""); txt[i].setEditable(false); } popuniProzore(); addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { masina.unisti(); dobitak.dispose(); dispose(); } }); setVisible(true); } private void popuniProzore() { Panel ploca=new Panel(new BorderLayout()); add(ploca); Panel plo=new Panel(new BorderLayout()); plo.add(masina, "North"); for(int i=0;i<39;i++) { paneli[i]=new Panel(); if(i%3==0) tab[i]=new Label(Integer.toString(i+1), Label.RIGHT); else if(i%3==1)

Page 34: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

34

tab[i]=new Label(Integer.toString(i+1), Label.CENTER); else tab[i]=new Label(Integer.toString(i+1), Label.LEFT); tab[i].setBackground(Color.GRAY); tab[i].setFont(new Font(null, Font.BOLD,20)); paneli[i].add(tab[i]); tabela.add(paneli[i]); } plo.add(tabela, "Center"); ploca.add(plo, "Center"); Panel plot=new Panel(new GridLayout(tekst.length, 2)); ploca.add(plot, "West"); for(int i=0;i<tekst.length;i++) { plot.add(labele[i]); plot.add(tekst[i]); } plo=new Panel(); ploca.add(plo, "South"); label=new Label("Izvuceni su brojevi: "); plo.add(label); for(int i=0;i<txt.length;i++) plo.add(txt[i]); plo.add(kreni); kreni.addActionListener(new ActionListener() {

Page 35: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

35

@Override public void actionPerformed(ActionEvent arg0) { mozeKreni(false); for(int i=0;i<txt.length;i++) txt[i].setText(""); masina.pokreniSve(); broj_kombinacija=Integer.parseInt(broj_komb.getText()); listici.napravi(broj_kombinacija); for(int i=0;i<tab.length;i++) tab[i].setBackground(Color.GRAY); } }); plo.add(zaustavi); zaustavi.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { mozeKreni(true); masina.zaustaviBubnjeve(); niz=masina.niz(); for(int i=0;i<niz.length;i++) { txt[i].setText(Integer.toString(niz[i])); } } });

Page 36: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

36

plo.add(stani); stani.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { if(brojac==niz.length) { mozeStani(false); brojac=0; return; } else { mozeStani(true); } String s=masina.zaustavi(brojac); int pom=Integer.parseInt(s); tab[pom-1].setBackground(Color.RED); listici.pretrazi(pom); pomoc=listici.prebroj(); for(int i=0;i<pomoc.length;i++) tekst[i].setText(Integer.toString(pomoc[i])); if(brojac==niz.length-1) { for(int i=0;i<help.length;i++) if(pom==help[i]) { dobitak.setVisible(true); break; } } brojac++;

Page 37: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

37

if(brojac==niz.length-1) { help=new int[listici.vratiBroj()]; help=listici.pobeda(); for(int i=0;i<help.length;i++) tab[help[i]-1].setBackground(Color.GREEN); } if(brojac==niz.length) { niz=masina.niz(); for(int i=0;i<niz.length;i++) { txt[i].setText(Integer.toString(niz[i])); } } } }); plo=new Panel(); ploca.add(plo, "North"); plo.add(napravi); label_br=new Label("Broj kombinacija: "); plo.add(label_br); broj_komb.setColumns(10); plo.add(broj_komb); napravi.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) {

Page 38: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

38

broj_kombinacija=Integer.parseInt(broj_komb.getText()); listici.napravi(broj_kombinacija); } }); } public class Dobitak extends Frame{ Label lbl; Dobitak() { super("LOTO 7/39"); setBounds(250, 300, 500, 350); add(lbl=new Label(" IMAMO LOTO DOBITAK ", Label.CENTER)); lbl.setFont(new Font(null, Font.BOLD, 40)); this.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { setVisible(false); } }); } } public static void main(String []args) { new Loto(7); } }

Page 39: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

39

Prikaz simulacije za drugi zadatak :

a) Pre izvlačenja sedmog broja

Page 40: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

40

b ) Posle izvlačenja sedmog broja i dobitka sedmica

Page 41: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

41

Testiranje saglasnosti primenom hi kvadrat testa

Rd. broj kola

2012. 2013. 2014. 2015. 2016. 2017.

1. 1 1 0 1 1 1

2. 1 1 1 1 1 1

3. 1 0 1 0 1 1

4. 1 0 0 1 0 1

5. 0 1 1 1 1 0

6. 1 0 1 1 1 1

7. 1 1 0 1 0 1

8. 0 1 1 0 0 1

9. 1 0 1 1 1 1

10. 1 1 0 1 1 1

11. 1 1 1 1 1 0

12. 0 0 0 1 1 0

13. 1 1 1 1 0 1

14. 1 1 1 1 1 1

15. 0 1 1 1 0 1

16. 0 1 0 0 1 1

17. 1 1 0 0 1 1

18. 1 1 1 1 1 1

19. 1 1 1 1 1 0

20. 1 1 1 1 1 0

21. 0 1 1 1 0 0

22. 1 1 1 1 1 1

23.

0 1 1 0 1 1

24. 1 1 1 1 1 1

25. 1 1 0 1 0 1

26. 0 0 1 1 1 0

27. 1 1 0 1 1 0

28.

1 0 1 1 0 1

29. 1 1 1 1 1 0

30. 1 0 1 1 0 0

31. 0 1 1 1 0 0

32. 1 1 1 1 1 1

Page 42: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

42

33.

1 1 1 1 1 0

34. 1 1 1 1 1 1

35. 1 0 1 1 1 0

36. 1 1 0 0 0 1

37. 1 1 1 0 1 1

38. 0 1 1 0 1 0

39. 0 1 1 1 1 0

40. 0 0 1 0 0 1

41. 1 0 1 1 0 1

42. 1 1 1 1 1 1

43. 1 1 0 1 1 0

44. 1 1 1 1 1 0

45. 0 1 0 1 1 1

46. 1 0 1 1 0 1

47. 1 1 0 1 1 1

48. 1 1 0 1 1 1

49. 1 0 0 1 0 1

50. 1 1 1 0 0 1

51. 1 1 1 0 0 1

52. 1 0 0 1 1 0

53. 1 1 1 1 0 1

54. 1 1 0 0 0 1

55. 1 1 1 1 1 1

56. 1 1 1 0 1 1

57. 1 1 1 1 1 1

58. 1 1 1 0 0 0

59. 1 1 1 1 0 0

60. 1 1 0 1 0 1

61. 0 1 1 1 1 1

62. 0 0 1 1 0 1

63. 0 1 1 0 0 1

64. 0 1 1 1 1 1

65. 0 1 0 0 1 0

66. 0 1 1 1 1 1

67. 1 0 1 0 0 0

68. 1 1 1 1 1 1

69. 0 1 1 1 1 1

70. 1 1 1 0 1 0

71. 1 0 0 0 1 1

72. 1 0 0 0 0 1

73. 1 0 1 0 0 1

74. 0 1 0 0 1 0

75. 0 1 0 0 0 1

Page 43: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

43

76. 1 1 1 1 1 1

77. 1 1 1 1 1 0

78. 1 1 0 1 1 1

79. 1 1 1 1 1 0

80. 1 1 0 1 0 1

81. 1 0 0 0 1 1

82. 0 1 1 0 1 0

83. 1 1 0 0 0 1

84. 0 0 0 0 1 1

85. 0 1 1 1 1 0

86. 1 1 1 1 0 1

87. 1 0 0 1 0 1

88. 1 1 1 1 1 1

89. 1 1 0 1 0 1

90. 1 1 0 1 0 1

91. 0 1 1 1 0 1

92. 0 1 1 1 1 1

93. 0 1 1 0 1 0

94. 1 1 1 0 1 1

95. 1 1 0 1 1 0

96. 1 0 0 1 1 1

97. 1 0 1 0 0 1

98. 1 0 1 1 0 0

99. 1 1 1 1 1 1

100. 1 1 1 0 1 1

101. 1 1 1 1 1 0

102. 1 1 1 0 0 1

103. 0 0 1 1 1 0

104. 0 0 0 0 0 1

% 0,711538 0,740385 0,679612 0,68932 0,625 0,682692

SUM 74 77 70 71 65 71

%-Procenat kola u kojima je pao barem jedan susedan par brojeva

SUM-Broja kola u kojima je pao barem jedan susedan par brojeva

Page 44: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

44

Dogadjaj A-uzastopni su

Dogadjaj B-nisu uzastopni

Nj-koliko puta se desio neki dogadjaj

n*pj0-verovatnoca ishoda(dogadjaja)

1)Primer sa

stvarnim podaci

Dogadjaj A B

Nj 0 622

n*pj0 449,2084 172,7916

(Nj-n*pj0)^2/ (n*pj0) 449,2084 1167,812 1617,021

Hipotezu H0 bismo odbacili da je 3,604423> c=3,841, gde je c kvantil reda 0.95 raspodele X(1)-hi kvadrat. U slučaju stvarnih podataka, ne

odbacujemo je.

2)Primer idealnog uzorka

Dogadjaj A B

Nj 449 173

n*pj0 449,2084 172,7916

(Nj-n*pj0)^2/ (n*pj0) 9,67E-05 0,000251 0,000348

Hipotezu H0 ne odbacujemo jer je 0,000348 < c=3,841

3)Primer kada

uzorak veoma

odskalče od

očekivanog

Dogadjaj A B

Nj 430 241

n*pj0 484,5962 186,4038

(Nj-n*pj0)^2/ (n*pj0) 6,150987 15,9908 22,14178

Hipotezu H0 odbacujemo jer je 22,14178>c=3,841

Page 45: VEROVATNOĆA I STATISTIKA - milanmerkle.etf.rsmilanmerkle.etf.rs/wp-content/uploads/2018/06/LOTO.pdf · VEROVATNOĆA I STATISTIKA 8 Za nizove od 3 uzastopna broja prikazani su samo

VEROVATNOĆA I STATISTIKA

45

Korišćena literatura: http://lotostatistika.rs/ http://www.academia.edu/ Milan Merkle – Verovatnoća i statistika za inženjere i studente tehnike