Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Random broj u VB .NET-U

[es] :: .NET :: Random broj u VB .NET-U

[ Pregleda: 4311 | Odgovora: 12 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

01011011

Član broj: 561
Poruke: 2341
*.in.us.prserv.net



+2 Profil

icon Random broj u VB .NET-U27.11.2002. u 06:25 - pre 260 meseci
Kako ovo da odradim, svaka funkcija koju sam proabo mi ne daje integer, meni je potreban integer i broj izmedju 1 i 100

Probao sam ovako

Dim rand As New Random(12345)

pa onda

Dim intValue As Integer = rand.Next(100)


ali mi daje i brojeve kao sto su 65.4 ....32.5 i tako dalje...
Ne kontam..

Kkao da napravim recimo da korisnik pogadja broj od 1 do 100 i da je broj random.
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12851



+4784 Profil

icon Re: Random broj u VB .NET-U27.11.2002. u 17:51 - pre 260 meseci
Pa koristi int funkciju da odseces decimalni deo:

Umesto
Dim intValue As Integer = rand.Next(100)
stavi
Dim intValue As Integer = int(rand.Next(100))

Ja bas i nisam nesto mnogo upoznat sa slucajnim brojevima (pogotovo ako ima razlike izmedju .NET-a i 6-ice) ali ako ti vraca broj sa decimalama onda bi ovo trebalo da resi problem. Inace ja random brojeve koristim po principu:

a=int(100*rnd)+1

ako hocu od 1 do 100
 
Odgovor na temu

degojs

Član broj: 4716
Poruke: 5096



+51 Profil

icon Re: Random broj u VB .NET-U27.11.2002. u 19:39 - pre 260 meseci
Prvo, koristenjem istog semena uvek ces dobiti isti niz slucajnih brojeva.
Drugo, kako uspeva da ti vrati ne-cele brojeve kad sva tri oblika .Next() daju nazad tip Integer?

Za inicijalizaciju semena moze nesto poput:
Dim myRand As New Random(CInt(Now.Ticks And Integer.MaxValue))

Za dobivanje slucajnog broja (integer) izmedju 1 i 100 kasnije koristis:
i = myRand.Next(1,101)

pozdrav
Commercial-Free !!!
 
Odgovor na temu

bOkIcA
Bojan Abramovic
Novi Sad

Član broj: 1808
Poruke: 520
*.179.EUnet.yu

Sajt: www.bokica.com


Profil

icon Re: Random broj u VB .NET-U27.11.2002. u 19:58 - pre 260 meseci
Citat:
degojs:
Prvo, koristenjem istog semena uvek ces dobiti isti niz slucajnih brojeva.


Dim broj As Integer
Dim izaberi As New Random() ' <-- sta je ovde "seme", da li se i ovde desava ista stvar?

broj = izaberi.Next(1, 101)
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12851



+4784 Profil

icon Re: Random broj u VB .NET-U27.11.2002. u 20:24 - pre 260 meseci
Citat:
degojs:
Prvo, koristenjem istog semena uvek ces dobiti isti niz slucajnih brojeva.

pozdrav

To sam i ja primetio. Ne znam zasto (zapravo ne znam kako rade ovi random brojevi) ali sam provalio da kada pokrenes funkciju Randomize pre koriscenja Rnd onda je sve ok brojevi nikad bili samo sam zaboravio da napisem u prethodnom postu

 
Odgovor na temu

degojs

Član broj: 4716
Poruke: 5096



+51 Profil

icon Re: Random broj u VB .NET-U27.11.2002. u 23:15 - pre 260 meseci
Sto se tice New Random() konstruktora, pogledaj u MSDN.

pozdrav
Commercial-Free !!!
 
Odgovor na temu

01011011

Član broj: 561
Poruke: 2341
*.in.us.prserv.net



+2 Profil

icon Re: Random broj u VB .NET-U28.11.2002. u 06:27 - pre 260 meseci
E sd mi jos treba mala pomoc da zavrsim sto sam naumio...
Naime, sve mi radi kako treba mada taj tvoj random broj mi non stop izbaciva broj 71 kao random...ne znam kako???/
hehehe
kako god probam...

I sta me jos interesuje je kako kad je jedno dugme active onako da se moze pritisnuti sa enterom, kako da to prekinem i da posle neke akcije bude neko drugo dugme...

evo code. Pomognite..
Code:

Dim temp As Integer, numberOfGuess As Integer = 0

    Private Sub frmMagicNumber_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        temp = Int(100 * Rnd()) + 1
        numberOfGuess = 0
        btnNewGame.Hide()

    End Sub

    Private Sub btnGuess_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuess.Click
        Dim guess As Integer, intValue As Integer
        guess = txtGuess.Text

        intValue = temp

        numberOfGuess = numberOfGuess + 1
        If (IsNumeric(intValue)) Then
            If Val(intValue) > guess Then
                lblGuess.Text = guess & " is too LOW, try again."
            ElseIf Val(intValue) < guess Then
                lblGuess.Text = guess & " is too HIGH, try again."
            Else
                lblGuess.Text = "You got it in " & numberOfGuess & " tries."
                btnNewGame.Show()
            End If
        End If

    End Sub

    Private Sub btnNewGame_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNewGame.Click
        txtGuess.Text = Nothing
        numberOfGuess = Nothing
        lblGuess.Text = Nothing
    End Sub
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12851



+4784 Profil

icon Re: Random broj u VB .NET-U28.11.2002. u 08:41 - pre 260 meseci
Pa da ti ne bi izbacio stalno 71 pre svake upotrebe (mada bi trebalo da je dovoljno samo jednom) funkcije Rnd pokreni jednom funkciju Randomize.

 
Odgovor na temu

degojs

Član broj: 4716
Poruke: 5096



+51 Profil

icon Re: Random broj u VB .NET-U28.11.2002. u 08:49 - pre 260 meseci
Mozda bi bilo pametno, zbog kompatibilnosti sa ostalim jezicima na .NET platformi, sto manje koristiti stvari vezane specificno za VB, cak bih predlozio izbacivanje referenci na Microsoft.VisualBasic ... al' dobro, tvoja odluka :)

Ubaci jedno randomize(timer) u Load dogadjaj forme pre dobivanja slucajnog broja.
Sto se setovanja fokusa tice... button.focus bi trebalo da radi.

Nisam proverio odgovore, ali trebalo bi da je to sto tebi treba:)

Commercial-Free !!!
 
Odgovor na temu

01011011

Član broj: 561
Poruke: 2341
*.in.us.prserv.net



+2 Profil

icon Re: Random broj u VB .NET-U29.11.2002. u 09:17 - pre 260 meseci
Super, evo forum je bio down nekoliko dana, pa nisam mogao nista da postavim, ovo sa FOCUS mi radi, hvala mnogo, i Randomize() mi radi
stavio sam ovako...

Code:

  Dim temp As Integer, numberOfGuess As Integer = 0

    Private Sub frmMagicNumber_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        Randomize()
        temp = Int(100 * Rnd()) + 1
        numberOfGuess = 0
        btnNewGame.Hide()

    End Sub

    Private Sub btnGuess_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuess.Click
        Dim guess As Integer, intValue As Integer
        guess = txtGuess.Text

        intValue = temp

        numberOfGuess = numberOfGuess + 1
        If (IsNumeric(intValue)) Then
            If Val(intValue) > guess Then
                lblGuess.Text = guess & " is too LOW, try again."
            ElseIf Val(intValue) < guess Then
                lblGuess.Text = guess & " is too HIGH, try again."
            Else
                lblGuess.Text = "You got it in " & numberOfGuess & " tries."
                btnNewGame.Show()
                btnNewGame.Focus()
            End If
        End If

    End Sub

    Private Sub btnNewGame_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNewGame.Click
        txtGuess.Text = Nothing
        numberOfGuess = Nothing
        lblGuess.Text = Nothing

    End Sub



E sada sta je problem, daje on meni random number i sve je to cool, medjutim kada kliknem na New Game, na kraju onda mi ponavlja isti broj koji sam prvi put gadjao i ne daje mi novi broj sve dok ne bude nova forma se ulodovala, i napravila...???
Kako da ovo resim,....
 
Odgovor na temu

degojs

Član broj: 4716
Poruke: 5096



+51 Profil

icon Re: Random broj u VB .NET-U01.12.2002. u 05:57 - pre 260 meseci
Pa valjda bi trebalo da kompjuter 'zamisli' novi slucajni broj svaki put kad kliknes dugme New game, a ne samo u frmMagicNumber_Load...

Commercial-Free !!!
 
Odgovor na temu

01011011

Član broj: 561
Poruke: 2341
*.in.us.prserv.net



+2 Profil

icon Re: Random broj u VB .NET-U01.12.2002. u 10:01 - pre 260 meseci
I nisam veoma dobar sa VB pocetnik sam, kako da to napravim ?
 
Odgovor na temu

degojs

Član broj: 4716
Poruke: 5096



+51 Profil

icon Re: Random broj u VB .NET-U01.12.2002. u 17:45 - pre 260 meseci
S obzirom na kompjuterske vestine navedene u tvom profilu ne vidim da bi ti to trebao biti problem.


Ne znam zasto, ali cini mi se da mi resavamo tvoj asajment sa koledza?
Commercial-Free !!!
 
Odgovor na temu

[es] :: .NET :: Random broj u VB .NET-U

[ Pregleda: 4311 | Odgovora: 12 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.