Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [VB] random che non si ripeta

    ciao. vi spiego: in vb ho una stringa e separo le parole, poi vorrei riportarle in maniera casuale ma senza che si ripetino. ho provato una robaccia ma assolutamente non funziona, ecco cosa avevo fatto:

    codice:
     
    Frase = Text1.Text
    a = Split(Frase, " ")
    Parola = a(Rnd())
    Parola1 = a(Rnd())
    
    For i = 1 To UBound(a)
        If Parola <> Parola1 Then
        Text2.Text = Text2.Text + Parola1 & " "
        Parola1 = a(Rnd())
        End If
    Next i
    avevo pensato di memorizzare il valore in una variabile e controllarlo a ogni ciclo...
    :master:

  2. #2
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    punto 1)

    per variare il seme di generazione dei numeri random devi mettere RANDOMIZE prima di chiamare la funzione random

    Punto 2)
    la funzione Rnd non serve per fare gli arrotondamenti?

    Punto 3)
    Se la tua frase è "Hello World!" nella matrice ti trovi 2 valori e se il numero random ti da un indice 35626 che fai?

    quindi dovresti limitare i numeri random generabili al limite massimo della matrice di valori che ti generi e poi fare un ciclo meno contorto di quello che hai realizzato

    :adhone:

  3. #3
    Utente di HTML.it L'avatar di JamesD
    Registrato dal
    Oct 2001
    Messaggi
    415
    Originariamente inviato da darkblOOd
    Punto 2)
    la funzione Rnd non serve per fare gli arrotondamenti?
    No. Ti sei confuso con la ROUND

    Ciaoz

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.