IZBORNIK HOME FORUM ACCESS EXCEL WORD KAZALO
   
  Kazalo Visual basic
1 Visual Basic 6.0 UVOD
2 Varijable i konstante
3 Prihvat i ispis podataka
4 Nizovi podataka
5 Upis i čitanje iz datoteke
6 Slučajni brojevi
7 Logička provjera
8 Pretvaranje i izdvajanje podataka
9 Programske petlje
10 Potprogrami i funkcije
11 Grafika u VB
12 Multimedija u VB
13 Razni primjeri
   
.17
.
AutoCad tutoriali

-

.
.

Adsense sponzor



VB - Visual Basic za početnike i neznalice - VBA for dummies

VB - VISUAL BASIC 6.0
SLUČAJNI BROJEVI

Search This Web Site

Adsense sponzor






OBJAŠNJENJE


Slučajni brojevi su brojevi koji se generiraju slučajno i koje ne možemo predvidjeti.
U programiranju nam povremeno može zatrebati da računalo generira neki slučajan broj.
Na primjer, ako želimo napraviti program koji će generirati slučajne brojeve za Loto i slično.

Za generiranje slučajnih brojeva koristimo iskaz RANDOMIZE i funkciju RND:

RANDOMIZE n
je iskaz za uključenje generatora slučajnih brojeva, gdje je n cijeli broj (sjeme za generiranje brojeva). Generator u praksi najčešće uključujemo sa:

RANDOMIZE Timer

gdje je Timer funkcija koja nam vraća broj sekundi proteklih od početka dana...


RND

je funkcija koja daje slučajan decimalan broj manji od 1
(npr: 0.000000 ... 0.001542 ... 0.512300 ... 0.999999).

Za generiranje cijelog slučajnog broja možete koristiti formulu:
x = Int((najveciBroj - najmanjiBroj + 1) * Rnd + najmanjiBroj)

Dakle, funkcijom Int dobiveni decimalan broj pretvaramo u cijeli broj.
  

PRIMJER GENERIRANJA SLUČAJNIH BROJEVA - Program LOTO


ZADATAK: Napiši program koji će na formi imati objekte:
- Label1 (svojstvo Caption = "Loto 6/45")
- Text1 (svojstvo Multiline = True)
- Command1 (svojstvo Caption = "Generiraj brojeve")

Kada korisnik klikne na dugme Command1 program treba generirati 6 slučajnih brojeva između 1 i 45 te ih ispisati u Text1.


PROGRAMSKI KOD OBJAŠNJENJE PROGRAMA
Randomize Timer
Text1.Text = ""
For i = 1 To 6
       x = Int(45 * Rnd + 1)
       Text1.Text = Text1.Text & x & vbCrLf
Next i
'uključenje generatora slučajnih brojeva
'brisanje sadržaja iz TextBoxa
'programska petlja sa 6 ponavljanja
'generiranje slučajnog broja (između 1 i 45)
'ispis generiranog slučajnog broja u TextBox
'DETALJI:
   Int - pretvara decimalni broj u cijeli broj
   45 * Rnd - generira broj između 0.0000 i 44.9999
   +1 - da se izbjegne 0 i omogući 45

 

  

PRIMJER GENERIRANJA SLUČAJNIH BROJEVA - Program VJEŽBA MNOŽENJA


ZADATAK: Napiši program koji će na formi imati ove objekte:
- Label1 (svojstvo Caption = "VJEŽBA MNOŽENJA")
- Label2 (svojstvo Caption = "*" - znak množenja!)
- Label3 (svojstvo Caption = "=" - znak jednakosti!)
- Text1 (za upis prvog generiranog broja)
- Text2 (za upis drugog generiranog broja)
- Text3 (za prihvat odgovora korisnika)
- Command1 (svojstvo Caption = "Postavi zadatak")
- Command2 (svojstvo Caption = "Provjeri odgovor")

Kada korisnik klikne na dugme Command1 program treba generirati dva slučajna broja između 0 i 10 i upisati ih u Text1 i Text2. Nakon što korisnik upiše svoj odgovor u Text3 i klikne na dugme Command2, program provjerava da li je odgovor ispravan i o tome daje obavijest u MsgBoxu.


PROGRAMSKI KOD OBJAŠNJENJE PROGRAMA
Private Sub Command1_Click()
     Randomize Timer
     a = Int(Rnd * 10)
     b = Int(Rnd * 10)
     Text1.Text = a
     Text2.Text = b
     Text3.Text = ""

End Sub

Private Sub Command2_Click()

     a = Val(Text1.Text)
     b = Val(Text2.Text)
     odgovor = Val(Text3.Text)
     c = a * b
     If odgovor = c Then
          MsgBox "Odgovor je točan!"
     Else
          MsgBox "Odgovor NIJE točan!"
     End If

End Sub

'uključenje generatora slučajnih brojeva
'generiranje prvog slučajnog broja (između 1 i 10)
'generiranje drugog slučajnog broja (između 1 i 10)
'upis prvog slučajnog broja u Text1
'upis drugog slučajnog broja u Text2
'brisanje starog odgovora u Text3



'prihvat prvog zadanog broja iz Text1
'prihvat drugog zadanog broja iz Text2
'prihvat odgovora korisnika u varijablu odgovor
'izračun točnog odgovora za daljnju provjeru:
'ako je odgovor = c (korisnik točno izračunao)
'     ispiši poruku "Odgovor je točan!"
'ako je odgovor <> c (korisnik netočno izračunao)
'     ispiši poruku "Odgovor NIJE točan!"
'kraj logičke provjere

Adsense sponzor







Adsense sponzor



  Ova web stranica koristi COOKIES - COPYRIGHT - 2006 - 2017 - IvanC - ic.ims.hr