Gå til innhold

Anbefalte innlegg

Skrevet (endret)

Hei

 

Jeg driver på med et program som jeg trenger random funksjon på

 

kansje litt dorlig forklart men takk for all hjelp :D

 

 

 

Hilsen en som er helt Fersk på VB men har laget noen ting

Endret av VB6_NEW USER
Videoannonse
Annonse
Skrevet (endret)

lager en funksjon til deg jeg, lim inn denne i formen din, og kall den fra hvor du vil.. (denne vil kunne takle heltall)

 

funksjon:

Private Function RandomNumber(min As Long, max As Long) As Long
   Dim diff As Long
   diff = Abs(max - min) + 1
   Randomize
   RandomNumber = Int(Rnd() * diff) + min
End Function

 

så kan du kalle denne funksjonen fra hvor du vil i formen din, feks fra en knapp :

Private Sub Command1_Click()
   Dim MittTillfeldigeTall As Long
   MittTillfeldigeTall = RandomNumber(2, 5)
End Sub

 

Nå vil variabelen MittTillfeldigeTall få en tilfeldig verdi mellom 2 og 5

 

EDIT : for å gjøre dette litt enklere, så valgte jeg i dette eksempelet å putte Randomize metoden inn i funksjonen. Det er egentlig riktigere å fjerne den fra funksjonen, og bare bruke den når du starter opp applikasjonen, dvs. putte den i Form_Load-eventet

Endret av dga01
Skrevet

rnd er et random tall som windows lager. Randomize Timer genererer et nytt tall. Tallet er fra 0 til 1.

 

dette er feil.

 

rnd() er en funksjon som returnerer et tilfeldig (vel, egentlig ikke tilfeldig, men plukker et tall fra "seeden" til randomize-metoden) flyttall mellom 0 og 1

 

Randomize er en sub (eller metode om du vil) som genererer en ny "seed" (tallrekke), basert på klokkeslettet i datamaskinen din (hvis du ikke angir argument). Det opsjonelle argumentet (i ditt tilfelle Timer) er bare til forvirring, og har aldri skjønt hva jeg skal bruke denne til.

Skrevet

hva mener du?

 

at du skal bruke svaret i en tekststreng? hvis det er tilfelle, så vil dette fungere..

EKS :

Dim minTekst as String
minTekst = "Det tilfeldige tallet er " & RandomNumber(2, 5) & "!"

Skrevet

la oss si at jeg skal ha programmet til og velge mellom tre meldinger vi sier 1 : Hey 2: Halla og 3 : hey

 

ehh ja...

 

lag et nytt prosjekt, og lim inn alt dette i koden til formen din (kun dette) :

Option Explicit

Private Sub Form_Load()
   Randomize
   Select Case RandomNumber(1, 3)
       Case 1:
           MsgBox "Hei"
       Case 2:
           MsgBox "Halla"
       Case 3:
           MsgBox "Hey"
   End Select
End Sub

Private Function RandomNumber(min As Long, max As Long) As Long
   Dim diff As Long
   diff = Abs(max - min) + 1
   RandomNumber = Int(Rnd() * diff) + min
End Function

 

 

er det slik du vil ha det??

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...