# Generator prostih brojeva

> Pronađite sve proste brojeve u rasponu ili nasumično odaberite N njih. Koristi Eratostenovo sito za instant izračun u pregledniku – bez servera, besplatno.

URL: https://acrafto.com/bs/generator-prostih-brojeva/

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.

## Šta je prost broj?

**Prost broj** je prirodan broj veći od 1 koji je djeljiv samo jedinicom i samim sobom. Najmanji prosti brojevi su 2, 3, 5, 7, 11, 13, 17, 19, 23, 29… Broj 2 je jedini paran prost broj – svi ostali parni brojevi su djeljivi sa dva.

Brojevi kao što su 4 (= 2 × 2), 6 (= 2 × 3) ili 15 (= 3 × 5) **nisu** prosti brojevi – nazivamo ih složenim brojevima.

## Kako funkcionira generator?

Za prikaz svih prostih brojeva u rasponu koristimo **Eratostenovo sito** – jedan od najstarijih i najefikasnijih algoritama, koji je opisao grčki matematičar Eratosten iz Kirene oko 240. godine p.n.e.

Algoritam postepeno precrtava višekratnike svakog pronađenog prostog broja. Ono što preostane su prosti brojevi. Cijeli izračun se odvija **direktno u vašem pregledniku** – nikakvi podaci se ne šalju na server.

Za nasumičan odabir, generator prvo sastavlja listu svih prostih brojeva u rasponu, a zatim iz nje nasumično bira željeni broj koristeći kriptografski siguran generator (`crypto.getRandomValues()`).

## Funkcije generatora

- **Svi prosti brojevi** – prikazuje svaki prost broj u datom rasponu (maks. 10 000)
- **Nasumičan odabir** – bira N nasumičnih prostih brojeva iz raspona (prikladno za velike raspone)
- **Sortiranje** – sortira rezultate uzlazno
- **Razdjelnik** – odaberite kako će brojevi biti razdvojeni prilikom kopiranja
- **Brze postavke** – najčešći rasponi jednim klikom

## Gdje se koriste prosti brojevi?

### Kriptografija i sigurnost

Prosti brojevi su osnova moderne kriptografije. Algoritmi poput **RSA** funkcioniraju na principu da je umnožak dva velika prosta broja lako izračunati, ali je obrnuto razlaganje na proste faktore računarski vrlo zahtjevno.

- **RSA šifriranje** – ključevi se generišu iz dva velika prosta broja
- **Diffie-Hellman** – razmjena ključeva preko prostog modula
- **Hash funkcije** – prosti brojevi kao magične konstante (SHA, MD5)

### Matematika i nauka

- **Teorija brojeva** – osnovni građevinski elementi cijelih brojeva
- **Goldbachova pretpostavka** – svaki paran broj > 2 može se izraziti kao zbir dva prosta broja (još uvijek nedokazano)
- **Riemannova hipoteza** – jedan od Hilbertovih problema, tiče se distribucije prostih brojeva

### Praktična upotreba

- **Hash tabele** – veličina tabele kao prost broj smanjuje kolizije
- **Generatori pseudonasumičnih brojeva** – linearna kongruencija s prostim modulom
- **Muzika i ritam** – poliritmovi s prostim dužinama ciklusa

## Distribucija prostih brojeva

Prosti brojevi su raspoređeni nepravilno među prirodnim brojevima, ali njihova gustina opada s rastućim rasponom. Ovo opisuje **Teorem o prostim brojevima**: broj prostih brojeva do N je približno N / ln(N).

| Raspon | Broj prostih brojeva |
| --- | --- |
| 1–10 | 4 |
| 1–100 | 25 |
| 1–1 000 | 168 |
| 1–10 000 | 1 229 |
| 1–100 000 | 9 592 |
| 1–1 000 000 | 78 498 |

## Eratostenovo sito korak po korak

```
Raspon 2–30:
[2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30]

1. Odaberi 2, precrtaj višekratnike: 4, 6, 8, 10, 12...
2. Odaberi 3, precrtaj višekratnike: 9, 15, 21, 27...
3. Odaberi 5, precrtaj višekratnike: 25...
4. √30 ≈ 5.5 → gotovo

Prosti brojevi: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29
```

## Eratostenovo sito u kodu

### JavaScript

```
function sieve(to) {
  const composite = new Uint8Array(to + 1);
  const primes = [];
  for (let p = 2; p <= to; p++) {
    if (composite[p]) continue;
    primes.push(p);
    for (let j = p * p; j <= to; j += p) composite[j] = 1;
  }
  return primes;
}
```

### Python

```
def sieve(n):
    composite = bytearray(n + 1)
    primes = []
    for p in range(2, n + 1):
        if not composite[p]:
            primes.append(p)
            for j in range(p * p, n + 1, p):
                composite[j] = 1
    return primes
```

## Često postavljana pitanja (FAQ)

### Je li 1 prost broj?

Ne. Broj 1 se tradicionalno ne smatra prostim brojem. Razlog je matematički – kada bismo 1 smatrali prostim brojem, teorema o jedinstvenoj faktorizaciji bi izgubila validnost.

### Je li 2 prost broj?

Da. Broj 2 je najmanji i ujedno jedini paran prost broj. Svi ostali parni brojevi su djeljivi sa dva, odnosno složeni su.

### Koliko prostih brojeva postoji?

Beskonačno mnogo. Euklid je to dokazao oko 300. godine p.n.e. elegantnim dokazom kontradikcijom: pretpostavimo da postoji konačno mnogo prostih brojeva. Njihov umnožak + 1 tada ne može biti djeljiv nijednim od njih – stoga je to novi prost broj, kontradikcija.

### Šta su prosti brojevi blizanci?

Prosti brojevi blizanci su parovi prostih brojeva koji se razlikuju za 2, na primjer (3, 5), (11, 13), (17, 19), (41, 43). Da li ih postoji beskonačno mnogo, još uvijek je neriješeno pitanje u matematici (Pretpostavka o prostim brojevima blizancima).

### Koliko brzo algoritam radi?

Eratostenovo sito ima vremensku složenost O(n log log n). Za raspon do 10 miliona, izračun u pregledniku se obično izvršava ispod 100 ms.

## Other languages

- Čeština (cs): [Generátor prvočísel](https://acrafto.com/cs/generator-prvocisel/) ([Markdown](https://acrafto.com/cs/generator-prvocisel/index.md))
- Slovenčina (sk): [Generátor prvočísel](https://acrafto.com/sk/generator-prvocisel/) ([Markdown](https://acrafto.com/sk/generator-prvocisel/index.md))
- English (en): [Prime Number Generator](https://acrafto.com/en/prime-number-generator/) ([Markdown](https://acrafto.com/en/prime-number-generator/index.md))
- Deutsch (de): [Primzahlgenerator](https://acrafto.com/de/online-primzahl-generator/) ([Markdown](https://acrafto.com/de/online-primzahl-generator/index.md))
- Français (fr): [Générateur de nombres premiers](https://acrafto.com/fr/generateur-nombres-premiers/) ([Markdown](https://acrafto.com/fr/generateur-nombres-premiers/index.md))
- Español (es): [Generador de números primos](https://acrafto.com/es/generador-numeros-primos-online/) ([Markdown](https://acrafto.com/es/generador-numeros-primos-online/index.md))
- Italiano (it): [Generatore di numeri primi](https://acrafto.com/it/generatore-numeri-primi/) ([Markdown](https://acrafto.com/it/generatore-numeri-primi/index.md))
- Português (pt): [Gerador de números primos](https://acrafto.com/pt/gerador-numeros-primos-online/) ([Markdown](https://acrafto.com/pt/gerador-numeros-primos-online/index.md))
- Nederlands (nl): [Priemgetallengenerator](https://acrafto.com/nl/online-priemgetalgenerator/) ([Markdown](https://acrafto.com/nl/online-priemgetalgenerator/index.md))
- Polski (pl): [Generator liczb pierwszych](https://acrafto.com/pl/generator-liczb-pierwszych/) ([Markdown](https://acrafto.com/pl/generator-liczb-pierwszych/index.md))
- Română (ro): [Generator numere prime](https://acrafto.com/ro/generator-numere-prime-online/) ([Markdown](https://acrafto.com/ro/generator-numere-prime-online/index.md))
- Magyar (hu): [Prímszám generátor](https://acrafto.com/hu/primszam-generator/) ([Markdown](https://acrafto.com/hu/primszam-generator/index.md))
- Ελληνικά (el): [Γεννήτρια πρώτων αριθμών](https://acrafto.com/el/gennitria-proton-arithmon-online/) ([Markdown](https://acrafto.com/el/gennitria-proton-arithmon-online/index.md))
- Български (bg): [Генератор на прости числа](https://acrafto.com/bg/generator-na-prosti-chisla-onlajn/) ([Markdown](https://acrafto.com/bg/generator-na-prosti-chisla-onlajn/index.md))
- Hrvatski (hr): [Generator prostih brojeva](https://acrafto.com/hr/generator-prostih-brojeva-online/) ([Markdown](https://acrafto.com/hr/generator-prostih-brojeva-online/index.md))
- Slovenščina (sl): [Generator praštevil](https://acrafto.com/sl/generator-prastevil/) ([Markdown](https://acrafto.com/sl/generator-prastevil/index.md))
- Eesti (et): [Algarvude generaator](https://acrafto.com/et/algarvude-generaator/) ([Markdown](https://acrafto.com/et/algarvude-generaator/index.md))
- Latviešu (lv): [Pirmskaitļu ģenerators](https://acrafto.com/lv/primskaitlu-generators/) ([Markdown](https://acrafto.com/lv/primskaitlu-generators/index.md))
- Lietuvių (lt): [Pirminių skaičių generatorius](https://acrafto.com/lt/pirminiu-skaiciu-generatorius/) ([Markdown](https://acrafto.com/lt/pirminiu-skaiciu-generatorius/index.md))
- Svenska (sv): [Primtalsgenerator](https://acrafto.com/sv/primtalsgenerator-online/) ([Markdown](https://acrafto.com/sv/primtalsgenerator-online/index.md))
- Dansk (da): [Primtalsgenerator](https://acrafto.com/da/primtal-generator-online/) ([Markdown](https://acrafto.com/da/primtal-generator-online/index.md))
- Suomi (fi): [Alkulukugeneraattori](https://acrafto.com/fi/alkuluku-generaattori/) ([Markdown](https://acrafto.com/fi/alkuluku-generaattori/index.md))
- Norsk (no): [Primtallsgenerator](https://acrafto.com/no/primtallsgenerator/) ([Markdown](https://acrafto.com/no/primtallsgenerator/index.md))
- Українська (uk): [Генератор простих чисел](https://acrafto.com/uk/generator-prostyh-chysel/) ([Markdown](https://acrafto.com/uk/generator-prostyh-chysel/index.md))
- Русский (ru): [Генератор простых чисел](https://acrafto.com/ru/generator-prostykh-chisel-onlayn/) ([Markdown](https://acrafto.com/ru/generator-prostykh-chisel-onlayn/index.md))
- Српски (sr): [Generator prostih brojeva](https://acrafto.com/sr/generator-prostih-brojeva-online/) ([Markdown](https://acrafto.com/sr/generator-prostih-brojeva-online/index.md))
- Македонски (mk): [Генератор на прости броеви](https://acrafto.com/mk/generator-na-prosti-broevi/) ([Markdown](https://acrafto.com/mk/generator-na-prosti-broevi/index.md))
- Shqip (sq): [Gjenerator numrash të thjeshtë](https://acrafto.com/sq/gjenerator-numrash-te-thjeshte/) ([Markdown](https://acrafto.com/sq/gjenerator-numrash-te-thjeshte/index.md))
- Türkçe (tr): [Asal sayı bulucu](https://acrafto.com/tr/asal-sayi-olusturucu/) ([Markdown](https://acrafto.com/tr/asal-sayi-olusturucu/index.md))
- 日本語 (ja): [素数一覧・生成ツール](https://acrafto.com/ja/online-prime-number-generator/) ([Markdown](https://acrafto.com/ja/online-prime-number-generator/index.md))
- 한국어 (ko): [소수 구하기](https://acrafto.com/ko/prime-number-generator/) ([Markdown](https://acrafto.com/ko/prime-number-generator/index.md))
- العربية (ar): [مولد الأعداد الأولية](https://acrafto.com/ar/prime-number-generator/) ([Markdown](https://acrafto.com/ar/prime-number-generator/index.md))
- हिन्दी (hi): [अभाज्य संख्या जनरेटर](https://acrafto.com/hi/prime-generator/) ([Markdown](https://acrafto.com/hi/prime-generator/index.md))
- Bahasa Indonesia (id): [Generator bilangan prima](https://acrafto.com/id/generator-bilangan-prima-online/) ([Markdown](https://acrafto.com/id/generator-bilangan-prima-online/index.md))
- Tiếng Việt (vi): [Trình tạo số nguyên tố](https://acrafto.com/vi/bo-tao-so-nguyen-to-truc-tuyen/) ([Markdown](https://acrafto.com/vi/bo-tao-so-nguyen-to-truc-tuyen/index.md))
- ไทย (th): [หาจำนวนเฉพาะ](https://acrafto.com/th/prime-number-generator/) ([Markdown](https://acrafto.com/th/prime-number-generator/index.md))
- עברית (he): [מחולל מספרים ראשוניים](https://acrafto.com/he/prime-number-generator/) ([Markdown](https://acrafto.com/he/prime-number-generator/index.md))
