Autore Topic: Win for life  (Letto 641 volte)

Offline vincenti

  • Gamberetto
  • *
  • Post: 2
    • Mostra profilo
Win for life
« il: 19 Aprile 2012, 16:06:30 »
Salve, come faccio a caricare tutte le combinazioni del win for life?
io ho provato a farlo, ma và in loop:
Citazione
PUBLIC SUB Button1_Click()
g = 0
m = 1
c = 0
j = 1
n = 1
DO WHILE c <> 10
a[c] = m
c = c + 1
m = m + 1
LOOP
m = 0
DO WHILE m <> 10
B[m] = InputBox("Scrivi il numero", "Win for life")
m = m + 1
LOOP
c = c - 1
f = 0
m = 0
DO WHILE a[c - 9] <> 12
g = 0
f = 0
c = 9
IF a[c] <> 20 THEN
a[c] = a[c] + 1
ELSE
IF a[c - 1] <> 19 THEN
a[c - 1] = a[c - 1] + 1
a[c] = a[c - 1] + 1
ELSE
IF a[c - 2] <> 18 THEN
a[c - 2] = a[c - 2] + 1
a[c] = a[c - 2] + 2
a[c - 1] = a[c - 2] + 1
ELSE
IF a[c - 3] <> 17 THEN
a[c - 3] = a[c - 3] + 1
a[c] = a[c - 3] + 3
a[c - 1] = a[c - 3] + 2
a[c - 2] = a[c - 3] + 1
ELSE
IF a[c - 4] <> 16 THEN
a[c - 4] = a[c - 4] + 1
a[c] = a[c - 4] + 4
a[c - 1] = a[c - 4] + 3
a[c - 2] = a[c - 4] + 2
a[c - 3] = a[c - 4] + 1
ELSE
IF a[c - 5] <> 15 THEN
a[c - 5] = a[c - 5] + 1
a[c] = a[c - 5] + 5
a[c - 1] = a[c - 5] + 4
a[c - 2] = a[c - 5] + 3
a[c - 3] = a[c - 5] + 2
a[c - 4] = a[c - 5] + 1
ELSE
IF a[c - 6] <> 14 THEN
a[c - 6] = a[c - 6] + 1
a[c] = a[c - 6] + 6
a[c - 1] = a[c - 6] + 5
a[c - 2] = a[c - 6] + 4
a[c - 3] = a[c - 6] + 3
a[c - 4] = a[c - 6] + 2
a[c - 5] = a[c - 6] + 1
ELSE
IF a[c - 7] <> 13 THEN
a[c - 7] = a[c - 7] + 1
a[c] = a[c - 7] + 7
a[c - 1] = a[c - 7] + 6
a[c - 2] = a[c - 7] + 5
a[c - 3] = a[c - 7] + 4
a[c - 4] = a[c - 7] + 3
a[c - 5] = a[c - 7] + 2
a[c - 6] = a[c - 7] + 1
ELSE
IF a[c - 8] <> 12 THEN
a[c - 8] = a[c - 8] + 1
a[c] = a[c - 8] + 8
a[c - 1] = a[c - 8] + 7
a[c - 2] = a[c - 8] + 6
a[c - 3] = a[c - 8] + 5
a[c - 4] = a[c - 8] + 4
a[c - 5] = a[c - 8] + 3
a[c - 6] = a[c - 8] + 2
a[c - 7] = a[c - 8] + 1
ELSE
IF a[c - 9] <> 11 THEN
a[c - 9] = a[c - 9] + 1
a[c] = a[c - 9] + 9
a[c - 1] = a[c - 9] + 8
a[c - 2] = a[c - 9] + 7
a[c - 3] = a[c - 9] + 6
a[c - 4] = a[c - 9] + 5
a[c - 5] = a[c - 9] + 4
a[c - 6] = a[c - 9] + 3
a[c - 7] = a[c - 9] + 2
a[c - 8] = a[c - 9] + 1
ELSE
n = n + 1
a[c - 9] = a[c - 9] + 1
a[c - 8] = n + 1
a[c - 7] = n + 2
a[c - 6] = n + 3
a[c - 5] = n + 4
a[c - 4] = n + 5
a[c - 3] = n + 6
a[c - 2] = n + 7
a[c - 1] = n + 8
a[c] = n + 9
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
LOOP

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.482
    • Mostra profilo
Re: Win for life
« Risposta #1 il: 19 Aprile 2012, 16:52:16 »
un modo può essere quello che ti allego,

tieni presente che le combinazioni sono molte percui ci vuole un bel po' (una decina di minuti), inoltre il codice è così impegnativo da impere altre operazioni sulla gui.
al centro dei loop trovi un wait che rallenta l' esecuzione ma evita che la gui freeze.

volendo puoi inserire un valore dopo il wait per permette altre operazioni, ma questo vorrà dire un ulteriore aumento del tempo necessario

in questo caso gambas3 è molto più performante (primo file, per gambas2 secondo file)
« Ultima modifica: 19 Aprile 2012, 17:43:42 da fsurfing »