Dodaj wpis w tym temacie
Spis tematów | Strona: 1 2 ... 20 21 22 ... 37 38 Wyślij wiadomość do admina |
Przewiń wpisy ↓ | Unikatowe KOMBINACJE.. od wielu los. oczekujące na min. wypłacalne |
2022-07-13 (14:13)![]() Data rejestracji: 2020-08-05 00:00:00 Ilość postów: 5736 ![]() | wpis nr 1 426 623 [ CZCIONKA MONOSPACE ] Jacek_K1961 Ja też kiedyś zaczynałem od inputów i msgboxów ... ![]() Można i inputu uzyć do wczytywana każdej linii pliku.txt umieszczając go w pętli Do while not EOF z podaniem nr pliku i pamiętając że po wyjściu z petli trzeba jeszcze na końcu uzyć instrukcji Close z numerem pliku. Pętla po kolei czyta linie więc można je policzyć wiersz=wiersz +1 Zamiast tego wszystkiego można użyć jednej instrukcji Wczytaj-Wszytstkie-Linie_i_zlicz .... 777ch wskazał że musisz mieć tablicę wszystkich 300500200 szóstek z 80 liczb z zaznaczeniem która została wylosowana, więc na poczatku najprostsza droga do tego aby wczytać prawidłowy plik losowań. --- wpis edytowano 2022-07-13 14:14 --- |
2022-07-13 (15:09)![]() Data rejestracji: 2017-03-29 00:00:00 Ilość postów: 7756 ![]() | wpis nr 1 426 630 [ CZCIONKA MONOSPACE ] MultiTest Zgadza się, ale w większości wypadków wszystkich nie trzeba wczytywać. 777ch dla szukania 6na10z80 zawęził wczytywane do ostatnich 1700 losowań. Dopiero te, które przekroczą tę magiczną granice 1700 sprawdza "ręcznie", chyba w Excelu. Z tego co podał Sindbad układ o "oczko" dłuższy, czyli 7na10z80 już bez wczytania wszystkich losowań nie da rady, bo znalazł 7-ki, które w ogóle jeszcze nie padły. P.S .... a co sądzisz o wczytaniu wartości z moich tablic pomocniczych we fragmencie programu jako stałe? np. T03_4_8 = dajmy na to 674566. Trochę, by ich było dla 6na10z80 około 400 linii kodu po 80 wartości (32.000 stałych), ZAMIAST tablic. Czy to by mogło mieć wpływ na szybkość? Z tej obecnej prędkości jestem zadowolony, ale gdybym chciał sprawdzić 7na10z80 Sindbada, to warto by urwać jeszcze "cosik". Pozdrawiam --- wpis edytowano 2022-07-13 15:20 --- |
2022-07-13 (15:23)![]() Data rejestracji: 2020-08-05 00:00:00 Ilość postów: 5736 ![]() | wpis nr 1 426 632 [ CZCIONKA MONOSPACE ] To nie tak. Poprawa zasada jest taka Wczytaj plik z losowaniami ( masz gotowy plik ze wszystkimi losowania przecież nie bedziesz go dzielił ) Wybierz zakres : na 1700 losowań To sa operacje milisekundowe. te 300500200 szóstek będzie szybciej sprawdzone bo zamiast na 13000 będzie 1700 ale i tak według algorytmu 777ch trzeba sprawdzić wylosowanie każdej szóstki z 300500200. Pomysły zostaw na później jesli chcesz dobrze programować. --- wpis edytowano 2022-07-13 15:26 --- |
2022-07-13 (15:37)![]() Data rejestracji: 2017-03-29 00:00:00 Ilość postów: 7756 ![]() | wpis nr 1 426 633 [ CZCIONKA MONOSPACE ] cyt. "jak pisał 777ch. Pierwsza tablica to wszystkie 6-ki z 80 czyli 300500200. W tej tablicy są zaznaczone jako "1" wszystkie 6-ki, które były trafione w ostatnich 1700 losowaniach". ... 6-ki z ostatnich 1700 losowań, więc prawie 12.000 można przepuścić LineInput. P.S. Mam wrażenie, że jak włączam licznik 300500200 kombinacji 1,2,3,4,5,6 do 75,76,77,78,79,80 wklejanych w tablicę to jest to ciut ponad sekundę, a jak wczytuję wszystkie losowania to trwa to z 5-7 sekund. Tyle, że u mnie jedno losowanie to 102 dane. 1-sza to nr i data losowania, 2-ga to plus, potem 20 wylosowanych liczb i 80 w postaci przerobionej na 0/1. 102 to chyba podświadomie na cześć czołgu Rudy 102. ha ha ha. --- wpis edytowano 2022-07-13 15:47 --- |
2022-07-13 (16:00)![]() Data rejestracji: 2017-03-29 00:00:00 Ilość postów: 7756 ![]() | wpis nr 1 426 636 [ CZCIONKA MONOSPACE ] MultiTest Tylko jakby odczyt stałej był o 1/5 szybszy od odczytu z tablicy to dla układu sprawdzanego przez Sindbada byłoby już znaczącą różnicą. Już tak mam, że kombinuję i na to nic nie poradzę. P.S. Jeszcze miesiąc temu nie miałem pojęcia o różnicy czasowej między odczytaniem z pliku 102 zmiennych, a odczytaniem całej linii, bo i też nigdy nie robiłem czegoś takiego na takiej ilości. --- wpis edytowano 2022-07-13 16:02 --- |
2022-07-13 (16:29)![]() Data rejestracji: 2005-11-07 00:00:00 Ilość postów: 22534 ![]() | wpis nr 1 426 641 [ CZCIONKA MONOSPACE ] Jacek_K1961 napisałeś: "Z tego co podał Sindbad układ o "oczko" dłuższy, czyli 7na10z80 już bez wczytania wszystkich losowań nie da rady, bo znalazł 7-ki, które w ogóle jeszcze nie padły...." ============= Zastanów się ! Tablica utworzona do "zapamiętania",może być "idealna" , zaraz o tym ideale....... bo twórz tak dużą tablicę ,na ile pozwoli "środowisko" ![]() nie wchodząc w szczegóły ,jeśli tablica mieści wszystkie adresy czyli indeksy dla poszukiwanych ......4,5,6,czy nawet 7/10 to jej zapełnienie umożliwia ci wyszukanie dokładnie spełniających warunek jaki przyjmiesz do poszukiwań np dla 6z10 bo zauważ że pod --> adresem6 [index] możesz wpisać 1 albo dokładnie tyle ile dana szóstka wystąpiła , w tym celu musisz podnosić wartość w tablicy do max=255 ...bo na tyle pozwoli ci tablica of byte albo jesli masz tablicę np dla 4 to możesz użyć tablicy of integer bo to niewiele danych czyli możliwości wiele .......... np tablica 4 wymiarowa ![]() ale ......możesz przecież pomijać zapis np 7-ek , których adres jest za duży dla Twojej tablicy , i wtedy uzyskasz dane wypisowe np dla 12000 losowań z sekwencjami 7-ek ,których nie wyłapałeś , czyli po zweryfikowaniu zapisu ,takie sekwencje 10-ek po prostu odrzucisz, albo możesz przecież sprawdzać w liczydle 10-ek adresy 7-ek ,zgodne z twoim wymiarem ,a jesli trafisz na adres 7-ki który jest "za duży " dla Twojej tablicy ,to kosztem czasu obliczeń możesz dostawić petlę po np. tych 12000 losowań tylko i wyłącznie dla sekwencji 10-ki,której jakiś adres dla 7-ki przekracza Twój limit tablicy7 albo możesz użyć jakiegoś "triku" aby "odnotować " wysoki adres w niskim adresie wykorzystując zapis 1~255 ...... czyli to na co pozwoli ci np: TAB10: array [0 .. TWÓJMAX] of Byte ; JA MAM W PROGRAMIE jak niżej: maska: array [0 .. 1799579065] of Byte ; to ze względu na to że zliczam adresy występowania dla np 2z3,2z4,3z3,3z4 itd ........ związane z wkładaniem niedomiarowych wystapień do pomocniczej tablicy Mutter z której potem próbkuje ......pasowanie sekwencji z jednoczesnym sprawdzaniem gwarancji Tak czy siak ......... dobry pomysł , i rzetelne wykonanie w kodzie, i uzyskasz to co chcesz. Jak policzę te 7z10 to wstawię zrobię to dla ostatnich 12000 losowań, uzyskując zapewne cirka......jakieś 1000 z haczykiem ![]() sekwencji 10-ek ,których oczekiwanie wynosi >12000 a wśród nich będą takie które nie złapały nigdy 7z10 i takie które złapały więcej jak 10x 7z10 ale ....w tych pierwszych 1976 losowaniach, bo teraz to 13976-losowań Multi, a ja policzę dla ostatnich 12000 od ostatniego , czyli tyle zassam do pliku aby uzyskać Ranking Oczekiwania dla cirka 1000~1500 sekwencji 10-ek no to tyle ...... nie lubię pisać narka |
2022-07-13 (16:51)![]() Data rejestracji: 2005-11-07 00:00:00 Ilość postów: 22534 ![]() | wpis nr 1 426 646 [ CZCIONKA MONOSPACE ] Skąd Ci sie wzięlo 12 tysiecy ? Jak robisz plik z losowaniami skoro dodatkowo przerabiasz na 0/1 ? Ręcznie ? I co właściwie robi twój program poza wstawieniem tablicy i załadowaniem pliku ====================== 12 tys losowań dla wyłapania cirka 1000~1500 sekwencji 10-ek dla warunku brak 7w10 plik z losowaniami to zrzut 20 liczb z mojego programu w excelu od ostatniego do ile wskażę I co właściwie robi twój program Program w zasadzie poprawia plik załadowany do gwarancji maxymalnej dla 2,3,4,5,6,7,8 if hit= 2,3,4,5,6,7,8,9,10 czyli to program pokryciowy ..... ale ponieważ pokrycie np 4-ek czy 5-ek czy np 7-ek to powolny proces....... to wykorzystuję tablice pomocnicze ,do których ładuję np takie sekwencje 3-ek ,z niedomiarem 2z3 ........ itd itp i tam także mam 2,3,4,5,6,7z 10 czy inne konfiguracje edit: Właściwie sekwencje ładują się same, bo to automat który po poprawieniu gwarancji , sam znajduje inny rozkład , bo wiele sie zmienia w czasie ......poprawiania. --- wpis edytowano 2022-07-13 17:00 --- |
2022-07-13 (17:52)![]() Data rejestracji: 2017-03-29 00:00:00 Ilość postów: 7756 ![]() | wpis nr 1 426 652 [ CZCIONKA MONOSPACE ] Ja rozumiem, że te 12.000 na tej samej zasadzie co zliczanie układów 6na10z80 z wybraniem ostatnich 1700, aby pokazało te które czekają ponad te 1700 losowań. Poza tym szukanie tylko tych, które w ogóle nie padły, jeżeli nie wiemy ile zajmuje to czasu byłoby trochę marnowaniem pracy. Jeżeli zgadza się wynik podany przez Sindbada, coś koło 40-tu układów to ja też bym wolał wyszukać te z ponad ONT 12.000 i wprowadzić do excela w celu obserwowania na bieżąco. Jeżeli coś obliczam kwadrans, to sobie mogę darować i raz na tydzień wyszukać w razie potrzeby nowe czekające, a jeżeli miałbym to liczyć kilkanaście godzin, to lepiej zapisać nawet i z 10 tysięcy 10-ek do pliku txt. Posortowane czasem oczekiwania doklejać (jeżeli nie padły w międzyczasie) na miejsce tych najwyższych obserwowanych w arkuszu, a usuniętych po trafieniu w losowaniach, które odbyły się już po wyszukiwaniach. --- wpis edytowano 2022-07-13 18:06 --- |
2022-07-13 (18:07)![]() Data rejestracji: 2005-11-07 00:00:00 Ilość postów: 22534 ![]() | wpis nr 1 426 653 [ CZCIONKA MONOSPACE ] Dokładnie. Raz policzyć ......., nawet kilkanaście godzin, a potem sobie te dane dowolnie sprawdzać,pod takim kątem jak kto chce , nawet na zasadzie zwrotów w pln w dowolnych przedziałach czasowych. Wstawię jak policzę .[te --> 7/10] A PROGRAM .... to rozwijana ciągle wersja tego: |
2022-07-13 (18:25)![]() Data rejestracji: 2005-11-07 00:00:00 Ilość postów: 22534 ![]() | wpis nr 1 426 658 [ CZCIONKA MONOSPACE ] Jacek_K1961 .......możesz odpalić jak potrafisz w excelu ja używam tylko i wyłącznie excel 2003 baza losowań w -->Arkusz2 obrabiane dane w --> Arkusz62 Stara procedura ....ale działa z 2009 roku Sub sprawdzamy10tkizpliku() ' ' wlasne4 Makro ' Makro zarejestrowane 2009-03-27, autor leo777ch ' Dim nn As Long Dim maxliczB As Long Dim TABDANE() As Long Arkusz62.Activate Range("A1:An65536") = "" Range("A1:An65536").Interior.ColorIndex = none Set objFSO = CreateObject("Scripting.FileSystemObject") Const ForReading = 1 i = 0 ReDim TABDANE(650536, 9) Set objFile = objFSO.OpenTextFile(ThisWorkbook.Path & "/" & "Dane brak 7w10.txt", ForReading) Do Until objFile.AtEndOfStream strLine = objFile.ReadLine arrLine = Split(strLine, " ") If arrLine(0) < 1 Then MsgBox " problem w linii " & i TABDANE(i, 0) = arrLine(0) TABDANE(i, 1) = arrLine(1) TABDANE(i, 2) = arrLine(2) TABDANE(i, 3) = arrLine(3) TABDANE(i, 4) = arrLine(4) TABDANE(i, 5) = arrLine(5) TABDANE(i, 6) = arrLine(6) TABDANE(i, 7) = arrLine(7) TABDANE(i, = arrLine(8) TABDANE(i, 9) = arrLine(9) i = i + 1 ' If i = 65000 Then MsgBox "Ilosc kombinacji 10-ek wynosi aktualnie 65000,przerywam dalsze pobieranie z pliku" 'If i = 65000 Then GoTo 1 Loop 1 'Range(Cells(1, 1), Cells(i, 10)) = TABDANE objFile.Close MsgBox " Wczytano " & i & " kombinacji 10-ek" Cells(1, 1).Select ' Dim l1, l2, l3, l4, l5, l6, l7, l8, l9, l10 As Integer Dim t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10 As Integer Dim s As Integer, z As Long Dim LICZB_LOSOWANYCH As Integer Dim LICZB_GRY As Integer Dim vlos As Long Dim los As Long Dim LICZBA As Integer Dim tabwyn() As Variant Dim tabgps() As Variant Dim tabtr0() As Variant Dim ont As Variant Dim SKREsLEn As Byte SKREsLEn = Application.WorksheetFunction.CountA(Range("A2:T2")) vlos = Application.WorksheetFunction.CountA(Arkusz2.Range("A1:A65536")) nn = 0 LICZB_LOSOWANYCH = Application.WorksheetFunction.CountA(Arkusz2.Range("C1:af1")) LICZB_GRY = Application.WorksheetFunction.max(Arkusz2.Range("C1:af5000")) tabwyn = Range(Arkusz2.Cells(1, 3), Arkusz2.Cells(vlos, 120)).value 'gps losowan ReDim tabgps(vlos, LICZB_GRY) For los = vlos To 1 Step -1 For LICZBA = 1 To LICZB_GRY tabgps(los, tabwyn(los, LICZBA)) = tabwyn(los, LICZBA) If tabgps(los, tabwyn(los, LICZBA)) >= 1 Then tabgps(los, tabwyn(los, LICZBA)) = 1 Next LICZBA Next los Range(Cells(1, 41), Cells(65536, 41)) = "" 'obliczenie oczekiwania na 7-trafne For z = 1 To i l1 = TABDANE(z, 0) l2 = TABDANE(z, 1) l3 = TABDANE(z, 2) l4 = TABDANE(z, 3) l5 = TABDANE(z, 4) l6 = TABDANE(z, 5) l7 = TABDANE(z, 6) l8 = TABDANE(z, 7) l9 = TABDANE(z, l10 = TABDANE(z, 9) ont = 0 s = 0 For spr = vlos To 1 Step -1 s = tabgps(spr, l1) + tabgps(spr, l2) + tabgps(spr, l3) + tabgps(spr, l4) + tabgps(spr, l5) + tabgps(spr, l6) _ + tabgps(spr, l7) + tabgps(spr, l8) + tabgps(spr, l9) + tabgps(spr, l10) If s >= 7 And ont = 0 Then ont = vlos - spr 'obliczenie oczek na 7-trafne 'If s >= 7 Or ont < 7000 Then Exit For If (ont >= 12001) Or ((ont = 0) And (spr = 1) And (l1 >= 1)) Then nn = nn + 1 Cells(nn, 1) = l1 Cells(nn, 2) = l2 Cells(nn, 3) = l3 Cells(nn, 4) = l4 Cells(nn, 5) = l5 Cells(nn, 6) = l6 Cells(nn, 7) = l7 Cells(nn, = l8 Cells(nn, 9) = l9 Cells(nn, 10) = l10 If ont = 0 Then ont = "Brak" End If Cells(nn, 41) = ont Cells(nn, 1).Select End If If s >= 7 Then Exit For Next spr Next z 'Range(Cells(1, 41), Cells(nn + 1, 41)) = TABONT 'wypis ont End Sub no ......to tyle na dziś --- wpis edytowano 2022-07-13 18:26 --- |
2022-07-13 (19:04)![]() Data rejestracji: 2017-03-29 00:00:00 Ilość postów: 7756 ![]() | wpis nr 1 426 663 [ CZCIONKA MONOSPACE ] 777ch Excela mam 2019, ale używam tylko do podstawowych obliczeń. Z makrami dałem sobie spokój jak wywalili w robocie Office i wstawili darmowe Open itp. a z VBA jakoś nigdy nawet nie próbowałem. P.S. ... ale mam pytanko, po co tracić czas na wyświetlanie migających kombinacji? Ja w licznikach na samym początku wstawiam wyświetlanie, żeby zobaczyć, że chodzi, a potem wyświetlam tylko zmianę 1-szej, lub 2-ej liczby z układu, bo to strasznie obciąża program. |
2022-07-13 (19:11)![]() Data rejestracji: 2005-11-07 00:00:00 Ilość postów: 22534 ![]() | wpis nr 1 426 666 [ CZCIONKA MONOSPACE ] VBA to jakby przedszkole basica jeśli nie jesteś z tym vba "za pan brat" to już.....poległeś......na starcie --> w programowaniu w Basicu --- wpis edytowano 2022-07-13 19:16 --- |
2022-07-13 (19:17)![]() Data rejestracji: 2017-03-29 00:00:00 Ilość postów: 7756 ![]() | wpis nr 1 426 667 [ CZCIONKA MONOSPACE ] ![]() ![]() W takich arkuszach "obserwuję" wyniki, a obliczenia tylko w VBasic'u. Miałem wersję swojego programu z przyciskami wyboru, np. 3z5, 4z5, 5z5, 4z6, 5z6 itd. A grafika? Właściwie żadna całe okienko to tylko przyciski jak powyżej. Wszystko zostawiłem i piszę od nowa po Twoich uwagach z tymi tablicami z true/false. |
2022-07-13 (19:19)![]() Data rejestracji: 2005-11-07 00:00:00 Ilość postów: 22534 ![]() | wpis nr 1 426 668 [ CZCIONKA MONOSPACE ] po co tracić czas na wyświetlanie migających kombinacji? no ale.......wszystko można wyłączyć ![]() a po to opcja wyświetlania , żeby widzieć co się "dzieje" ![]() |
2022-07-13 (19:20)![]() Data rejestracji: 2017-03-29 00:00:00 Ilość postów: 7756 ![]() | wpis nr 1 426 670 [ CZCIONKA MONOSPACE ] c.d. Piszę od nowa, bo jak zobaczyłem, że 6na10z80 liczyło mi po staremu kilkanaście godzin, a teraz spoko w 20 minut to nie mam wyboru. Ja tylko patrzę czy zaczyna liczyć, a jak się upewniam że wszystko przeskakuje tak jak należy to zostawiam wyświetlanie dla góra pierwszych dwóch - trzech liczb w układzie. --- wpis edytowano 2022-07-13 19:23 --- |
2022-07-13 (19:24)![]() Data rejestracji: 2005-11-07 00:00:00 Ilość postów: 22534 ![]() | wpis nr 1 426 672 [ CZCIONKA MONOSPACE ] W moim excelu są 62 arkusze mały screen ![]() a w każdym arkuszu mnóstwo procedur..... ponad 1550 ![]() |
2022-07-13 (19:27)![]() Data rejestracji: 2005-11-07 00:00:00 Ilość postów: 22534 ![]() | wpis nr 1 426 673 [ CZCIONKA MONOSPACE ] czyli lata ........experymentów w vba uciekam .......definitywnie |
2022-07-13 (19:34)![]() Data rejestracji: 2017-03-29 00:00:00 Ilość postów: 7756 ![]() | wpis nr 1 426 674 [ CZCIONKA MONOSPACE ] Jak dla mnie za dużo opcji do obserwacji. Jak psychologowie zauważyli zbyt duży wybór "towaru" po przekroczeniu pewnej granicy przeszkadza w samym wyborze. Nigdy nie brałem pod uwagę np. opcji 4na7 z 67 liczb, czy 34 liczb, czy jeszcze z każdej jaką zapragnę obserwować. Z eksperymentów z VBA i makrami zrezygnowałem po tym jak coś tam napisałem w domu, a w robocie nie chciało działać. Potem było jeszcze gorzej, bo program chodził na serwerze, a admin blokował wszystko co nie było jego pomysłem. --- wpis edytowano 2022-07-13 19:39 --- |
2022-07-13 (19:37)![]() Data rejestracji: 2005-11-07 00:00:00 Ilość postów: 22534 ![]() | wpis nr 1 426 676 [ CZCIONKA MONOSPACE ] Jacek_K1961 Wiele jeszcze przed Tobą ![]() ale życzę Ci, abyś dotarł do wyznaczonego celu . |
2022-07-13 (19:43)![]() Data rejestracji: 2017-03-29 00:00:00 Ilość postów: 7756 ![]() | wpis nr 1 426 677 [ CZCIONKA MONOSPACE ] Te nowe wersje to już nie dla mnie. Ja buduję z pojedynczych cegieł, nowocześni stawiają całe ściany. .. ale ja lubię mieć kontrolę każdego kroku, a nie wpisać komendę z dwoma kropkami. Przecież takie komendy program i tak rozbija na pojedyncze kroki ... Przyszłość? Ja już na nic nie liczę, chyba, że na spotkanie z żoną, która zmarła równo 5 miesięcy temu, matulą z którą się "rozstaliśmy" też równe pół roku temu i ojcem zmarłym 5 miesięcy i 1 dzień temu. --- wpis edytowano 2022-07-13 19:46 --- |
| Dodaj wpis w tym temacie | Spis tematów | Wyniki lotto | Strona: 1 2 ... 20 21 22 ... 37 38 Wyślij wiadomość do admina |