Novità

x LuigiB Richiesta Info

  • Creatore Discussione Creatore Discussione Roby
  • Data di inizio Data di inizio
R

Roby

Guest
Ciao LuigiB

vorrei chiederti una informazione: parliamo di Permutazioni.

sto provando quanto segue:

classe = 2
numeri o gruppi = 14
ottengo n.permutazioni = 182
okey

----------------------------------------------------

SE CHIEDO invece
classe = 2
numeri o gruppi = 15
ottengo invece un msg di errore = 6-Overflow

----------------------------------------------------

sai da cosa potrebbe dipendere? è un errore nel mio script? o c'è un limite di permutazioni?


solo per la classe = 2 ?

grazie per una eventuale risposta.
 
Ultima modifica:
Ciao LuigiB

vorrei chiederti una informazione: parliamo di Permutazioni.

sto provando quanto segue:

classe = 2
numeri o gruppi = 14
ottengo n.permutazioni = 182
okey

----------------------------------------------------

SE CHIEDO invece
classe = 2
numeri o gruppi = 15
ottengo invece un msg di errore = 6-Overflow

----------------------------------------------------

sai da cosa potrebbe dipendere? è un errore nel mio script? o c'è un limite di permutazioni?


solo per la classe = 2 ?

grazie per una eventuale risposta.



Il fatto è che le permutazioni generano un tale numero di combinazioni che il computer non è maco capace di calcolarle ...e va in overflow ovvero la variabile non è in grado di contenere il valore
che gli si vuole assegnare
ciao
 
Ma no, guarda che se chiedo

classe = 3
gruppi = 15

me li calcola tranquillamente

è solo per la classe = 2
 
il limite mi sembra stabilito a 15 gruppi

per la classe 3,4,5 funziona regolarmente

per la classe 2 va in overflow

così come se, si fa la scelta > dei 15 gruppi sopra indicati, vanno tutte in overflow.


questo è il semplice script

Codice:
Option Explicit
Sub Main
	Dim COLONNE,ClassE,T,SCOLONNA,K,J,X,NP
	Dim NUMERI(27)
	ClassE = 5
	For X = 1 To 15
	NUMERI(X) = X
	Next
	Scrivi " CLASSE " & ClassE
	Scrivi " ToT.gruppi o numeri..." & X-1

	COLONNE = SviluppoPermutazioni(NUMERI,ClassE)
	T = UBound(COLONNE)
	Scrivi " TOTALE PERMUTAZIONI CALCOLATE " & T,1
	
	For K = 1 To UBound(COLONNE)
		SCOLONNA = ""
		For J = 1 To ClassE
			SCOLONNA = SCOLONNA & Format2(COLONNE(K,J)) & " "
		Next
	Scrivi Format2(K) & "....." & SCOLONNA
	Next

End Sub


domanda: se per caso devi mettere mano a qualcosa, potresti fare in modo che 90 numeri / possano essere divisi per classe = 5 e

quindi in 18 gruppi????
e non fermarsi a 15 gruppi?????



quindi

COLONNE = SviluppoPermutazioni(numeri = 18,ClassE = 5) ?????
 
il limite mi sembra stabilito a 15 gruppi

per la classe 3,4,5 funziona regolarmente

per la classe 2 va in overflow

così come se, si fa la scelta > dei 15 gruppi sopra indicati, vanno tutte in overflow.


questo è il semplice script

Codice:
Option Explicit
Sub Main
	Dim COLONNE,ClassE,T,SCOLONNA,K,J,X,NP
	Dim NUMERI(27)
	ClassE = 5
	For X = 1 To 15
	NUMERI(X) = X
	Next
	Scrivi " CLASSE " & ClassE
	Scrivi " ToT.gruppi o numeri..." & X-1

	COLONNE = SviluppoPermutazioni(NUMERI,ClassE)
	T = UBound(COLONNE)
	Scrivi " TOTALE PERMUTAZIONI CALCOLATE " & T,1
	
	For K = 1 To UBound(COLONNE)
		SCOLONNA = ""
		For J = 1 To ClassE
			SCOLONNA = SCOLONNA & Format2(COLONNE(K,J)) & " "
		Next
	Scrivi Format2(K) & "....." & SCOLONNA
	Next

End Sub


domanda: se per caso devi mettere mano a qualcosa, potresti fare in modo che 90 numeri / possano essere divisi per classe = 5 e

quindi in 18 gruppi????
e non fermarsi a 15 gruppi?????



quindi

COLONNE = SviluppoPermutazioni(numeri = 18,ClassE = 5) ?????

non lo so devo vedere quante combinazioni sviluppano .. c'è il rischio che siano troppe ...
 
5.273.912.160 sono le permutazioni di classe 5 con 90 numeri , con 18 sono poco piu di un milione ...
se questo era qelllo che volevi
 
Ultima modifica di un moderatore:
ciao Luigib

penso che vada più che bene.

prova comunque che funzioni

la classe = 2 per il 18 gruppi = 306 permutazioni
classe = 2 306
classe = 3 4896
classe = 4 73440
classe = 5 1028160


salvo miei errori dovrebbero essere questi i valori.
 
Ultima modifica:
con la nuova versioen prova questo script che deriva da quelo che avevi fatto tu

Codice:
Option Explicit
Sub Main
	Dim COLONNE,Classe,T,SCOLONNA,K,J,X,NP
	Dim NUMERI(90)
	Classe = 3
	For X = 1 To 90
		NUMERI(X) = X
	Next
	Scrivi " CLASSE " & Classe
	Scrivi " ToT.gruppi o numeri..." & X - 1
	If MsgBox("Sviluppo in memoria (non adatto a sviluppi di combinazioni elevate) ?",vbQuestion + vbYesNo) = vbYes Then
		COLONNE = SviluppoPermutazioni(NUMERI,Classe)
		T = UBound(COLONNE)
		Scrivi " TOTALE PERMUTAZIONI CALCOLATE " & T,1
		For K = 1 To UBound(COLONNE)
			SCOLONNA = ""
			For J = 1 To Classe
				SCOLONNA = SCOLONNA & Format2(COLONNE(K,J)) & " "
			Next
			Scrivi Format2(K) & "....." & SCOLONNA
		Next
	Else
		T = InitSviluppoPermutazioni(NUMERI,Classe)
		Scrivi " TOTALE PERMUTAZIONI CALCOLATE " & T,1
		
		ReDim aColonna(0)
		Do While GetCombPermutazioni(aColonna)
			K = K + 1
			SCOLONNA = ""
			For J = 1 To Classe
				SCOLONNA = SCOLONNA & Format2(aColonna(J)) & " "
			Next
			Scrivi Format2(K) & "....." & SCOLONNA
			Call AvanzamentoElab( 1 , T , K)
			If ScriptInterrotto  Then Exit Do 
			DoEventsEx
			
		Loop
	End If
End Sub
 
Ultima modifica di un moderatore:

Ultima estrazione Lotto

  • Estrazione del lotto
    lunedì 04 maggio 2026
    Bari
    22
    24
    23
    33
    09
    Cagliari
    40
    15
    22
    90
    51
    Firenze
    70
    02
    71
    41
    40
    Genova
    51
    80
    25
    69
    30
    Milano
    23
    28
    89
    02
    64
    Napoli
    16
    54
    41
    08
    56
    Palermo
    18
    25
    11
    66
    36
    Roma
    28
    07
    03
    47
    76
    Torino
    72
    24
    01
    07
    70
    Venezia
    10
    80
    17
    69
    13
    Nazionale
    06
    39
    41
    42
    38
    Estrazione Simbolotto
    Milano
    18
    31
    25
    04
    14
Indietro
Alto