- 
Data: 2021-08-23 22:29:44
 Temat: Re: Jak zrobić test za pomocą PractRand?
 Od: "M.M." <m...@g...com> szukaj wiadomości tego autora
 [ pokaż wszystkie nagłówki ]On Monday, August 23, 2021 at 9:11:14 PM UTC+2, o...@g...com wrote: 
 > poniedziałek, 23 sierpnia 2021 o 15:58:45 UTC+2 M.M. napisał(a):
 > > On Monday, August 23, 2021 at 3:21:47 PM UTC+2, o...@g...com wrote:
 > > > poniedziałek, 23 sierpnia 2021 o 15:05:27 UTC+2 M.M. napisał(a):
 > > > > On Monday, August 23, 2021 at 2:31:39 PM UTC+2, o...@g...com wrote:
 > > > > > poniedziałek, 23 sierpnia 2021 o 11:18:03 UTC+2 M.M. napisał(a):
 > > > > > > On Monday, August 23, 2021 at 5:23:14 AM UTC+2, o...@g...com
 wrote:
 > > > > > > > Właściwie to mój generator oblewa po 16 MB:
 > > > > > > >
 > > > > > > > length= 16 megabytes (2^24 bytes), time= 2.1 seconds
 > > > > > > >
 > > > > > > > A ten LCG oblewa po 2 MB:
 > > > > > > >
 > > > > > > > length= 2 megabytes (2^21 bytes), time= 3.3 seconds
 > > > > > > >
 > > > > > > > Czyli mój radzi sobie chyba lepiej. O ile to ma w ogóle jakiekolwiek
 znaczenie, skoro testy prawdopodobnie nie są wykonywane poprawnie. Raczej wróżenie z
 fusów.
 > > > > > > Jeśli użyłeś tego samego generatora co ja, tych samych stałych A i B,
 jeśli zainicjowałeś x=1, jeśli odrzuciłeś sto
 > > > > > > początkowych wygenerowanych liczb (500 bitów), jeśli bierzesz tylko 5
 najstarszych bitów - to powinno być tak samo jak
 > > > > > > u mnie... chociaż ja mam wersję PractRanda 0.94 a Ty 0.93 - nie wiem czy
 zostało zmienione coś na tyle
 > > > > > > istotnego aby wyniki testów były całkiem inne. Raczej w nowszej wersji
 testy powinny być bardziej surowe.
 > > > > > >
 > > > > > > Moje początkowe 1000 bitów wygląda tak:
 > > > > > > ./SimpPRNG 1 1000
 > > > > > > 1100010111000111110000011110101111001001011010001110
 0011110011110000000011111001000101101111111000001111
 1110100100110000011011001100101110100010010011011101
 1111001010111011011101001101100110001001111000101011
 0000010000011101011010011111101111110000010110010111
 1110001010100101000000010111111000011001001110011110
 1011010111110000100101100110100001110100000110101010
 0011000100000110001111011100011100111110001011011101
 0011001011001101100000100110110001101101111110010100
 0010110101110111011010111111100001101101011101011011
 1000001000011100100111000100011011000111100110001000
 1001101100110001010001001111001110100101001000001101
 0101000101111100100101110010011000001000001101101100
 1101011100001010110100111101011010001000101100000001
 0100111111010111001100111000111011001111001110101110
 1000001001001001100100111110111110110000110010101011
 0110011000101000101110000100101001001000000111010101
 0100110100101110101111000100011100000000011000000010
 1110000010110100110111011000100010101110000010010011
 001101000101
 > > > > > >
 > > > > > > Wyświetlam z tych 5 bitów począwszy od najmłodszego:
 > > > > > >
 > > > > > > https://github.com/mmarszik/SimpPRNG/blob/main/main.
 cpp
 > > > > > > type_out v = r();
 > > > > > > for( int k=0 ; k<bits && j<BUFF_SIZE && i<size ; k++, j++, i++ ) {
 > > > > > > buff[j] = '0' + (v & 1);
 > > > > > > v >>= 1;
 > > > > > > }
 > > > > > >
 > > > > > > Ale na jakość generatora i zaliczenie testów nie powinno wpłynąć
 wyświetlanie od najstarszego.
 > > > > > >
 > > > > > > Początkowe liczby z tego generatora są statystycznie bardzo słabe jeśli
 inicjuje się małą liczbą
 > > > > > > (np. jedynką), jest dużo zer na początku, warto odrzucić np. 100
 początkowych generowań.
 > > > > > >
 > > > > > > Pozdrawiam
 > > > > > Mam inne wyniki. Oto wyniki w formacie dziesiętnym:
 > > > > >
 > > > > > x = 1
 > > > > >
 > > > > > x = (x * 79908886691 + 8143076871913) &
 340282366920938463463374607431768211455 = 8222985758604
 > > > > >
 > > > > > 8222985758604 >> 123 = 0
 > > > > >
 > > > > > x = (8222985758604 * 79908886691 + 8143076871913) &
 340282366920938463463374607431768211455 = 657089637254136791211277
 > > > > >
 > > > > > 657089637254136791211277 >> 123 = 0
 > > > > >
 > > > > > x = (657089637254136791211277 * 79908886691 + 8143076871913) &
 340282366920938463463374607431768211455 = 52507301369171109219924401511286320
 > > > > >
 > > > > > 52507301369171109219924401511286320 >> 123 = 0
 > > > > >
 > > > > > x = (52507301369171109219924401511286320 * 79908886691 + 8143076871913) &
 340282366920938463463374607431768211455 = 333442790507095493699328894974793383801
 > > > > >
 > > > > > 333442790507095493699328894974793383801 >> 123 = 31
 > > > > >
 > > > > > x = (333442790507095493699328894974793383801 * 79908886691 + 8143076871913)
 & 340282366920938463463374607431768211455 = 225174366013576153541971350915313012980
 > > > > >
 > > > > > 225174366013576153541971350915313012980 >> 123 = 21
 > > > > >
 > > > > > Czyli uzyskuję:
 > > > > >
 > > > > > 0
 > > > > > 0
 > > > > > 0
 > > > > > 31
 > > > > > 21
 > > > > >
 > > > > > I tak dalej. Jak mogą tu wychodzić inne wyniki?
 > > > > Jeśli nie ma błędów, to w tym przypadku nie można uzyskać innych wyników.
 Jeśli nie pomijam 100 początkowych
 > > > > wygenerowanych liczb, to mam takie same liczby jak Ty:
 > > > > 0
 > > > > 0
 > > > > 0
 > > > > 31
 > > > > 21
 > > > > 4
 > > > > 3
 > > > > 9
 > > > > 9
 > > > > 7
 > > > > 25
 > > > > 12
 > > > > 15
 > > > > 16
 > > > > 24
 > > > > 11
 > > > > 20
 > > > > 14
 > > > > 25
 > > > > 27
 > > > >
 > > > > Jeśli pomijam to mam takie:
 > > > >
 > > > > 3
 > > > > 29
 > > > > 24
 > > > > 7
 > > > > 24
 > > > > 11
 > > > > 15
 > > > > 18
 > > > > 22
 > > > > 24
 > > > > 17
 > > > > 7
 > > > > 15
 > > > > 0
 > > > > 28
 > > > > 19
 > > > > 8
 > > > > 27
 > > > > 31
 > > > > 0
 > > > >
 > > > > W wielu generatorach początkowe liczby uznawane są za kiepskie. Jeśli to jest
 ważne, pomija
 > > > > się wiele początkowych liczb. Ten generator jest tylko do minimalnego
 sprawdzenia, ale jakoś
 > > > > odruchowo pominąłem chociaż 100 początkowych liczb. Generalnie, pobieranie co
 N-tego bitu to
 > > > > najprostsza technika zwiększająca jakość generatora - ale spowalniająca
 generator.
 > > > Wychodzi nam to samo, myślałem, że pominąłem pierwsze 500 bitów, a pominąłeś
 100. Oczywiście zdaję sobie sprawę z tych słabości początkowych bitów, sam
 projektowałem moje generatory, żeby unikać podobnych problemów. Niemniej mam
 przekonanie, że nawet bez pominięcia pierwszych bitów ten generator też dobrze by
 sobie poradził.
 > > >
 > > > Ale mniejsza z tym. Mamy te same generatory i ewidentnie problem jest z
 formatem danych.
 > > Super, zawęziłeś obszar w którym jest problem :)
 > >
 > > Pozdrawiam
 > Czy możesz mi powiedzieć co konkretnie robisz z uzyskaną liczbą w formacie
 dziesiętnym w C++, że zamieniasz ją na format binarny (ten właściwy format, nie
 stringa binarnego jak w Pythonie). Spróbuję popytać i znaleźć tego odpowiednik w
 Pythonie.
 
 Nie wiem jak mogę pomóc i trochę się gubię kiedy jaki dokładnie format masz na myśli
 :)
 
 Zobacz, poniżej jest format binarny, bo ma same zera i jedynki:
 01010111010101001001010
 Ale przecież czytasz to jako tekst, więc może to jest format tekstowy? ;-)
 
 Może tego szukasz:
 
 https://stackoverflow.com/questions/908331/how-to-wr
 ite-binary-data-to-stdout-in-python-3
 
 import sys
 sys.stdout.buffer.write(b"some binary data")
 
 Pozdrawiam
 
 
Następne wpisy z tego wątku
- 23.08.21 22:47 o...@g...com
- 23.08.21 23:06 o...@g...com
- 23.08.21 23:46 M.M.
- 24.08.21 00:27 o...@g...com
- 24.08.21 00:54 o...@g...com
- 24.08.21 01:43 o...@g...com
- 24.08.21 16:20 o...@g...com
- 24.08.21 17:49 o...@g...com
- 25.08.21 04:15 o...@g...com
- 25.08.21 04:24 o...@g...com
- 27.08.21 00:52 o...@g...com
- 29.08.21 16:29 o...@g...com
- 31.08.21 00:57 o...@g...com
- 31.08.21 02:36 M.M.
- 31.08.21 10:04 o...@g...com
Najnowsze wątki z tej grupy
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
Najnowsze wątki
- 2025-10-31 Warszawa => Starszy Konsultant SAP - obszar PP <=
- 2025-10-31 Zamek elektroniczny
- 2025-10-31 Warszawa => Sales Assistant <=
- 2025-10-31 Warszawa => Senior SAP Consultant - PP area <=
- 2025-10-31 Warszawa => Junior Rekruter <=
- 2025-10-31 Warszawa => Engineering Manager (doświadczenie w branży lotniczej lu
- 2025-10-30 Był neosędzia w składzie jest cofka w apelacji [dożywocie za potrójne zabójstwo]
- 2025-10-30 Warszawa => Lead SAP PP Consultant <=
- 2025-10-30 Poznań => Konsultant SAP HCM <=
- 2025-10-30 Warszawa => Junior Rekruter <=
- 2025-10-30 Warszawa => Senior SAP Consultant - PP area <=
- 2025-10-30 Zakrzewo => SAP HCM Consultant <=
- 2025-10-30 Gang przestępców napadających przestępców już rozbity! [CBŚP,media,prawny humor]
- 2025-10-30 Kraków => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu
- 2025-10-30 Kraków => Production Coordinator / Representant Product Dev <=




![Jak reklamować ośrodek wypoczynkowy lub hotel? [© kadmy - fotolia.com] Jak reklamować ośrodek wypoczynkowy lub hotel?](https://s3.egospodarka.pl/grafika2/reklama-internetowa/Jak-reklamowac-osrodek-wypoczynkowy-lub-hotel-221435-150x100crop.jpg) 
![Ranking lokat i kont oszczędnościowych. Przegląd możliwości dostępnych we wrześniu 2025 [© freepik] Ranking lokat i kont oszczędnościowych. Przegląd możliwości dostępnych we wrześniu 2025](https://s3.egospodarka.pl/grafika2/najlepsze-lokaty/Ranking-lokat-i-kont-oszczednosciowych-Przeglad-mozliwosci-dostepnych-we-wrzesniu-2025-268649-150x100crop.jpg) 
![Ranking kantorów internetowych. Gdzie najlepsze kursy walut? [© Pavel Bobrovskiy - Fotolia.com] Ranking kantorów internetowych. Gdzie najlepsze kursy walut?](https://s3.egospodarka.pl/grafika2/kantory-internetowe/Ranking-kantorow-internetowych-Gdzie-najlepsze-kursy-walut-218154-150x100crop.jpg) 
![Podatek od wynajmu mieszkania 2023 - jakie stawki i formy opodatkowania? [© Africa Studio - Fotolia.com] Podatek od wynajmu mieszkania 2023 - jakie stawki i formy opodatkowania?](https://s3.egospodarka.pl/grafika2/wynajem-mieszkania/Podatek-od-wynajmu-mieszkania-2023-jakie-stawki-i-formy-opodatkowania-249032-150x100crop.jpg) 
 Elektromobilność dojrzewa. Auta elektryczne kupujemy z rozsądku, nie dla idei
Elektromobilność dojrzewa. Auta elektryczne kupujemy z rozsądku, nie dla idei 
 
 
 
![Milion na koncie? Wystarczyło inwestować po około 2 tysiące miesięcznie [© wygenerowane przez AI] Milion na koncie? Wystarczyło inwestować po około 2 tysiące miesięcznie](https://s3.egospodarka.pl/grafika2/oszczedzanie-pieniedzy/Milion-na-koncie-Wystarczylo-inwestowac-po-okolo-2-tysiace-miesiecznie-269397-150x100crop.jpg) 
![Wynajem mieszkania w Warszawie pochłania 44% pensji. Zobacz, jak wypadamy na tle Europy [© pixabay] Wynajem mieszkania w Warszawie pochłania 44% pensji. Zobacz, jak wypadamy na tle Europy](https://s3.egospodarka.pl/grafika2/rynek-najmu/Wynajem-mieszkania-w-Warszawie-pochlania-44-pensji-Zobacz-jak-wypadamy-na-tle-Europy-269391-150x100crop.jpg) 
![Lot z niespodzianką - jak overbooking zmienia podróż i jakie prawa mają pasażerowie? [© wygenerowane przez AI] Lot z niespodzianką - jak overbooking zmienia podróż i jakie prawa mają pasażerowie?](https://s3.egospodarka.pl/grafika2/prawa-pasazera/Lot-z-niespodzianka-jak-overbooking-zmienia-podroz-i-jakie-prawa-maja-pasazerowie-269384-150x100crop.jpg) 
![Lider z sercem: empatia i zaufanie jako klucz do sukcesu zespołu [© wygenerowane przez AI] Lider z sercem: empatia i zaufanie jako klucz do sukcesu zespołu](https://s3.egospodarka.pl/grafika2/lider/Lider-z-sercem-empatia-i-zaufanie-jako-klucz-do-sukcesu-zespolu-269133-150x100crop.png) 
![Bańka AI za 5 bilionów dolarów: Kiedy inwestorzy powiedzą: sprawdzam? [© wygenerowane przez AI] Bańka AI za 5 bilionów dolarów: Kiedy inwestorzy powiedzą: sprawdzam?](https://s3.egospodarka.pl/grafika2/AI/Banka-AI-za-5-bilionow-dolarow-Kiedy-inwestorzy-powiedza-sprawdzam-269382-150x100crop.png) 
 


