Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Incalzire in pardoseala etapizata

Suprataxa card energie?!

Cum era nivelul de trai cam din a...

probleme cu ochelarii
 Impozite pe proprietati de anul v...

teava rezistenta panou apa calda

Acces in Curte din Drum National

Sub mobila de bucatarie si sub fr...
 Rezultat RMN

Numar circuite IPAT si prindere t...

Pareri brgimportchina.ro - teapa ...

Lucruri inaintea vremurilor lor
 Discuții despre TVR Sport HD.

Cost abonament clinica privata

Tremura toata, dar nu de la ro...

Renault Android
 

Random VisualBasic 6.

- - - - -
  • Please log in to reply
8 replies to this topic

#1
Wiggle

Wiggle

    Member

  • Grup: Members
  • Posts: 296
  • Înscris: 22.05.2014
Am un joc care arata cam asa :

[ https://i.imgur.com/Z3fuZuN.png - Pentru incarcare in pagina (embed) Click aici ]
Cum fac ca de fiecare data cand pornesc jocul sa mi se genereze valori random pentru fiecare casuta. Eu am initializat fiecare pozitie in felul urmator :
a(0) = 5
a(1) = 6
a(2) = 9
a(3) = 2
a(4) = 8
a(5) = 3
.....
.....

Am incercat sa fac ca in exemplu urmator doar ca nu imi recunoaste functia.
ex: ' Initialize the random-number generator.
Randomize()
' Generate random value between 1 and 6.
Dim value As Integer = CInt(Int((6 * Rnd()) + 1))

Edited by Wiggle, 19 January 2016 - 14:57.


#2
robbie_ro

robbie_ro

    Active Member

  • Grup: Members
  • Posts: 1,840
  • Înscris: 24.08.2004
Eu nu as genera valori random. Ma gandesc ca exista o oarecare sansa de a-mi genera de doua ori acelasi numar. Mai degraba as defini un array cu cele 15 numere si as modifica pozitiile celor 15 elemente in array (nu stiu cum se face exact in VB, in PHP este shuffle).

La o cautare rapida am gasit urmatorul cod (pentru array cu 10 elemente):
'PURPOSE OF CODE
'TO RANDOMLY SHUFFLE CONTENTS OF AN ARRAY
'SIZE AND TYPE OF ARRAY DOES NOT MATTER
'FOR THIS EXAMPLE I WILL USE A 9 ELEMENT ARRAY OF INTEGERS
	Dim b(9) As Integer 'dimension array with 9 integer elements
   
	'populate array element i with integer i
	For i = 0 To 9
		b(i) = i
	Next i
   
	Randomize Timer 'intialize random number generator
	   
	'swap array element i with a random element
	For i = 0 To 9
		rnum = Int(Rnd * (UBound(B) - LBound(B) + 1) + LBound(B)) 'generate random number and store as variable rnum
		temp = b(i) 'temporarily store array element i to a variable called temp
		b(i) = b(rnum) 'set array element i equal to random array element rnum
		b(rnum) = temp 'set array element rnum to old value of array element i stored as temp
	Next i
	
	'test that array elements were shuffled
	For i = 0 To 9
		Debug.Print b(i)
	Next i


Edited by robbie_ro, 19 January 2016 - 15:18.


#3
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,383
  • Înscris: 10.08.2005
acea vaoare si text-ul de pe buton sunt doua lucruri diferite?

#4
Wiggle

Wiggle

    Member

  • Grup: Members
  • Posts: 296
  • Înscris: 22.05.2014

View PostMarianG, on 19 ianuarie 2016 - 15:19, said:

acea vaoare si text-ul de pe buton sunt doua lucruri diferite?
Acel buton este un CommandButton iar acele valori sunt generate de mine astfel :
Private Sub Form_Load()
Dim index, num As Integer
Dim a(14) As Integer
a(0) = 5
a(1) = 6
a(2) = 9
a(3) = 2
a(4) = 8
...
...

Edited by Wiggle, 19 January 2016 - 15:25.


#5
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,383
  • Înscris: 10.08.2005
pune toata rutina de la Load,
ca din puncte puncte nu inteleg cand ai pretentia se se schibme butonul

random cand faci?

Edited by MarianG, 19 January 2016 - 15:32.


#6
Wiggle

Wiggle

    Member

  • Grup: Members
  • Posts: 296
  • Înscris: 22.05.2014
Private Sub Form_Load()
Dim index, num As Integer
Dim a(14) As Integer
a(0) = 5
a(1) = 6
a(2) = 9
a(3) = 2
a(4) = 8
a(5) = 3
a(6) = 7
a(7) = 15
a(8) = 1
a(9) = 11
a(10) = 13
a(11) = 4
a(12) = 10
a(13) = 12
a(14) = 14
Dim exist As Boolean
index = 0
For i = 0 To 14
Command1(i).Caption = a(i)
Next i
End Sub


Ideea este ca eu vreau ca numerele sa se schimbe automat la fiecare accesare a jocului.
Am incercat cu functia randomize() dar nu am reusit.

#7
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,383
  • Înscris: 10.08.2005
pai arata-ne partea  cu ramdomize

#8
Wiggle

Wiggle

    Member

  • Grup: Members
  • Posts: 296
  • Înscris: 22.05.2014
Pai asta nu reusesc sa fac. Am incercat ca in exemplul urmator dar nu functioneaza

' Initialize the random-number generator.
Randomize()
' Generate random value between 1 and 6.
Dim value As Integer = CInt(Int((6 * Rnd()) + 1))

#9
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,383
  • Înscris: 10.08.2005
si unde anume ai scris bucata aia de cod ?

ce faci cu value dupa asta?

Anunturi

Bun venit pe Forumul Softpedia!

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate