Dodaj wpis w tym temacie
Spis tematów | Strona: 1 2 ... 534 535 536 ... 554 555 Wyślij wiadomość do admina |
Przewiń wpisy ↓ | moje ... oprogramowanie |
2025-02-03 (18:06)![]() Data rejestracji: 2005-11-07 Ilość postów: 22656 ![]() | wpis nr 1 551 191 [ CZCIONKA MONOSPACE ] fair_play u mnie w paskalu jest ta optymalizacja z else wolniejsza Liczba linii sprawdzanych : 40 Gwarancja[5] : 16,616667274562% Time calculated : 0,012447827870047 ms//starsza wersja Brak5: 548669 Liczba linii sprawdzanych : 40 Gwarancja[5] : 16,616667274562% Time calculated : 0,0148423988075176 ms//nowa optymalizacja Brak5: 548669 ============================================== Liczba linii sprawdzanych : 4000 Gwarancja[5] : 100% Time calculated : 0,196367543033925 ms//starsza wersja Liczba linii sprawdzanych : 4000 Gwarancja[5] : 100% Time calculated : 0,398992662752209 ms//nowa optymalizacja |
2025-02-03 (18:17)![]() Data rejestracji: 2016-05-12 Ilość postów: 8686 ![]() | wpis nr 1 551 193 [ CZCIONKA MONOSPACE ] Niemożliwe Tablicę tworzysz tylko raz, na początku, a kombinacji*jedno działanie to zasadnicza różnica. Podmień procedurę w excelu i porównaj. |
2025-02-03 (18:26)![]() Data rejestracji: 2005-11-07 Ilość postów: 22656 ![]() | wpis nr 1 551 195 [ CZCIONKA MONOSPACE ] else spowalnia |
2025-02-03 (18:27)![]() Data rejestracji: 2005-11-07 Ilość postów: 22656 ![]() | wpis nr 1 551 196 [ CZCIONKA MONOSPACE ] Sorki ale dziś nie mam już czasu na te sprawy zaimplementowałem procedurę i jest ciut wolniejsza. |
2025-02-03 (18:28)![]() Data rejestracji: 2016-05-12 Ilość postów: 8686 ![]() | wpis nr 1 551 197 [ CZCIONKA MONOSPACE ] porównałeś w excelu? |
2025-02-03 (18:30)![]() Data rejestracji: 2005-11-07 Ilość postów: 22656 ![]() | wpis nr 1 551 198 [ CZCIONKA MONOSPACE ] W excelu może być lepiej ciut sprawdzę bo mam możliwość ale jutro.. przepraszam dziś już! muszę kończyć. do jutra |
2025-02-03 (18:33)![]() Data rejestracji: 2016-05-12 Ilość postów: 8686 ![]() | wpis nr 1 551 200 [ CZCIONKA MONOSPACE ] porównanie: ![]() ![]() |
2025-02-03 (22:00)![]() Data rejestracji: 2005-11-07 Ilość postów: 22656 ![]() | wpis nr 1 551 246 [ CZCIONKA MONOSPACE ] Jutro sprawdzę w excelu, ta wersja w paskalu mi ..nie śmiga. 📲 🤗 --- wpis edytowano 2025-02-03 22:01 --- |
2025-02-04 (09:49)![]() Data rejestracji: 2005-11-07 Ilość postów: 22656 ![]() | wpis nr 1 551 289 [ CZCIONKA MONOSPACE ] Porównałem , ale zmodyfikowałem , procedurę Ci wysłałem fair_play na pocztę ![]() nie lubię base1 ale kto wie.....porównaj ze swoją niestety w paskalu ciut gorzej,ale to nie ten problem. po pierwsze rand nigdy nie ułoży hitu rozpisu bo podaje losowe liczby a po drugie jeśli była by zastosowana optymalizacja : 1-krok : sprawdzenie braków i zarejestrowanie ich w masce 2-krok podmiana wielokrotna ......ale nie losowa w 1-linii i sprawdzanie tylko jednej linii sumowane unikaty z zarejestrowanych +wynik z badanej linii 3-każdorazowa aktualizacja maski o adres dodany i usunięty czyli +1 lub -1 jeśli w linii buforowanej zaszły zmiany w adresach w kwestii ilości występowania adresu wtedy kto wie........ szybkość aktualizacji gwarancji po podmianie ......... wzrośnie XXL-KROTNIE Na razie nie udało mi się tego napisać. |
2025-02-04 (10:14)![]() Data rejestracji: 2005-11-07 Ilość postów: 22656 ![]() | wpis nr 1 551 291 [ CZCIONKA MONOSPACE ] Ostatnie porównanie dla [7] jak na obrazku ![]() 10s szybciej -->ta procedura ,którą masz w poczcie ale w paskalu to .............. Max adres10/kod10: 254186856 Brak10: 192415947 Przeliczonych linii : 11522 Gwarancja[10] : 24,301378116892% Time calculated : 3,77450022106574 s ================================ Max adres9/kod9: 94143280 Brak9: 36517432 Liczba linii sprawdzanych : 11522 Gwarancja[9] : 61,210792740597% Time calculated : 3,68874683026215 s ================================ Max adres8/kod8: 30260340 Brak8: 0 Liczba linii sprawdzanych : 11522 Gwarancja[8] : 100% Time calculated : 3,31412640855001 s ================================ Max adres7/kod7: 8347680 Brak7: 0 Liczba linii sprawdzanych : 11522 Gwarancja[7] : 100% Time calculated : 2,45370817762601 s ================================ Max adres6/kod6: 1947792 Brak6: 0 Liczba linii sprawdzanych : 11522 Gwarancja[6] : 100% Time calculated : 1,46872340591487 s ============stary proces==================== Max adres5/kod5: 376992 Brak5: 0 Liczba linii sprawdzanych : 11522 Gwarancja[5] : 100% Time calculated : 0,681095944172383 ms ============proces z else ==================== Max adres5/kod5: 376992 Brak5: 0 Liczba linii sprawdzanych : 11522 Gwarancja[5] : 100% Time calculated : 0,789549522625268 ms nie ma co porównywać z excelem --- wpis edytowano 2025-02-04 10:25 --- |
2025-02-04 (15:16)![]() Data rejestracji: 2016-05-12 Ilość postów: 8686 ![]() | wpis nr 1 551 326 [ CZCIONKA MONOSPACE ] 777ch> Jak już kiedyś tu pisałem przy uruchamianiu tej samej procedury, raz za razam często otrzymuję inne wyniki. Nie mogę tego rozwiązać. Wyłączam antywirusa, wyłączam internet, w Menadżerze nic nie chodzi oprócz excela, a wyniki czasu są nieraz różne, Tak więc porównanie obu procedur Twojej i mojej nie jest jednoznaczne. Zapuściłem nawet taki test: sub test() call leo call sprawdź end sub aby obie procedury działały niby w takich samych warunkach. Ale tu pojawia się problem Option Base 1. Option jest takie same dla obu procedur, ustawiane w nagłówku okna makr, więc nie mogę tego zablokować/odblokować pomiędzy procedurami w tym teście. A brak tej zmiany skutkuje błędnym naliczaniem braków ![]() A tak generalnie to poza zerowaniem tablicy braków widzę tylko jedną różnicę w obu procedurach. Ty "numerujesz" od 0 ja od 1. Innych różnic nie widzę. Poniżej wyniki z sub test, ale nie wiem na ile w takich warunkach można je uznać za obiektywne. ![]() |
2025-02-04 (16:34)![]() Data rejestracji: 2005-11-07 Ilość postów: 22656 ![]() | wpis nr 1 551 334 [ CZCIONKA MONOSPACE ] fair_play Musisz wiedzieć ,że zapełniając tablicę od 1 to —> pomijasz wiele komórek pamięci więc w zasadzie .. tracisz pamięć 😎 chyba …że w [0] —> masz zamiar coś schować😄 pozdrawiam |
2025-02-04 (16:44)![]() Data rejestracji: 2005-11-07 Ilość postów: 22656 ![]() | wpis nr 1 551 335 [ CZCIONKA MONOSPACE ] Option base1 zostaw w jednym module a option explicit w innym module Obie procedury odpalasz z innego przycisku. Zawsze czas jest bardzo zbliżony jeśli jednak inne aplikacje działają w tle czy strony web to wyniki mogą się znacznie różnić. |
2025-02-04 (16:44)![]() Data rejestracji: 2016-05-12 Ilość postów: 8686 ![]() | wpis nr 1 551 336 [ CZCIONKA MONOSPACE ] 777ch> Nie bardzo rozumiem co zmieniłeś w mojej procedurze. Jedyna zmiana to dodanie Option Explicit, zerowania tablicy braków i oczywiście numeracja tablic od 0 nie od 1. W samej idei procedury nie widzę żadnych zmian. Jak napisałeś przed chwilą na numeracji od 1 tracę na pamięci, a nie na czasie realizacji. A porównanie obu procedur na pliku A.Westa wygląda tak: ![]() Pozdeawiam ![]() P.S. Napisałem że nic nie działa w tle. --- wpis edytowano 2025-02-04 16:46 --- |
2025-02-04 (16:50)![]() Data rejestracji: 2005-11-07 Ilość postów: 22656 ![]() | wpis nr 1 551 337 [ CZCIONKA MONOSPACE ] Pierwsza procedura to pierwszy arkusz od Ciebie pierwszy pomysł adresowania… druga procedura to tylko option explicit zamiast base1 z ostatnim rozwiązaniem adresowania u mnie to dla Westa 10s szybciej na korzyść ostatniego adresowania ale option explicit |
2025-02-04 (16:54)![]() Data rejestracji: 2005-11-07 Ilość postów: 22656 ![]() | wpis nr 1 551 338 [ CZCIONKA MONOSPACE ] adresy(L4, 4) - adresy(L5, 5) - adresy(L6, 6) - adresy(L7, 7), 1) = 1 wklejam koniec…. tu jest różnica i to option explicit --- wpis edytowano 2025-02-04 16:55 --- |
2025-02-04 (16:59)![]() Data rejestracji: 2016-05-12 Ilość postów: 8686 ![]() | wpis nr 1 551 340 [ CZCIONKA MONOSPACE ] Nie wiem czy "poprawiałeś" moją ostatnią wersję. Chyba nie, bo u mnie jest do Case 10, a u Ciebie w Option Explicit deklaracje zmiennych kończą się na 7. U mnie Case 7 wygląda tak: Case 7 sprawdzane = "siódemki:" For y = 1 To zakładów For x1 = 1 To skreśleń - 6 l1 = zakłady(y, x1) For x2 = x1 + 1 To skreśleń - 5 l2 = zakłady(y, x2) For x3 = x2 + 1 To skreśleń - 4 l3 = zakłady(y, x3) For x4 = x3 + 1 To skreśleń - 3 l4 = zakłady(y, x4) For x5 = x4 + 1 To skreśleń - 2 l5 = zakłady(y, x5) For x6 = x5 + 1 To skreśleń - 1 l6 = zakłady(y, x6) For x7 = x6 + 1 To skreśleń l7 = zakłady(y, x7) braki(adresy(l1, 1) - adresy(l2, 2) - adresy(l3, 3) - adresy(l4, 4) - adresy(l5, 5) - adresy(l6, 6) - adresy(l7, 7), 1) = 1 Next Next Next Next Next Next Next Next --- wpis edytowano 2025-02-04 17:04 --- |
2025-02-04 (17:16)![]() Data rejestracji: 2005-11-07 Ilość postów: 22656 ![]() | wpis nr 1 551 341 [ CZCIONKA MONOSPACE ] Ja porównałem pierwszą wersję adresowania z ostatnim pomysłem z else jaki wstawiłeś na forum tylko pierwszą wersję z base1 do ostatniego pomysłu ale option explicit którą Ci podesłałem na maila. Tyle… |
2025-02-04 (21:47)![]() Data rejestracji: 2016-05-12 Ilość postów: 8686 ![]() | wpis nr 1 551 390 [ CZCIONKA MONOSPACE ] 777ch> Jak zadeklarować tablicę jako PUBLIC nie znając jej UBound? |
2025-02-04 (23:01)![]() Data rejestracji: 2020-08-05 Ilość postów: 5909 ![]() | wpis nr 1 551 412 [ CZCIONKA MONOSPACE ] Public Unikaty () As Integer (dla VBA) potem instrukcja REDIM. Można dynamicznie zwiększyć tablicę o kolejny element co może być bardziej optymalne --- wpis edytowano 2025-02-04 23:10 --- |
| Dodaj wpis w tym temacie | Spis tematów | Wyniki lotto | Strona: 1 2 ... 534 535 536 ... 554 555 Wyślij wiadomość do admina |