Linguaggio lottoscript

cercare una distanza specifica tra gli estratti

« Older   Newer »
 
  Share  
.
  1.  
    .
    Avatar

    Advanced Member

    Group
    Moderator
    Posts
    1,600

    Status
    Offline
    Hai scritto:

    "A Bari c'è l'Ambo 50.20 e il mancante 30 si trova a Genova"

    30 non è il mancante della terzina simmetrica.

    30 è la distanza.

    Mancante è 80 della terzina 20.50.80

    Mentre il 26 è effettivamente in distanza 30.

    Dunque sarebbe giusto ... ma ... non si capisce se cerchi la distanza o il terzo simmetrico mancante.

    Perché i due esempi si contraddicono vicendevolmente.

    :)

    Edited by J-Gio91 - 9/7/2020, 12:19
     
    Top
    .
  2.  
    .
    Avatar

    Junior Member

    Group
    Member
    Posts
    16

    Status
    Offline
    Ciao J-GIO91, si ho sbagliato...era l'80 sulle due ruote successive...io cerco una terzina con distanza 30, se per esempio trovo 1 e il 31 a Bari, devo cercare (se c'è) il 61 su una delle altre ruote...Nazionale compresa...forse così sono più chiaro...per capire...ho sbagliato a pensare che bisogna modificare quella parte di codice che avevo scritto ?
    Grazie
     
    Top
    .
  3.  
    .
    Avatar

    Advanced Member

    Group
    Moderator
    Posts
    1,600

    Status
    Offline
    Non è difficile realizzare quanto hai scritto.

    Lo è però un pochino di più con quella vecchia versione di L8.

    -------------------------------------------
    13.06.2020
    Bari 47.29.83.23.35 23.83 53
    Cagliari 52.59.47.90.58
    Firenze 39.27.69.57.66 27.57 87 39.69 09
    Genova 56.60.84.13.15
    Milano 61.09.63.14.20
    Napoli 71.22.31.34.38
    Palermo 48.77.14.71.61
    Roma 68.70.10.39.86 10.70 40
    Torino 20.53.90.69.66
    Venezia 84.28.05.13.56
    -------------------------------------------

    Perché è difficile (o addirittura impossibile) comporre righe con diversi colori.

    Comunque sia, la logica che ho adottato è più o meno questa:

    Hai 2 numeri A e B in distanza 30

    prendi A e gli aggiungi 30 ... ed ottieni C

    Se C = B aggiungi ANCORA 30 ad A.

    Altrimenti C va bene perché è TERZO.

    Cioè diverso sia da A che da B.

    :)

    Edited by J-Gio91 - 9/7/2020, 12:20
     
    Top
    .
  4.  
    .
    Avatar

    Advanced Member

    Group
    Moderator
    Posts
    1,600

    Status
    Offline
    CITAZIONE (Franco Sedonati @ 1/7/2020, 22:08) 
    Ciao Joe

    .. omesso ...

    ... io cerco una terzina con distanza 30, se per esempio trovo 1 e il 31 a Bari, devo cercare (se c'è) il 61 su una delle altre ruote...Nazionale compresa

    Con riferimento a questa descrizione e facendo richiamo a quanto ho scritto prima,

    è evidente che quando si è calcolato il numero mancante della terna,

    lo si deve cercare in una delle altre ruote.

    E' semplice farlo con un ciclo For-Next identico a quello usato per la ricerca dell' Ambo Simmetrico.

    Però avrà necessariamente un altro indice (o sarà controllato da un altra variabile) perché si ricerca un altra ruota.

    In (pseudo)codice potrebbe essere:

    CODICE
    For Seconda Ruota = 1 To 12 ....

    If Posizione (Estrazione,Seconda Ruota,Numero Mancante) > 0 Then

    .
    .
    .

    End If

    Next


    In queste poche linee si vede che ho utilizzato l'istruzione Posizione che restituisce un valore da zero a 5.

    Zero = non c'è il numero cercato.

    1.2.3.4.5 se è presente come 1°, 2°, 3°, 4°, 5° ESTRATTO.

    Dunque all'esito del test, quando c'è la Posizione è maggiore di Zero.

    Al posto di puntini che ho lasciato come segnaposto

    si possono raggruppare tutte le istruzioni di scrittura

    e/o introdurre i dati di un eventuale test di giocata da verificare.

    Così si impone all'output di elencare, solo i risultati veri.

    Riunendo tutte le 'scritte' che si erano fatte per le varie verifiche.

    Lascerò una copia di tutto quanto descritto ...

    ... per chi vorrà "rileggerlo" codificato nello script.

    :)

    Questo l' output:


    13.06.2020 Bari ..... 23.83 + 53 Torino
    ------------------------------------------
    13.06.2020 Firenze .. 39.69 + 09 Milano
    ------------------------------------------
    16.06.2020 Napoli ... 19.79 + 49 Cagliari
    ------------------------------------------
    18.06.2020 Genova ... 53.83 + 23 Venezia
    ------------------------------------------
    20.06.2020 Napoli ... 18.78 + 48 Palermo
    ------------------------------------------
    20.06.2020 Torino ... 44.74 + 14 Bari
    ------------------------------------------
    23.06.2020 Roma ..... 40.70 + 10 Palermo
    ------------------------------------------
    23.06.2020 Roma ..... 40.70 + 10 Nazionale
    ------------------------------------------
    25.06.2020 Bari ..... 20.50 + 80 Milano
    ------------------------------------------
    25.06.2020 Bari ..... 20.50 + 80 Napoli
    ------------------------------------------
    25.06.2020 Nazionale 56.86 + 26 Bari
    ------------------------------------------
    27.06.2020 Genova ... 19.49 + 79 Palermo
    ------------------------------------------
    30.06.2020 Milano ... 11.71 + 41 Torino
    ------------------------------------------
    02.07.2020 Milano ... 05.35 + 65 Palermo
    ------------------------------------------
    02.07.2020 Milano ... 05.35 + 65 Venezia
    ------------------------------------------


    :)
     
    Top
    .
  5.  
    .
    Avatar

    Junior Member

    Group
    Member
    Posts
    16

    Status
    Offline
    Wow fantastico l'ultimo messaggio ! Molto bello anche il risultato da vedere...stò ancora sbattendo la testa con il trovare "l'elemento C" , ci ero parzialmente riuscito ma in alcune estrazioni l'elemento B era uguale ad A, prima di chiedere aiuto voglio riprovare partendo di nuovo da capo....grazie...
    PS: Ho l8 6.1.34 , è abbastanza recente come versione ?
     
    Top
    .
  6.  
    .
    Avatar

    Advanced Member

    Group
    Moderator
    Posts
    1,600

    Status
    Offline
    Ciao,

    La versione 6.1.34 mi risulta essere l'ultima cioè è quella che funziona meglio.

    Ti dovrebbe permettere di utilizzare lo script senza errori nei parametri dell'istruzione "Scrivi".

    Forse io NON ho descritto bene la procedura ma

    "in alcune estrazioni l'elemento B era uguale ad A" è una cosa impossibile.

    A e B sono 2 degli Estratti e ... e gli Estratti sono sempre diversi.

    Come esempio di calcolo supponiamo:


    a = 5 e b = 35

    c = a + 30

    If c = b Then c = a + 60


    :)

    Edited by J-Gio91 - 4/7/2020, 09:25
     
    Top
    .
  7.  
    .
    Avatar

    Junior Member

    Group
    Member
    Posts
    16

    Status
    Offline
    buongiorno a tutti,
    J-Gio91 continuo a disturbarti...

    CODICE
    Sub Main
    Dim Ini,Fin,Es,R,RN,P,Q,S,E(5),D
    Dim Out 'PER COMPATIBILITA' L8 6
    Ini = EstrazioneFin - 9
    Fin = EstrazioneFin
    D = 30
    For Es = Ini To Fin
     Scrivi DataEstrazione(Es),True
     For R = 1 To 12
       Out = FormatSpace(NomeRuota(R),10)
       For P = 1 To(5)
         E(P) = Format2(Estratto(Es,R,P))
       Next
       Out = Out & StringaNumeri(E) & " " & Space(1)
       OrdinaMatrice E,False
       For P = 1 To 4
         For Q = P + 1 To 5
           If Abs (E(P)-E(Q)) = D Then ' DIFFERENZA ASSOLUTA


                                           ' NUOVA PARTE
                           E(S) = E(P) + 30
                           If E(S) = E(Q) Then
                           E(S) = E(P) + 60
                           If E(S) > 90 Then
                           E(S) = E(S) - 90
                           End If
                           End If
                                           ' FINE PARTE NUOVA

             Out = Out &  E(P) & "." & E(Q) & Space(1) '& "+" & Space(1) & E(S)
           End If
         Next
       Next


       Scrivi Out ' Tutto assieme in una linea
     Next
     Scrivi String(43,"-")
    Next
    End Sub


    in centro al codice c'è la parte che ho modificato per trovare l'elemento C mancante...all'inizio mi restituiva in alcuni casi un valore superiore a 90, una volta fatta la correzione mi dà questo risultato:

    13.06.2020
    Bari 47.29.83.23.35
    Cagliari 52.59.47.90.58
    Firenze 39.27.69.57.66 39.69 27.57
    Genova 56.60.84.13.15
    Milano 61.09.63.14.20
    Napoli 71.22.31.34.38
    Palermo 48.77.14.71.61
    Roma 68.70.10.39.86
    Torino 20.53.90.69.66
    Venezia 84.28.05.13.56
    Tutte
    Nazionale 57.07.52.84.75
    -------------------------------------------
    16.06.2020
    Bari 90.22.52.65.67 22.52
    Cagliari 26.71.70.49.65
    Firenze 59.40.18.36.42
    Genova 31.78.08.15.65
    Milano 58.14.48.05.07
    Napoli 39.46.79.59.19
    Palermo 83.53.13.45.41 83.53
    Roma 37.02.26.28.20
    Torino 76.18.15.08.67
    Venezia 89.02.46.48.87
    Tutte
    Nazionale 24.68.54.31.10 24.54
    -------------------------------------------

    non mi inserisce più il terzo elemento e dovrebbe inserirlo così:

    Nazionale 24.68.54.31.10 24.54 + 84

    non riesco a capire dove sbaglio, mi puoi aiutare a risolvere...grazie

    poi vedrò come fare per fare la ricerca del terzo elemento sulle altre ruote
    grazie e buon week end
     
    Top
    .
  8.  
    .
    Avatar

    Advanced Member

    Group
    Moderator
    Posts
    1,600

    Status
    Offline
    La base dello script che stai usando non trova

    tutti gli Ambi di una terzina simmetrica come ad esempio questo:

    13.06.2020 Bari ...... 23.83 + 53 Torino

    perché 83-23 = 60 mentre il confronto è con d= 30.

    In pratica devi usare il calcolo della DISTANZA e quello della DIFFERENZA,

    tra la coppia di Estratti presi ad essere un Ambo.

    Per il resto è giusto abbassare il valore maggiore di 90.

    C'è una istruzione che è Fuori90 e che andrebbe usata per le somme nei calcoli ciclometrici.

    Anche se a parer mio gli Estratti non andrebbero MAI SOMMATI nella parte (nuova)

    dello script che hai pubblicato dovrebbe essere usato anche sulla prima somma.

    Lo script, per come l'ho descritto abbastanza dettagliatamente è questo:

    CODICE
    Script di prova cancellato ... perchè non funzionante


    :)

    Edited by J-Gio91 - 11/7/2020, 10:30
     
    Top
    .
  9.  
    .
    Avatar

    sean69

    Group
    Administrator
    Posts
    5,897
    Location
    Provincia di Roma..

    Status
    Offline
    grazie..ne dovresti fare un post dedicato su tua sezione..grazie ancora
     
    Top
    .
  10.  
    .
    Avatar

    Advanced Member

    Group
    Moderator
    Posts
    1,600

    Status
    Offline
    CITAZIONE (sean69 @ 4/7/2020, 18:20) 
    grazie..ne dovresti fare un post dedicato su tua sezione..grazie ancora

    Se ritieni opportuno spostare questa discussione, per me non c'è problema.

    Nel ringraziarti per l'ospitalità e l'attenzione,

    auguro un buon weekend a tutte/i.

    :)
     
    Top
    .
  11.  
    .
    Avatar

    Junior Member

    Group
    Member
    Posts
    16

    Status
    Offline
    Buona Domenica a tutti,
    un'infinite grazie a J-Gio91 per lo script e il suo tempo dedicatomi, anche per me va bene spostare la discussione...
    Mandj mandj
    Ps: da solo non ci sarei mai arrivato , nella mia testa la logica è completamente diversa , per ora non riesco a capire come "ragiona" lo script.
    Tu hai spiegato bene
     
    Top
    .
  12.  
    .
    Avatar

    sean69

    Group
    Administrator
    Posts
    5,897
    Location
    Provincia di Roma..

    Status
    Offline
    ciao J-Gio91,spostato io in tua sezione..ti ho messo come Moderatore nella sezione "Le Vostre Richieste" per pter gestire post che ti riguardano..grazie
     
    Top
    .
  13.  
    .
    Avatar

    Advanced Member

    Group
    Moderator
    Posts
    1,600

    Status
    Offline
    Ciao Sean.

    Grazie.

    Buona giornata a tutte/i.

    CITAZIONE (Franco Sedonati @ 5/7/2020, 08:58) 
    ... per ora non riesco a capire come "ragiona" lo script ...

    Descrivo brevemente la struttura dello script:

    Si scorrono le estrazioni dell'archivio prendendo i 5 estratti di ogni ruota.

    Con questi 5 estratti si compongono 10 coppie di numeri.

    Se qualcuna di queste coppie è un "Ambo in Distanza 30" si calcola "Numero Mancante" della Terzina Simmetrica e ...

    ... lo si va a cercare in ognuna delle (altre) Ruote.

    Se lo si trova si può scrivere "una linea" di output che contiene:

    Data / Ruota / Ambo (in Distanza 30) "+" Terzo Mancante / Ruota (in cui lo si è trovato).

    :)

    Edited by J-Gio91 - 10/7/2020, 20:43
     
    Top
    .
  14.  
    .
    Avatar

    Junior Member

    Group
    Member
    Posts
    16

    Status
    Offline
    Esatto riassunto perfetto! Grazie
     
    Top
    .
  15.  
    .
    Avatar

    Advanced Member

    Group
    Moderator
    Posts
    1,600

    Status
    Offline
    Ciao Franco,

    Quella versione dello script è incompleta.

    C'è un ultimo test da introdurre per allinearlo alla richiesta.

    Lo avevi scritto in seconda battuta e rileggendo / correggendo

    mi sono accorto di averlo dimenticato.

    CITAZIONE (Franco Sedonati @ 14/6/2020, 21:39)
    Buonasera, come faccio con uno script a cercare 2numeri vicini e non,sulla stessa ruota con distanza 30 e l' isotopo di uno dei due precedenti ? Grazie

    E' un problema facile da risolvere.

    Semplicemente analizzando il valore di alcune considerazioni

    Abbiamo detto che l'istruzione "Posizione" (di un numero in una estrazione ed in una ruota)

    restituisce un valore da "Zero" a "Cinque" ... lo possiamo memorizzare come valore di "T"

    T = Posizione (....) ' memorizza la posizione Trovata

    Poi abbiamo già predisposto che "P" e "Q" siano le posizioni dell' Ambo in Distanza 30

    Il nuovo Filtro/Condizione dunque sarà semplicissimo da scrivere:

    If T= P Or T = Q Then

    che dovrà sostituire quello precedente e più generico if Posizione ( ... ) > 0 Then

    ... Che ammette invece tutte e 5 le posizioni.

    CODICE
    Option Explicit
    Sub Main
     'Ricerca Ambo Simmetrico + Terzo Mancante (in altra ruota)
     'Script By Joe V.1.0 By Joe del 11/07/2020
     'https://illottodisean69.forumfree.it/?t=77700407&st=15#entry641926956
     Dim Ini,Fin,Es,D,M,P,Q,R,S,T,E(5)
     Dim Out 'PER COMPATIBILITA' L8+6
     D = 30
     Ini = EstrazioneFin - 155
     Fin = EstrazioneFin
     For Es = Ini To Fin
       For R = 1 To 12
         If R = 11 Then R = 12
         For P = 1 To 5
           E(P) = Format2(Estratto(Es,R,P))
         Next
         For P = 1 To 4
           For Q = P + 1 To 5
             If Distanza(E(P),E(Q)) = D Then ' Distanza Ciclometrica
               M = Fuori90(E(P) + D)
               If M = CInt(E(Q)) Then M = Fuori90(E(P) + 2*D)
               For S = 1 To 12 : If S = 11 Then S = 12
                 T = Posizione(Es,S,M)
                 If T = P Or T = Q Then
                   Out = DataEstrazione(Es) & Space(1)
                   Out = Out & NomeRuota(R) & Space(1)
                   Out = Out & String(10 - Len(NomeRuota(R)),".") & Space(1)
                   Out = Out & E(P) & "." & E(Q)
                   Out = Out & " + " & Format2(M) & Space(1)
                   Out = Out & FormatSpace(NomeRuota(S),10)
                   Scrivi Out & Space(1),0,0
                   Scrivi String(43,"-")
                 End If
               Next
             End If
           Next
         Next
       Next
     Next
    End Sub



    Ultima cosa IMPORTANTE:

    Lo script precedente deve essere cestinato perché non funziona bene.

    In particolare se gli si applicano queste ultime modifiche ... restituirà risultati sbagliati.

    :)

    Edited by J-Gio91 - 12/7/2020, 14:18
     
    Top
    .
34 replies since 10/6/2020, 09:40   1253 views
  Share  
.