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
    martedì 05 maggio 2026
    Bari
    13
    20
    43
    72
    40
    Cagliari
    88
    50
    81
    43
    47
    Firenze
    60
    32
    13
    23
    06
    Genova
    71
    19
    22
    55
    39
    Milano
    14
    09
    22
    16
    19
    Napoli
    51
    69
    89
    62
    46
    Palermo
    68
    78
    38
    27
    44
    Roma
    20
    47
    62
    56
    34
    Torino
    09
    29
    06
    14
    01
    Venezia
    34
    77
    11
    88
    83
    Nazionale
    56
    26
    22
    77
    75
    Estrazione Simbolotto
    Milano
    27
    16
    04
    30
    18
Indietro
Alto