InRicordo
Advanced Member >PLATINUM PLUS<
Ottimo lavoro tanto che "me ne sono impossessato"Edoardo_95, è semplicemente fantastico il tuo programma! Allego "a beneficio di tutti" uno script fatto in "quattro mani" ciclometrico che cerca due ambi con uguale distanza. A parte la richiesta fatta sopra per quanto riguarda le intelligenze artificiali... quando abbiamo il risultato, esiste un modo per averlo a "tutto schermo"? O con una finestra separata in modo tale da avere tutte le informazioni come diciamo dalle mie parti "belle e stampate in faccia"?
Script usato :
Sub Main()
' 1. Scelta dell'arco temporale (200 estrazioni predefinite)
Dim fine = EstrazioniArchivio()
Dim inizio = Math.Max(1, fine - 199)
If Not ScegliRange(inizio, fine) Then Return
' 2. Scelta della distanza specifica tramite riquadro opzioni
' Creiamo un elenco di opzioni da 0 (Tutte) a 45
Dim opzioniDistanza(45) As String
opzioniDistanza(0) = "Tutte le distanze"
For d = 1 To 45
opzioniDistanza(d) = "Distanza " & d
Next
' Mostra il riquadro interattivo all'utente per scegliere la distanza
Dim indiceScelto = ScegliOpzione(opzioniDistanza, "Seleziona la distanza ciclometrica da cercare:")
If indiceScelto < 0 Then Return ' Gestione dell'Annulla
Dim distanzaCercata = indiceScelto
' 3. Intestazione del report statistico
Scrivi("<b>ANALISI AVANZATA STRUTTURE CICLOMETRICHE ISOTOPE</b>", True)
Scrivi("Periodo di ricerca: Da concorso " & inizio & " a " & fine)
If distanzaCercata = 0 Then
Scrivi("Ricerca impostata su: <b>Tutte le distanze ciclometriche</b>")
Else
Scrivi("Ricerca impostata su: <b>Solo Distanza " & distanzaCercata & "</b>")
End If
Scrivi("--------------------------------------------------------------------------------")
Dim contatoreStrutture = 0
' 4. Ciclo principale sulle estrazioni dello storico
For concorso = inizio To fine
' Ciclo per la prima ruota (Bari=1 fino a Nazionale=11)
For r1 = 1 To 11
' Ciclo per la seconda ruota
For r2 = r1 + 1 To 11
' Ciclo sulle posizioni isotope (posA e posB)
For posA = 1 To 5
For posB = posA + 1 To 5
' Lettura dei 4 estratti coinvolti
Dim n1_r1 = Estratto(concorso, r1, posA)
Dim n2_r1 = Estratto(concorso, r1, posB)
Dim n1_r2 = Estratto(concorso, r2, posA)
Dim n2_r2 = Estratto(concorso, r2, posB)
' Controllo validità dati storici
If n1_r1 > 0 And n1_r2 > 0 Then
' Calcolo distanze orizzontali (sulle singole ruote)
Dim dist_orizz_r1 = Distanza(n1_r1, n2_r1)
Dim dist_orizz_r2 = Distanza(n1_r2, n2_r2)
' Verifica uguaglianza orizzontale e filtro della distanza scelta
If dist_orizz_r1 = dist_orizz_r2 And (distanzaCercata = 0 Or dist_orizz_r1 = distanzaCercata) Then
' Calcolo delle distanze verticali
Dim dist_vert_1 = Distanza(n1_r1, n1_r2)
Dim dist_vert_2 = Distanza(n2_r1, n2_r2)
' INSERIMENTO: Calcolo delle distanze diagonali (incrociate)
Dim dist_diag_1 = Distanza(n1_r1, n2_r2)
Dim dist_diag_2 = Distanza(n2_r1, n1_r2)
contatoreStrutture = contatoreStrutture + 1
' Costruzione dei testi informativi per l'output
Dim infoEs = "Concorso " & concorso & " del " & DataEstrazione(concorso)
Dim infoRuote = NomeRuota(r1) & " e " & NomeRuota(r2)
Dim infoPos = "(Posizioni " & posA & "°-" & posB & "°)"
Scrivi(infoEs & " - Ruote: " & infoRuote & " " & infoPos)
Scrivi(" -> Ambo " & NomeRuota(r1) & ": " & n1_r1 & "-" & n2_r1 & " (Dist. Orizzontale: " & dist_orizz_r1 & ")")
Scrivi(" -> Ambo " & NomeRuota(r2) & ": " & n1_r2 & "-" & n2_r2 & " (Dist. Orizzontale: " & dist_orizz_r2 & ")")
Scrivi(" -> <i>Distanze Verticali calcolate: " & dist_vert_1 & " e " & dist_vert_2 & "</i>")
Scrivi(" -> <i>Distanze Diagonali calcolate: " & dist_diag_1 & " e " & dist_diag_2 & "</i>")
' Se anche le distanze verticali sono simmetriche, calcoliamo la chiusura geometrica
If dist_vert_1 = dist_vert_2 Then
Scrivi("<b>STRUTTURA AD ARMONIA PERFETTA (QUADRATO ISO-DISTANTE)</b>", True)
' INSERIMENTO: Calcolo del quarto elemento di chiusura (Somma diagonale comune)
Dim sommaDiagonale = Fuori90(n1_r1 + n2_r2)
Dim numeroChiusura = Fuori90(sommaDiagonale - n2_r1)
If numeroChiusura = 0 Then numeroChiusura = 90
Scrivi(" -><b>Numero di Chiusura consigliato come pronostico: " & numeroChiusura & "</b>")
End If
Scrivi("--------------------------------------------------------------------------------")
End If
End If
Next
Next
Next
Next
Next
Scrivi("<b>Elaborazione terminata.</b> Trovate " & contatoreStrutture & " configurazioni nel periodo richiesto.", True)
End Sub

I laterali usciti sono davvero molti
Esempio:


Considerando tutte le estrazioni:

Penso che venderò il suo programma spacciandolo per mio.
Scusi l'intromissione.
Ultima modifica: