27/12/07 0:02
P4p3r0g4
la cosa piu facile da fare è allora quella di scartare l'ultima combinazione che fa "sballare" il tutto e ripeterla.
una sottospecie di bastardata.
creiamo un caos meno caotico.
la cosa invece piu intelligente è decidere una frequenza di uscite. ad esempio se i primi tot non soddisfano alcuni filtri la probabilità di uscita di certi numeri (che invece soddisfano questi filtri) sia notevolmente aumentata.
aaa
27/12/07 23:45
cesco_fran
img297.imageshack.us/img297/5755/…
In pratica questa è una "primissima" e "grezza" facciata
Per far rendere l'idea di come far funzionare questi filtri.
In sostanza, cliccando su "Estrazione", il programma com'è estrae 6 numeri sui primi 90 tutti diversi.
Man mano che si "aziona" un filtro, questa combinazione diventa si random, ma pilotata.
Qui ho messo solo 2 esempi di "filtri", ma sono diversi quelli che ho pensato.
Tornando a questi primi che ho proposto, il primo ti permette di scegliere quanti numeri pari nella combinazione debbono essere presenti (in quantità minima e massima).
Il secondo è un "filtro" che mette un paletto sui numeri consecutivi. Esempio: come combinazione sarà difficilissimo avere come combinazione 1,2,3,4,5,6.
Ma il senso di questo filtro è quello di far escludere anche un eventualità del genere o simili.
infatti si può impostare quanti numeri consecutivi possono esserci. Mettiamo per esepio che lo impostiamo su 3, tutte le combinazioni che hanno come risultato 3 numeri consecuti, vengono scartate e fanno ricominciare l'estrazione.
Ovviaente ad ogni risultato negativo di questi filtri, il percorso ricomincia da capo.
Non so se ora può essere più chiaro il "tipo" di programmino che avevo in mente, però voglio dirvi grazie per la disponibilità che state dimostrando ed onestamente non pensavo. Grazie a tutti.
PS se trovate 2000 modifiche è perchè stavo tentando di mettere una immagine
..scusatemi!
Ultima modifica effettuata da cesco_fran 27/12/07 23:57
aaa
28/12/07 9:51
LuigiBiasi
Ciao credo che cosi dovrebbe funzionare:
Nel form ho messo due textbox e un bottone.
Private Sub Command1_Click()
Dim MyValue(5) As Integer
Dim k As Integer
Dim vall As Integer
vall = CInt(Text1.Text)'numero massimo di numeri pari che devono esserci
If vall > 6 Then
MsgBox ("hai inseriro un numero sbagliato")
Exit Sub
End If
Dim c(1000) As Boolean
k = 0 'k conosce quanti numeri pari c sono nella generazione dei numeri casuali
Randomize
While Not (k = vall)' oppure while (k<vall)
For i = 0 To vall - 1
c(i) = False
Next i
For i = 0 To 5
MyValue(i) = Int((90 * Rnd) + 1)
Next i
For i = 0 To 5
If (MyValue(i) Mod 2) = 0 Then
If k < vall Then
c(k) = True
k = k + 1
Else
MyValue(i) = Int((90 * Rnd) + 1)
' oppure MyValue(i)+ 1 oppure MyValue(i)*2 ed elimini la riga successiva
i = i - 1
End If
End If
Next i
Wend
For i = 0 To 5
Text2.Text = Text2.Text & MyValue(i) & " "
Next i
End Sub
Poi lo sistemi tu...
Ah questo è solo per il primo filtro.
...c'è solo un problema cioè non bada a vedere se ci sono valori uguali, è importante?
Ciao.
Ultima modifica effettuata da LuigiBiasi 28/12/07 18:18
aaa
04/01/08 10:43
GrG
Buon anno anke a te!
Cmq il codice di Luigi a me funziona...Assicurati di aver messo le 2 textbox e un pulsante e ricordati ke nella text1 devi mettere il numero massimo di numeri pari che devono esserci nell'estrazione...
Quindi se tu scrivi 3 nella text1 nella text2 compariranno i 6 numeri ma 3 di questi saranno pari...
e cmq poi tu avevi fatto un'affermazione:
-----------------------
Qui ho messo solo 2 esempi di "filtri", ma sono diversi quelli che ho pensato.
-----------------------
Ma allora quali sono i "filtri" che veramente vorresti?
Ultima modifica effettuata da GrG 04/01/08 10:46
aaa
04/01/08 10:50
LuigiBiasi
ciao hai provato ad utilizzare il codice che ti ho postato...
Quel codice estrae una sequenza di 6 numeri e inserisce numeri pari in base a quelli richiesti. Non puoi ogni volta generare una nuova sequenza fin quando non trova la sequenza giusta in base al filtro!!!! è una cosa improponibile secondo me!!
forse potrebbe andare con l'applicazione di un filtro, massimo due, ma se i filtri sono molti.... non credo sia fattibbile. Io la penso cosi, poi se voi avete altre idee, o la pensate diversamente sono felice di vedere le vostre soluzioni.
Prova a vederti il codice che ti ho postato qualche tempo fa(vedi più sopra).
Ciao.
Ultima modifica effettuata da LuigiBiasi 04/01/08 11:04
aaa
05/01/08 16:26
gvigliani
Forse non ho capito bene, ma mi sembra che tu stia cercando di crere un programma per lo sviluppo di un sistema per Superenalotto??? Se si fatti sentire. Io ne ho gia' sviluppato uno ( anche se nella compilazione ho combinato un casino che mi ha cancellato i sorgenti) e se vuoi ti mando la cartella contenete l'eseguibile . Mancano alcuni file ocx che se mi informerai man mano ti mandero'.
Ciao
aaa