Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Cum curat gletul de pe perete

Muzica trance

Soluție incalzire apartament...

Culori fire la boxele de jogger
 Autorizatie Birou Acte Auto

Parbriz defect

Ajutor cercetare lucrare de diser...

M-am culcat cu un tip și apo...
 Facultate din Bucuresti posibil o...

Eroare steering

Recomandare service pentru repara...

Premier Energy se listeaza la bursa
 Unde recomandati un CT cu Casa de...

Adaptare masina pentru o persoana...

Bios laptop Myria MY8315

Folie display laptop in Bucuresti?
 

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,841
  • Î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,482
  • Î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,482
  • Î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,482
  • Î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,482
  • Înscris: 10.08.2005
si unde anume ai scris bucata aia de cod ?

ce faci cu value dupa asta?

Anunturi

Neurochirurgie minim invazivă Neurochirurgie minim invazivă

"Primum non nocere" este ideea ce a deschis drumul medicinei spre minim invaziv.

Avansul tehnologic extraordinar din ultimele decenii a permis dezvoltarea tuturor domeniilor medicinei. Microscopul operator, neuronavigația, tehnicile anestezice avansate permit intervenții chirurgicale tot mai precise, tot mai sigure. Neurochirurgia minim invazivă, sau prin "gaura cheii", oferă pacienților posibilitatea de a se opera cu riscuri minime, fie ele neurologice, infecțioase, medicale sau estetice.

www.neurohope.ro

1 user(s) are reading this topic

0 members, 1 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