Sprytne Okazje — promocje, kody rabatowe i wyprzedaże

Generator losowych liczb całkowitych

Generuj jedną lub wiele losowych liczb całkowitych w dowolnym zakresie. Bez powtórzeń lub z powtórzeniami. Do losowań, gier i testów. Bezpłatnie.

Bezpieczne (SSL)
Przetwarzanie Lokalne
100% Darmowe
Instrukcja
  • 1
    Wprowadź dane
    Wpisz treść, wklej tekst lub załaduj plik z dysku.
  • 2
    Kliknij przycisk
    Narzędzie natychmiast przetworzy Twoje dane w przeglądarce.
  • 3
    Pobierz wynik
    Skopiuj gotowy tekst lub zapisz plik na urządzeniu.
function runTool() {
  return "Wynik gotowy w 0.1s";
}
Wygenerowano: 10

Liczba wylosowanych

10

Liczby w wyniku — kafelki aktualizują się na żywo

Zakres

1 – 100

Minimum i maksimum z formularza

Najmniejsza

27

Najniższa wartość w tym losowaniu

Największa

96

Najwyższa wartość w tym losowaniu

Średnia

58,40

Suma liczb podzielona przez ich liczbę

Tryb losowania

Bezpieczny

random_int — kryptograficzny generator losowy

71
96
27
50
92
30
36
48
55
79

W trybie „Bezpieczny (zalecany)” silnik losuje funkcją random_int(min, max) — kryptograficznym generatorem losowym PHP, w którym każda liczba z zakresu ma identyczne prawdopodobieństwo. Funkcja mt_rand używana jest wyłącznie w trybie deterministycznym (do powtarzalnych sekwencji z ziarnem). Liczba możliwych wyników to zawsze (maks − min) + 1 — dokładnie tak liczy ją silnik.

Przykłady zakresów i ich zastosowania
ZakresMożliwych wynikówTypowe zastosowanie
1 – 6 6 Rzut kostką (1 wynik)
1 – 49 49 Losowanie 6 unikalnych liczb bez powtórzeń
0 – 1 2 Orzeł i reszka (0/1)
1 – 100 100 Klasyczne losowanie „od 1 do 100”
-30 – 30 61 Zakres z liczbami ujemnymi (np. temperatura)

Pułapka „ważenia kostką”: liczby nie są ważone — generator nie faworyzuje środkowych wartości ani nie „wyrównuje” częstotliwości między kolejnymi losowaniami. Na 100 rzutów kostką wynik 6 może paść 25 razy, a wynik 1 tylko 9 razy i to wciąż jest uczciwy generator; wyrównanie pojawia się dopiero na bardzo długim dystansie.

Skąd bierze się losowość i jak jej nie zepsuć

Uczciwość: random_int z kodu silnika

W trybie „Bezpieczny” każda liczba powstaje z random_int() — generatora kryptograficznego (CSPRNG), którego nie da się przewidzieć na podstawie poprzednich wyników. To ta sama klasa losowości, której używa się do tokenów i haseł, więc do losowań, nagród i testów A/B nadaje się w pełni. Tryb deterministyczny celowo używa zwykłego mt_rand z ziarnem — w zamian za słabszą losowość daje identyczne sekwencje przy tym samym ziarnie.

Liczby nie są ważone

Generator nie „rozpycha” wyników po zakresie: w krótkiej serii braki i skupiska są normalne, a średnia z 10 rzutów potrafi mocno odbiegać od teoretycznej. Jeśli zależy Ci na równych częstościach, zwiększ liczbę losowań albo losuj bez duplikatów — wtedy każda wartość z zakresu pojawi się co najwyżej raz.

Unikalność i wykluczenia

Opcja „Zezwól na duplikaty” wyłączona wymusza unikalne wyniki — przy gęstym zakresie silnik tasuje wszystkie liczby zakresu algorytmem Fishera–Yatesa i bierze pierwsze N. Lista „Wyklucz” usuwa wartości przed losowaniem (np. pechowe 13); jeśli wykluczenia pochłoną cały zakres albo poprosisz o więcej unikalnych liczb, niż zostało, narzędzie zwraca komunikat zamiast wymuszać wynik.

Ujemne zakresy i granice

Minimum może być większe od zera albo ujemne (np. −30 do 30), ale minimum musi być ≤ maksimum — inaczej losowanie nie ma sensu i pojawia się komunikat. Pola przyjmują liczby całkowite z zakresu ±1 000 000 000, a jednorazowo wygenerujesz do 1 000 liczb.

Wskazówka: całą listę skopiujesz jednym kliknięciem albo pobierzesz jako plik .txt — wygodne przy wrzucaniu liczb do arkusza, losowania na żywo czy generowania danych testowych.

Oceń to narzędzie:

Powiązane narzędzia

Inne narzędzia, które mogą Ci się przydać

Generator losowych liczb całkowitych – losuj liczby w zakresie

Losowe liczby całkowite są potrzebne w wielu kontekstach: losowanie zwycięzcy konkursu, rzut kostką, generowanie danych testowych, gry karciane, algorytmy. Generator tworzy losowe liczby w wybranym zakresie (min-max), opcjonalnie bez powtórzeń, z możliwością wygenerowania wielu naraz.

generator losowych liczb losowanie liczb całkowitych random integer generator losuj liczby bez powtórzeń

Parametry generatora

Zakres: min i max (włącznie). Ilość: 1-1000 liczb naraz. Bez powtórzeń: każda liczba pojawia się max raz (wymaga max-min+1 >= ilość). Z powtórzeniami: niezależne losowania. Sortowanie: wynik posortowany rosnąco lub losowa kolejność. Format: jedna per linia, przecinkami, CSV.

Algorytm losowania

Math.random(): pseudo-losowy (PRNG), deterministyczny z seed. Zakres: Math.floor(Math.random() * (max - min + 1)) + min. Bez powtórzeń: Fisher-Yates shuffle na pełnym zakresie → pierwsze N. Alternatywnie: Set + losowanie aż zbierze N unikalnych. Kryptograficznie bezpieczny: crypto.getRandomValues() (dla ważnych losowań).

Zastosowania losowych liczb

Konkurs/losowanie: wybierz zwycięzcę z listy numerowanej. Kostka: zakres 1-6. Karta z talii: 1-52. Karta z grupy 4 kolory: 1-13 × 4. Lottery Polska: 1-49 (6 unikalnych). Eurojackpot: 1-50 (5) + 1-12 (2). LOTO: 6 z 49. PIN testowy: 4 cyfry (1000-9999). PESEL fragment: losowe cyfry.

Prawdziwa losowość vs pseudo-losowość

PRNG (Pseudo-Random Number Generator): Math.random(), deterministyczny, szybki. Wystarczający dla: gier, testów, statystyk. Kryptograficznie bezpieczny (CSPRNG): crypto.getRandomValues(), unpredictable. Wymagany dla: klucze kryptograficzne, tokeny bezpieczeństwa, losowania o konsekwencjach finansowych. Random.org: true random z szumu atmosferycznego.

Jak powstaje liczba całkowita w zadanym zakresie

Zakres definiujesz dwiema liczbami: min i max, przy czym oba końce należą do zakresu. Szerokość zakresu to max − min + 1, a nie max − min — dla przedziału 1–6 daje to 6 możliwych wyników, a nie 5. Każda wartość z tego zbioru ma takie samo prawdopodobieństwo 1/(max − min + 1), o ile losowanie jest równoważne i nie stosuje się żadnych filtrów. To założenie nazywa się rozkładem jednostajnym i jest podstawą wiarygodności wyniku.

Losowanie z powtórzeniami to pojedyncze, niezależne zdarzenie powtórzone N razy: wynik poprzedniego losowania nie wpływa na następne. Losowanie bez powtórzeń działa inaczej — z zakresu tworzona jest tablica wszystkich wartości (49 pozycji dla 1–49), a następnie mieszana algorytmem Fishera-Yatesa: przechodzimy od końca tablicy i zamieniamy bieżący element z losowo wybranym elementem z części jeszcze nieprzetworzonej. Pierwsze N pozycji po przemieszaniu to wynik. Mieszanie jest konieczne, bo pobranie pierwszych N elementów z nieprzemieszczonej tablicy zwróciłoby po prostu 1, 2, 3…

Warunkiem trybu bez powtórzeń jest max − min + 1 ≥ ilość. Dla 6 liczb z zakresu 1–49 warunek jest spełniony z zapasem (49 ≥ 6), ale przy 10 liczbach z zakresu 1–8 narzędzie nie ma z czego losować i musi zgłosić błąd. Warto wiedzieć, że naiwne wyliczanie indeksu przez resztę z dzielenia (losowa wartość modulo szerokość zakresu) daje lekko nierównomierny rozkład, gdy liczba możliwych wartości generatora nie dzieli się przez szerokość zakresu — poprawne implementacje odrzucają część wylosowanych wartości i losują ponownie.

Przykład krok po kroku: 6 unikalnych liczb z zakresu 1–49

Cel: wylosować 6 unikalnych liczb z zakresu 1–49, wynik posortowany rosnąco, jedna liczba na linię.

  1. Ustaw parametry: min = 1, max = 49, ilość = 6, tryb bez powtórzeń, sortowanie rosnąco, format jedna per linia.
  2. Sprawdź warunek wykonalności: 49 − 1 + 1 = 49 dostępnych wartości, potrzebujesz 6, więc 49 ≥ 6 — losowanie jest możliwe.
  3. Zbuduj tablicę roboczą o 49 pozycjach i wypełnij ją kolejnymi wartościami od 1 do 49.
  4. Przemieszaj tablicę algorytmem Fishera-Yatesa: 48 zamian, każda z losowym indeksem z nieprzetworzonej części tablicy.
  5. Pobierz 6 pierwszych elementów przemieszanej tablicy i posortuj je rosnąco — to gotowy wynik.
  6. Sprawdź sens statystyczny: pojedyncza liczba trafia do wyniku z szansą 6/49 ≈ 12,24%, a w jednym losowaniu 1/49 ≈ 2,04%. Liczba możliwych zestawów sześcioliczbowych z 49 to 13 983 816.

Typowe zakresy i liczba dostępnych wartości

ZastosowanieZakres min–maxLiczba możliwych wartości
Rzut kostką1–66, z powtórzeniami
Karta z talii1–5252
Karta w jednym kolorze1–1313
Lottery / LOTO1–4949, losuje się 6 unikalnych
Eurojackpot – liczby główne1–5050, losuje się 5 unikalnych
Eurojackpot – liczby Euro1–1212, losuje się 2 unikalne
PIN testowy (4 cyfry)1000–99999000
Indeks rekordu w danych testowych1–10001000, górna granica ilości naraz

Praktyczne wskazówki użycia

  • Sprawdź pojemność zakresu przed losowaniem bez powtórzeń — narzędzie przyjmuje od 1 do 1000 liczb naraz, ale w trybie unikalnym zakres musi mieć co najmniej tyle wartości, ile chcesz wylosować.
  • Sortuj tylko wtedy, gdy kolejność nie ma znaczenia — przy losowaniu zwycięzcy posortowana lista sugeruje ranking, którego losowanie wcale nie tworzy.
  • Dobierz format pod miejsce docelowe — jedna per linia wkleja się kolumnowo do kodu i arkusza, przecinki oraz CSV sprawdzają się przy imporcie i dalszym przetwarzaniu.
  • Dla losowań o skutkach finansowych użyj źródła kryptograficznego — Math.random() jest deterministyczny i przewidywalny dla kogoś, kto zna stan generatora, a crypto.getRandomValues() tego nie ujawnia.
  • Nie losuj ponownie, aż wynik będzie „ładny” — odrzucanie rezultatów, które wyglądają mało losowo (np. liczby sąsiadujące), psuje rozkład jednostajny i faworyzuje pozostałe kombinacje.

Czego narzędzie nie uwzględnia

  • Brak ustawiania ziarna losowania — nie odtworzysz identycznego wyniku dwa razy, co bywa potrzebne w testach jednostkowych i przy debugowaniu.
  • Jakość źródła losowości — Math.random() to PRNG deterministyczny; dla kluczy, tokenów i losowań z konsekwencjami finansowymi nie daje gwarancji nieprzewidywalności.
  • Unikalność dotyczy tylko jednej serii — narzędzie nie pamięta poprzednich losowań, więc ta sama liczba może wypaść w dwóch seriach pod rząd, co jest zgodne z prawdopodobieństwem, ale bywa odbierane jako błąd.
  • Brak weryfikacji statystycznej wyniku — narzędzie nie liczy entropii ani nie wykonuje testów losowości; jednostajność wynika z algorytmu, a nie z kontroli po fakcie.

Najczęstsze pytania

Jak losowo wybrać zwycięzcę konkursu?

Ponumeruj uczestników 1-N. Generator: zakres 1-N, 1 liczba. Numer = zwycięzca. Transparentność: nagraj ekran podczas losowania. Lub: Random.org (certyfikowane losowania). Do konkursów z nagrodami: warto użyć CSPRNG lub zewnętrznego serwisu. Dokumentuj: screenshot wylosowanego numeru + timestamp.

Jak działają loterie (LOTO 6/49)?

Kula fizyczna: N kul w bębnie, losowane bez powtórzeń. LOTO Polska: 6 z 49 = 13 983 816 kombinacji. Szansa: 1 w ~14 mln. Algorytm online: Fisher-Yates na tablicy [1..49], pierwsze 6 wyników. Ważne: każda kombinacja ma równe prawdopodobieństwo (nie ma "gorących numerów").

Czy pewne liczby "wypadają częściej"?

Statystycznie: nie – dla poprawnego PRNG każda liczba ma równe prawdopodobieństwo. Confirmation bias: zapamiętujemy potwierdzające przypadki (17 "wypadło trzy razy!") i ignorujemy inne. Gambler's fallacy: "nie wypadała długo = zaraz wypadnie". Test statystyczny: chi-squared test na rozkładzie = Random.org przechodzi.

Jak generować losowe liczby w Excelu?

=LOSOWO() lub =RAND(): losowa liczba 0-1. Zakres: =INT(RAND()*(max-min+1)+min). Bez powtórzeń: skomplikowane (użyj RANK.EQ lub VBA). =RANDBETWEEN(1,49): prosty sposób z limitem. Uwaga: przelicza się przy każdej zmianie arkusza – skopiuj i wklej jako "Wartości" by zamrozić.

Jak testować generator losowych liczb?

Chi-squared test: sprawdź czy rozkład jest równomierny. Runs test: sprawdź czy brak wzorców. Diehard tests: zestaw testów statystycznych losowości. TestU01 (L'Ecuyer): biblioteka do testowania PRNG. W praktyce: Math.random() i crypto.getRandomValues() przechodzą standardowe testy.

Czy generator losowych liczb całkowitych jest darmowy?

Tak, narzędzie jest darmowe i nie wymaga rejestracji. Ograniczenie dotyczy tylko jednej serii — możesz wylosować od 1 do 1000 liczb naraz.

Jak wylosować liczby bez powtórzeń?

Włącz tryb bez powtórzeń i upewnij się, że zakres ma co najmniej tyle wartości, ile liczb chcesz wylosować, czyli max − min + 1 ≥ ilość. Dla 6 liczb z zakresu 1–49 warunek jest spełniony.

Czy Math.random() wystarczy do losowania zwycięzcy konkursu?

Do typowego konkursu lub gry tak, bo dla uczestnika wynik jest praktycznie nieprzewidywalny. Jeśli stawką są pieniądze lub bezpieczeństwo, użyj źródła kryptograficznego, np. crypto.getRandomValues() albo Random.org.

Dlaczego losowanie bez powtórzeń nie działa dla mojego zakresu?

Bo żądana ilość przekracza liczbę dostępnych wartości. Z zakresu 1–8 możesz wylosować najwyżej 8 unikalnych liczb, a przy 10 narzędzie nie ma z czego wybierać.

Czy posortowanie wyniku zmienia prawdopodobieństwo?

Nie. Sortowanie zmienia wyłącznie kolejność zapisu — zbiór wylosowanych liczb i jego prawdopodobieństwo pozostają takie same.

Powiązane narzedzia: losowanie z listy, generator UUID i kolo fortuny.

Zainstaluj Webp.pl Miej narzędzia we własnej kieszeni!