# Primtalsgenerator

> Lista alla primtal inom ett intervall eller välj N slumpmässiga. Använder Eratosthenes såll för snabba beräkningar direkt i webbläsaren. Helt gratis.

URL: https://acrafto.com/sv/primtalsgenerator-online/

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.

## Vad är ett primtal?

Ett **primtal** är ett naturligt tal större än 1 som endast är delbart med 1 och sig själv. De minsta primtalen är 2, 3, 5, 7, 11, 13, 17, 19, 23, 29… Talet 2 är det enda jämna primtalet – alla andra jämna tal är delbara med två.

Tal som 4 (= 2 × 2), 6 (= 2 × 3) eller 15 (= 3 × 5) är **inte** primtal – vi kallar dem sammansatta tal.

## Hur fungerar generatorn?

För att lista alla primtal inom ett intervall använder vi **Eratosthenes såll** – en av de äldsta och mest effektiva algoritmerna, beskriven av den grekiske matematikern Eratosthenes från Kyrene runt år 240 f.Kr.

Algoritmen korsar successivt ut multipler av varje hittat primtal. Det som återstår är primtal. Hela beräkningen sker **direkt i din webbläsare** – ingen data skickas till servern.

För slumpmässigt urval bygger generatorn först en lista över alla primtal i intervallet och väljer sedan slumpmässigt det önskade antalet med en kryptografiskt säker generator (`crypto.getRandomValues()`).

## Generatorns funktioner

- **Alla primtal** – listar varje primtal i det angivna intervallet (max 10 000)
- **Slumpmässigt urval** – väljer N slumpmässiga primtal från intervallet (lämpligt för stora intervall)
- **Sortering** – sortera resultaten i stigande ordning
- **Avgränsare** – välj hur talen ska avgränsas vid kopiering
- **Snabba förinställningar** – de vanligaste intervallen med ett klick

## Var används primtal?

### Kryptografi och säkerhet

Primtal är grunden för modern kryptografi. Algoritmer som **RSA** bygger på principen att produkten av två stora primtal är lätt att beräkna, men att faktorisera tillbaka till primfaktorerna är beräkningsmässigt mycket krävande.

- **RSA-kryptering** – nycklar genereras från två stora primtal
- **Diffie-Hellman** – nyckelutbyte med primtalsmodul
- **Hashfunktioner** – primtal som magiska konstanter (SHA, MD5)

### Matematik och vetenskap

- **Talteori** – de grundläggande byggstenarna för heltal
- **Goldbachs förmodan** – varje jämnt tal > 2 kan uttryckas som summan av två primtal (ännu obevisat)
- **Riemannhypotesen** – ett av Hilberts problem, rörande fördelningen av primtal

### Praktisk användning

- **Hashtabeller** – storleken på tabellen som ett primtal minskar kollisioner
- **Pseudorandomsgeneratorer** – linjär kongruens med primtalsmodul
- **Musik och rytm** – polyrytmik med primtalslängder på cykler

## Fördelning av primtal

Primtal är oregelbundet fördelade bland naturliga tal, men deras densitet minskar med ökande intervall. Detta beskrivs av **Primtalssatsen**: antalet primtal upp till N är ungefär N / ln(N).

| Intervall | Antal primtal |
| --- | --- |
| 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 |

## Eratosthenes såll steg för steg

```
Intervall 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. Välj 2, kryssa ut multipler: 4, 6, 8, 10, 12...
2. Välj 3, kryssa ut multipler: 9, 15, 21, 27...
3. Välj 5, kryssa ut multipler: 25...
4. √30 ≈ 5.5 → klart

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

## Eratosthenes såll i kod

### 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
```

## Vanliga frågor (FAQ)

### Är 1 ett primtal?

Nej. Talet 1 betraktas traditionellt inte som ett primtal. Anledningen är matematisk – om vi skulle betrakta 1 som ett primtal skulle satsen om den unika primtalsfaktoriseringen inte längre gälla.

### Är 2 ett primtal?

Ja. Talet 2 är det minsta och samtidigt det enda jämna primtalet. Alla andra jämna tal är delbara med två, och därmed sammansatta.

### Hur många primtal finns det?

Oändligt många. Euklides bevisade detta runt år 300 f.Kr. med ett elegant motsägelsebevis: antag att det finns ett ändligt antal primtal. Deras produkt + 1 kan då inte vara delbart med något av dem – därmed är det ett nytt primtal, en motsägelse.

### Vad är primtalstvillingar?

Primtalstvillingar är par av primtal som skiljer sig med 2, till exempel (3, 5), (11, 13), (17, 19), (41, 43). Huruvida det finns oändligt många av dem är fortfarande en olöst fråga inom matematiken (Förmodan om primtalstvillingar).

### Hur snabbt fungerar algoritmen?

Eratosthenes såll har en tidskomplexitet på O(n log log n). För ett intervall upp till 10 miljoner sker beräkningen i webbläsaren vanligtvis under 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))
- 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))
- Bosanski (bs): [Generator prostih brojeva](https://acrafto.com/bs/generator-prostih-brojeva/) ([Markdown](https://acrafto.com/bs/generator-prostih-brojeva/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))
