salve ragazzi, ciao moderatori
ho un problema sul codice. Vorrei generare una stringa di caratteri casuali (pseudo) inframezzati con un numero casuale di punti
(es: fgf.fdd....ffgf.òròeòeàr...re.e.hlgàe...w.à.e.e... w...e......e.rer.ekjhk.hjkhwk.kkkhe.)
codice:Dim a1 As Integer Dim b1 As Integer Dim c1 As Integer Dim as1 As String Dim mp1 As Single Dim Rc1 As String Dim Rp1 As String as1 = "" a1 = 100 b1 = 280 Randomize Timer c1 = Int((b1 - a1 + 1) * Rnd + a1) Randomize Timer For k = 1 To c1 mp1 = Int((10 - 1 + 1) * Rnd + 1) Rc1 = RandomCar(mp1, 33, 125) Rp1 = RandomPunt(1, 10) as1 = as1 & Rc1 & Rp1 Next k
le funzioni RandomCar e RandomPunt sono:
il problema è che la stringa in uscita 'as1' mi ritorna una sequenza ripetuta di caratteri uguali.codice:'RESTITUISCE UN NUMERO n DI CARATTERI A CASO CON CODICE COMPRESO TRA 'a' e 'b' Public Function RandomCar(n As Single, a As Single, b As Single) As String Dim r As Single Dim f As Single Dim RCar As String RCar = "" Randomize timer For f = 1 To n r = Int((b - a + 1) * Rnd + a) RCar = RCar & Chr(r) Next f RandomCar = RCar End Function 'RESTITUISCE UNA STRINGA COMPOSTA DA UN NUMERO A CASO DI PUNTI n COMPRESO TRA a e b Public Function RandomPunt(a As Integer, b As Integer) As String Dim n As Integer Dim p As Integer Dim np As String Randomize Timer n = Int((b - a + 1) * Rnd + a) RandomPunt = String(n, ".")
Non riesco a capire dove sbaglio

Rispondi quotando