# Générateur de nombres premiers

> Listez les nombres premiers d'une plage ou tirez-en N aléatoirement. Crible d'Ératosthène, calculs instantanés dans le navigateur, sans serveur.

URL: https://acrafto.com/fr/generateur-nombres-premiers/

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.

## Qu’est-ce qu’un nombre premier ?

Un **nombre premier** est un entier naturel supérieur à 1 qui n’a que deux diviseurs distincts : 1 et lui-même. Les plus petits nombres premiers sont 2, 3, 5, 7, 11, 13, 17, 19, 23, 29… Le nombre 2 est le seul nombre premier pair – tous les autres nombres pairs sont divisibles par deux.

Des nombres comme 4 (= 2 × 2), 6 (= 2 × 3) ou 15 (= 3 × 5) **ne sont pas** des nombres premiers – on les appelle des nombres composés.

## Comment fonctionne le générateur ?

Pour lister tous les nombres premiers dans une plage, nous utilisons le **crible d’Ératosthène** – l’un des algorithmes les plus anciens et les plus efficaces, décrit par le mathématicien grec Ératosthène de Cyrène vers 240 av. J.-C.

L’algorithme élimine progressivement les multiples de chaque nombre premier trouvé. Ce qui reste sont les nombres premiers. Le calcul entier se déroule **directement dans votre navigateur** – aucune donnée n’est envoyée au serveur.

Pour la sélection aléatoire, le générateur construit d’abord une liste de tous les nombres premiers dans la plage, puis en sélectionne aléatoirement le nombre désiré à l’aide d’un générateur cryptographiquement sécurisé (`crypto.getRandomValues()`).

## Fonctionnalités du générateur

- **Tous les nombres premiers** – liste chaque nombre premier dans la plage spécifiée (max. 10 000)
- **Sélection aléatoire** – sélectionne N nombres premiers aléatoires dans la plage (adapté aux grandes plages)
- **Tri** – triez les résultats par ordre croissant
- **Séparateur** – choisissez comment les nombres seront séparés lors de la copie
- **Préréglages rapides** – les plages les plus courantes en un clic

## Où sont utilisés les nombres premiers ?

### Cryptographie et sécurité

Les nombres premiers sont la base de la cryptographie moderne. Des algorithmes comme **RSA** reposent sur le principe qu’il est facile de calculer le produit de deux grands nombres premiers, mais que la factorisation inverse en facteurs premiers est très difficile sur le plan informatique.

- **Chiffrement RSA** – les clés sont générées à partir de deux grands nombres premiers
- **Diffie-Hellman** – échange de clés sur un module premier
- **Fonctions de hachage** – les nombres premiers comme constantes magiques (SHA, MD5)

### Mathématiques et science

- **Théorie des nombres** – les blocs de construction fondamentaux des nombres entiers
- **Conjecture de Goldbach** – tout nombre pair > 2 peut être exprimé comme la somme de deux nombres premiers (encore non prouvé)
- **Hypothèse de Riemann** – l’un des problèmes de Hilbert, concerne la distribution des nombres premiers

### Utilisations pratiques

- **Tables de hachage** – la taille de la table en tant que nombre premier réduit les collisions
- **Générateurs de nombres pseudo-aléatoires** – congruence linéaire avec un module premier
- **Musique et rythme** – polyrythmies avec des longueurs de cycle premières

## Distribution des nombres premiers

Les nombres premiers sont distribués irrégulièrement parmi les entiers naturels, mais leur densité diminue avec l’augmentation de la plage. C’est ce que décrit le **Théorème des nombres premiers** : le nombre de nombres premiers jusqu’à N est approximativement N / ln(N).

| Plage | Nombre de nombres premiers |
| --- | --- |
| 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 |

## Le crible d’Ératosthène étape par étape

```
Plage 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. Choisissez 2, barrez ses multiples : 4, 6, 8, 10, 12...
2. Choisissez 3, barrez ses multiples : 9, 15, 21, 27...
3. Choisissez 5, barrez ses multiples : 25...
4. √30 ≈ 5.5 → terminé

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

## Le crible d’Ératosthène en code

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

## Questions fréquentes (FAQ)

### Le 1 est-il un nombre premier ?

Non. Le nombre 1 n'est traditionnellement pas considéré comme un nombre premier. La raison est mathématique – si nous considérions 1 comme un nombre premier, le théorème fondamental de l'arithmétique (décomposition unique en facteurs premiers) ne serait plus valide.

### Le 2 est-il un nombre premier ?

Oui. Le nombre 2 est le plus petit et le seul nombre premier pair. Tous les autres nombres pairs sont divisibles par deux, donc composés.

### Combien y a-t-il de nombres premiers ?

Une infinité. Euclide l'a démontré vers 300 av. J.-C. par une élégante preuve par l'absurde : supposons qu'il n'existe qu'un nombre fini de nombres premiers. Leur produit + 1 ne peut alors être divisible par aucun d'entre eux – c'est donc un nouveau nombre premier, une contradiction.

### Que sont les nombres premiers jumeaux ?

Les nombres premiers jumeaux sont des paires de nombres premiers qui diffèrent de 2, par exemple (3, 5), (11, 13), (17, 19), (41, 43). La question de savoir s'il en existe une infinité reste non résolue en mathématiques à ce jour (Conjecture des nombres premiers jumeaux).

### Quelle est la rapidité de l'algorithme ?

Le crible d'Ératosthène a une complexité temporelle de O(n log log n). Pour une plage allant jusqu'à 10 millions, le calcul dans le navigateur prend généralement moins de 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))
- 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))
- 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))
