# Generator liczb losowych

> Darmowy generator liczb losowych: bezpieczne lub powtarzalne losowania, sześć rozkładów, wagi, notacja kości i statystyki na żywo. W 100% w przeglądarce.

URL: https://acrafto.com/pl/generator-liczb-losowych-online/  
Updated: 2026-08-28

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

## Jak działa generator liczb losowych?

Generator daje Ci **dwa źródła losowości**, a Ty wybierasz, które pasuje do zadania.

**Bezpieczne losowanie** czerpie entropię z Twojego systemu operacyjnego przez Web Crypto API (`crypto.getRandomValues()`). Jest nieprzewidywalne i niepowtarzalne — właściwy wybór dla prawdziwego losowania, w którym nikt nie powinien być w stanie z góry odgadnąć wyniku.

**Z ziarnem (seeded)** zamienia dowolny wpisany tekst w stan początkowy generatora deterministycznego (xoshiro128\*\*). To samo ziarno zawsze daje te same liczby, więc każdy może powtórzyć Twoje losowanie i potwierdzić, że wynik zgadza się z tym, co deklarujesz.

Oba tryby działają **wyłącznie w Twojej przeglądarce**. Żadna liczba nigdy nie trafia na serwer.

### Bez błędu modulo

Większość prostych generatorów mapuje losową wartość 32-bitową na zadany zakres za pomocą `value % range`. Gdy zakres nie dzieli się równo przez 2³², najniższe liczby pojawiają się nieco częściej niż pozostałe. Przy tysiącach losowań staje się to mierzalne.

Ten generator używa zamiast tego **próbkowania odrzucającego (rejection sampling)**: wartości, które wpadłyby w nierówny „ogon”, są odrzucane i losowane ponownie. Każda liczba w Twoim zakresie ma dokładnie taką samą szansę. Możesz to sam zweryfikować wbudowanym testem jednorodności.

## Co potrafi generator

### Zakres

- **Minimum i maksimum** — dowolny zakres całkowity lub dziesiętny, w tym wartości ujemne
- **Ile liczb** — od 1 do **1 000 000** w jednym losowaniu
- **Bez powtórzeń** — każda liczba pojawia się co najwyżej raz, tak jak w prawdziwym losowaniu
- **Sortowanie** — kolejność losowania, rosnąco lub malejąco; sortowanie nigdy nie wpływa na losowość
- **Krok** — ogranicz wyniki do wielokrotności podanej wartości, tak by pojawiały się tylko np. 0, 5, 10, 15
- **Wykluczone liczby** — lista wartości, które nigdy nie mogą zostać wylosowane

### Tryb

- **Źródło losowości** — bezpieczne (Web Crypto) lub z ziarnem (powtarzalne)
- **Ziarno** — dowolny tekst; to samo ziarno zawsze odtwarza to samo losowanie
- **Rozkład** — jednostajny, normalny (Gaussa), wykładniczy, Poissona, trójkątny, dwumianowy
- **Wagi** — nadaj wybranym liczbom większą szansę, zapisane jako `number:weight`
- **Notacja kości** — `3d6+2`, `d20`, `2d20kh1` dla przewagi, `4d6dl1` do losowania statystyk postaci

### Wyjście

- **Separator** — przecinek, spacja, średnik, tabulator, nowa linia lub dowolny wpisany znak
- **System liczbowy** — dziesiętny, binarny, ósemkowy, szesnastkowy lub podstawa 36
- **Wypełnianie zerami** — zamień 7 na 007 dla numerów biletów czy identyfikatorów
- **Prefiks i sufiks** — otocz każdą liczbę stałym tekstem
- **Szablon** — `{n}` to liczba, `{i}` jej pozycja, więc `user{n}` staje się `user42`
- **Kopiuj jako** — zwykły tekst, CSV, JSON lub tabelę Markdown

### Statystyki

Każde losowanie jest podsumowywane na żywo: suma, średnia, mediana, minimum, maksimum, odchylenie standardowe, a także ile wyników jest parzystych, nieparzystych lub pierwszych. Histogram pokazuje kształt rozkładu, a **test chi-kwadrat** mówi, czy wyniki faktycznie odpowiadają rozkładowi jednostajnemu.

### Historia

Ostatnie 50 losowań jest zapisywanych w Twojej przeglądarce wraz z ustawieniami, które je wygenerowały — jedno kliknięcie przywraca dowolne z nich. Często używane konfiguracje można zapisać jako nazwane presety, a całość wyeksportować do pliku JSON i zaimportować na innym urządzeniu. Nic nie jest przechowywane nigdzie poza tą przeglądarką.

### Klawiatura

Naciśnij **Spację** lub **R**, aby losować ponownie bez sięgania po myszkę.

## Szybkie presety

| Preset | Zakres | Ilość | Zastosowanie |
| --- | --- | --- | --- |
| 🎲 Kostka | 1–6 | 1 | Gry planszowe, podejmowanie decyzji |
| 🪙 Moneta | 0–1 | 1 | Orzeł czy reszka |
| 🎰 Loteria | 1–49 | 6 | Unikalne, posortowane, jak w prawdziwym losowaniu |
| 💯 1–100 | 1–100 | 1 | Procenty, podziały A/B |
| 🔢 PIN | 0–9 | 4 | Cztery cyfry, powtórzenia dozwolone |

## Powtarzalne losowania

Tryb z ziarnem istnieje na te chwile, gdy „zaufaj mi, to było losowe” to za mało.

Wybierz ziarno, na które wszyscy mogą się zgodzić z góry — datę, hashtag, cenę zamknięcia czegoś publicznie dostępnego — i ogłoś je przed losowaniem. Każdy może wtedy wpisać to samo ziarno z tymi samymi ustawieniami i otrzymać identyczny wynik. Nie udowodniłeś, że liczby były nieprzewidywalne — udowodniłeś, że nie losowałeś ponownie, aż spodobał Ci się wynik.

To także sposób na uczynienie losowości powtarzalną w pracy, którą trzeba dać się sprawdzić: plan próbkowania, który kolega może uruchomić ponownie, zestaw danych testowych, który pozostaje stabilny w całym pakiecie testów, ćwiczenie na zajęciach, w którym każdy uczeń dostaje te same „losowe” dane.

## Wybór rozkładu

**Jednostajny** daje każdej liczbie w zakresie taką samą szansę. To zwykle rozumie się pod pojęciem „losowy” i jest to ustawienie domyślne.

Pozostałe skupiają wyniki wokół pewnej wartości, co odpowiada zachowaniu wielkości występujących w rzeczywistości:

- **Normalny (Gaussa)** — wzrost, błędy pomiarowe, wyniki testów. Ustaw średnią i odchylenie standardowe.
- **Wykładniczy** — czasy oczekiwania między niezależnymi zdarzeniami.
- **Poissona** — liczba zdarzeń w ustalonym przedziale: przyjazdy na godzinę, wady na partię.
- **Trójkątny** — gdy znasz minimum, maksimum i wartość najbardziej prawdopodobną, ale nic więcej. Częsty w szacunkach projektowych.
- **Dwumianowy** — liczba sukcesów przy ustalonej liczbie prób i stałym prawdopodobieństwie.

Każdy rozkład jest przycinany do ustawionego zakresu, więc długi ogon rozkładu Gaussa nie może wyjść poza minimum i maksimum.

## Gdzie stosuje się liczby losowe

### Gry i rozrywka

- **Gry planszowe** — rzuty kostką, kolejność tur
- **Gry RPG** — `4d6dl1` do generowania cech postaci, `2d20kh1` dla przewagi
- **Losowania nagród** — wybór zwycięzcy, z ziarnem, aby uczestnicy mogli to zweryfikować
- **Quizy** — losowa kolejność pytań

### Statystyka i nauka

- **Próbkowanie** — losowanie próby z populacji bez powtórzeń
- **Testy A/B** — przypisywanie uczestników do grup
- **Symulacja Monte Carlo** — szacowanie prawdopodobieństwa przez wielokrotne powtarzanie
- **Bootstrapping** — resampling do szacowania niepewności

### Programowanie

- **Dane testowe** — milion wartości generowanych w tle, tak by strona pozostawała responsywna
- **Fixtures** — z ziarnem, dzięki czemu nieudany test zawodzi tak samo za każdym razem
- **Losowe identyfikatory** — z wypełnieniem, prefiksami lub szablonem
- **Testy obciążeniowe** — identyfikatory według szablonu, np. `user{n}@example.com`

## Liczby prawdziwie losowe a pseudolosowe

|  | `Math.random()` | `crypto.getRandomValues()` | Z ziarnem (xoshiro128\*\*) |
| --- | --- | --- | --- |
| **Typ** | Pseudolosowe | Kryptograficznie bezpieczne | Pseudolosowe, deterministyczne |
| **Źródło entropii** | Ziarno wybrane przez silnik | Systemowy CSPRNG | Twój tekst-ziarno |
| **Przewidywalne?** | Potencjalnie | Nie | Tak, celowo |
| **Powtarzalne?** | Nie | Nie | Zawsze |
| **Dobre dla bezpieczeństwa** | Nie | Tak | Nie |
| **Dobre dla statystyki** | Zależy | Tak | Tak |
| **Dobre dla weryfikowalnych losowań** | Nie | Nie | Tak |

`Math.random()` nie jest nigdzie używany w tym narzędziu.

## Losowania bez powtórzeń

Po włączeniu opcji **Bez powtórzeń** każda liczba w zakresie pojawia się co najwyżej raz. Idealne do:

- **Losowań nagród** — nikt nie może wygrać dwukrotnie
- **Permutacji** — przetasowania zbioru elementów
- **Bingo** — losowania liczb, które pozostają wylosowane
- **Loterii** — sześć różnych liczb z zakresu 1–49

Losowanie wykorzystuje częściowe tasowanie Fishera–Yatesa, więc wylosowanie 6 liczb z miliona jest tak samo szybkie jak wylosowanie 6 z 49 — nigdy nie zapętla się w nadziei uniknięcia kolizji. Jeśli poprosisz o więcej unikalnych liczb, niż dostarczyć może zakres, generator poinformuje o tym zamiast się zawiesić.

## Eksport wyników

Skopiuj liczby jako zwykły tekst z dowolnym separatorem, jako **CSV** do arkusza kalkulacyjnego, jako **JSON** do kodu lub jako **tabelę Markdown** do dokumentacji. Bardzo duże losowania pozostają w pamięci w całości i kopiują się w całości, mimo że na ekranie losowany jest tylko pierwszy kilka tysięcy.

## Generowanie liczb losowych we własnym kodzie

### JavaScript / TypeScript

```
// Cryptographically secure integer in [min, max], without modulo bias.
// The naive `value % range` favours low numbers when range does not
// divide 2**32 evenly - so we reject values in the uneven tail.
function randomInt(min, max) {
  const range = max - min + 1;
  const limit = Math.floor(0x100000000 / range) * range;
  const arr = new Uint32Array(1);
  let value;
  do {
    crypto.getRandomValues(arr);
    value = arr[0];
  } while (value >= limit);
  return min + (value % range);
}
```

### Python

```
import random
import secrets

# Cryptographically secure, no modulo bias
n = secrets.randbelow(max - min + 1) + min

# Reproducible: the same seed always gives the same sequence
rng = random.Random('my-seed')
n = rng.randint(min, max)

# Without repetition
sample = random.sample(range(min, max + 1), count)
```

### PHP

```
// Cryptographically secure (PHP 7+), no modulo bias
$n = random_int($min, $max);

// Reproducible
mt_srand(crc32('my-seed'));
$n = mt_rand($min, $max);
```

## Najczęściej zadawane pytania (FAQ)

### Czy wynik jest naprawdę losowy?

W trybie bezpiecznym — tak. Pochodzi z `crypto.getRandomValues()`, kryptograficznie bezpiecznego generatora zasilanego pulą entropii Twojego systemu operacyjnego. Wyniki są rozłożone jednostajnie i nieprzewidywalne. Tryb z ziarnem jest celowo przeciwieństwem: jest powtarzalny, i o to właśnie w nim chodzi.

### Ile liczb mogę wygenerować jednocześnie?

Do 1 000 000. Losowania powyżej 50 000 są obliczane w tle (background worker), dzięki czemu strona pozostaje responsywna, a na ekranie widać pierwsze 2000 wraz z liczbą pozostałych — kopiowanie i tak daje wszystko.

### Czy mogę generować liczby ujemne?

Tak. Ustaw minimum jako liczbę ujemną. Działa pełny zakres liczb JavaScript, w tym zakresy ujemne po obu stronach.

### Czy sortowanie wpływa na losowość?

Nie. Liczby są najpierw losowane, a dopiero potem sortowane. Sortowanie zmienia tylko kolejność, w jakiej je widzisz.

### Czy to samo ziarno da te same liczby jutro?

Tak, i to na dowolnym innym urządzeniu czy w innej przeglądarce. Generator z ziarnem jest w pełni deterministyczny i zależy wyłącznie od Twojego ziarna i ustawień.

### Co mówi mi test jednorodności?

Uruchamia test chi-kwadrat, porównując, jak często faktycznie pojawiała się każda liczba, z tym, jak często powinna się pojawiać. Jeśli statystyka pozostaje poniżej wartości krytycznej, wyniki są zgodne z rozkładem jednostajnym. Potrzebuje odpowiednio wąskiego zakresu i wystarczającej liczby losowań — co najmniej pięciu na każdą możliwą wartość — aby wynik był miarodajny.

### Jak działają wagi?

Zapisz je jako pary `number:weight`, na przykład `1:5, 2:1, 3:1`. W tym przypadku 1 jest pięć razy bardziej prawdopodobna niż 2 lub 3. Liczby, których nie wymienisz, otrzymują wagę zero i nigdy nie zostaną wylosowane.

### Jaka notacja kości jest obsługiwana?

`3d6` rzuca trzema sześciennymi kośćmi. Dodaj modyfikator za pomocą `3d6+2`. Zatrzymuj lub odrzucaj kości za pomocą `kh`, `kl`, `dh`, `dl` — więc `2d20kh1` zatrzymuje wyższy z dwóch rzutów d20 (przewaga), a `4d6dl1` odrzuca najniższy z czterech rzutów d6.

### Czy moja historia jest gdzieś przechowywana?

Tylko w tej przeglądarce, w local storage. Nigdy nie trafia na serwer, nie synchronizuje się z innym urządzeniem i znika po wyczyszczeniu danych witryny. Wyeksportuj ją do JSON, jeśli chcesz ją zachować lub przenieść.

## Other languages

- Čeština (cs): [Generátor náhodných čísel](https://acrafto.com/cs/generator-nahodnych-cisel/) ([Markdown](https://acrafto.com/cs/generator-nahodnych-cisel/index.md))
- Slovenčina (sk): [Generátor náhodných čísel](https://acrafto.com/sk/generator-nahodnych-cisel/) ([Markdown](https://acrafto.com/sk/generator-nahodnych-cisel/index.md))
- English (en): [Random Number Generator](https://acrafto.com/en/online-random-number-generator/) ([Markdown](https://acrafto.com/en/online-random-number-generator/index.md))
- Deutsch (de): [Zufallszahlen Generator](https://acrafto.com/de/zufallszahlen-generator-online/) ([Markdown](https://acrafto.com/de/zufallszahlen-generator-online/index.md))
- Français (fr): [Générateur de nombres aléatoires](https://acrafto.com/fr/generateur-nombres-aleatoires/) ([Markdown](https://acrafto.com/fr/generateur-nombres-aleatoires/index.md))
- Español (es): [Generador de números aleatorios](https://acrafto.com/es/generador-numeros-aleatorios-online/) ([Markdown](https://acrafto.com/es/generador-numeros-aleatorios-online/index.md))
- Italiano (it): [Generatore di numeri casuali](https://acrafto.com/it/generatore-numeri-casuali/) ([Markdown](https://acrafto.com/it/generatore-numeri-casuali/index.md))
- Português (pt): [Gerador de números aleatórios](https://acrafto.com/pt/gerador-numeros-aleatorios/) ([Markdown](https://acrafto.com/pt/gerador-numeros-aleatorios/index.md))
- Nederlands (nl): [Random getal generator](https://acrafto.com/nl/generator-willekeurige-getallen/) ([Markdown](https://acrafto.com/nl/generator-willekeurige-getallen/index.md))
- Română (ro): [Generator numere aleatoare](https://acrafto.com/ro/generator-numere-aleatoare-online/) ([Markdown](https://acrafto.com/ro/generator-numere-aleatoare-online/index.md))
- Magyar (hu): [Véletlenszám generátor](https://acrafto.com/hu/veletlen-szam-generator/) ([Markdown](https://acrafto.com/hu/veletlen-szam-generator/index.md))
- Ελληνικά (el): [Γεννήτρια τυχαίων αριθμών](https://acrafto.com/el/generator-tychaion-arithmon-online/) ([Markdown](https://acrafto.com/el/generator-tychaion-arithmon-online/index.md))
- Български (bg): [Генератор на случайни числа](https://acrafto.com/bg/generator-sluchayni-chisla/) ([Markdown](https://acrafto.com/bg/generator-sluchayni-chisla/index.md))
- Hrvatski (hr): [Generator slučajnih brojeva](https://acrafto.com/hr/generator-nasumicnih-brojeva/) ([Markdown](https://acrafto.com/hr/generator-nasumicnih-brojeva/index.md))
- Slovenščina (sl): [Generator naključnih števil](https://acrafto.com/sl/generator-nakljucnih-stevil/) ([Markdown](https://acrafto.com/sl/generator-nakljucnih-stevil/index.md))
- Eesti (et): [Juhuslike arvude generaator](https://acrafto.com/et/juhuslike-arvude-generaator/) ([Markdown](https://acrafto.com/et/juhuslike-arvude-generaator/index.md))
- Latviešu (lv): [Gadījuma skaitļu ģenerators](https://acrafto.com/lv/gadijuma-skaitlu-generators/) ([Markdown](https://acrafto.com/lv/gadijuma-skaitlu-generators/index.md))
- Lietuvių (lt): [Atsitiktinių skaičių generatorius](https://acrafto.com/lt/atsitiktiniu-skaiciu-generatorius/) ([Markdown](https://acrafto.com/lt/atsitiktiniu-skaiciu-generatorius/index.md))
- Svenska (sv): [Slumptalsgenerator](https://acrafto.com/sv/slumptalsgenerator/) ([Markdown](https://acrafto.com/sv/slumptalsgenerator/index.md))
- Dansk (da): [Tilfældighedsgenerator](https://acrafto.com/da/tilfaeldighedsgenerator-online/) ([Markdown](https://acrafto.com/da/tilfaeldighedsgenerator-online/index.md))
- Suomi (fi): [Satunnaislukugeneraattori](https://acrafto.com/fi/satunnaislukugeneraattori/) ([Markdown](https://acrafto.com/fi/satunnaislukugeneraattori/index.md))
- Norsk (no): [Tilfeldig tallgenerator](https://acrafto.com/no/tilfeldig-tallgenerator/) ([Markdown](https://acrafto.com/no/tilfeldig-tallgenerator/index.md))
- Українська (uk): [Генератор випадкових чисел](https://acrafto.com/uk/generator-vypadkovyh-chysel/) ([Markdown](https://acrafto.com/uk/generator-vypadkovyh-chysel/index.md))
- Русский (ru): [Генератор случайных чисел](https://acrafto.com/ru/generator-sluchajnyh-chisel/) ([Markdown](https://acrafto.com/ru/generator-sluchajnyh-chisel/index.md))
- Српски (sr): [Generator nasumičnih brojeva](https://acrafto.com/sr/generator-nasumicnih-brojeva/) ([Markdown](https://acrafto.com/sr/generator-nasumicnih-brojeva/index.md))
- Македонски (mk): [Генератор на случајни броеви](https://acrafto.com/mk/generator-slucajni-broevi/) ([Markdown](https://acrafto.com/mk/generator-slucajni-broevi/index.md))
- Bosanski (bs): [Generator nasumičnih brojeva](https://acrafto.com/bs/generator-nasumicnih-brojeva/) ([Markdown](https://acrafto.com/bs/generator-nasumicnih-brojeva/index.md))
- Shqip (sq): [Gjenerator numrash të rastësishëm](https://acrafto.com/sq/gjenerator-numrash-rastesishem/) ([Markdown](https://acrafto.com/sq/gjenerator-numrash-rastesishem/index.md))
- Türkçe (tr): [Rastgele sayı üretici](https://acrafto.com/tr/rastgele-sayi-uretici/) ([Markdown](https://acrafto.com/tr/rastgele-sayi-uretici/index.md))
- 日本語 (ja): [乱数生成ツール](https://acrafto.com/ja/ransu-generator/) ([Markdown](https://acrafto.com/ja/ransu-generator/index.md))
- 한국어 (ko): [랜덤 숫자 생성기](https://acrafto.com/ko/random-number-generator/) ([Markdown](https://acrafto.com/ko/random-number-generator/index.md))
- العربية (ar): [مولد أرقام عشوائية](https://acrafto.com/ar/random-number-generator/) ([Markdown](https://acrafto.com/ar/random-number-generator/index.md))
- हिन्दी (hi): [रैंडम नंबर जनरेटर](https://acrafto.com/hi/random-number-generator/) ([Markdown](https://acrafto.com/hi/random-number-generator/index.md))
- Bahasa Indonesia (id): [Generator angka acak](https://acrafto.com/id/generator-angka-acak-online/) ([Markdown](https://acrafto.com/id/generator-angka-acak-online/index.md))
- Tiếng Việt (vi): [Tạo số ngẫu nhiên](https://acrafto.com/vi/cong-cu-tao-so-ngau-nhien/) ([Markdown](https://acrafto.com/vi/cong-cu-tao-so-ngau-nhien/index.md))
- ไทย (th): [สุ่มตัวเลข](https://acrafto.com/th/random-number-generator/) ([Markdown](https://acrafto.com/th/random-number-generator/index.md))
- עברית (he): [מחולל מספרים אקראיים](https://acrafto.com/he/random-number-generator/) ([Markdown](https://acrafto.com/he/random-number-generator/index.md))
