Accueil > > > CRIBLE D'ERATOSTHENE
CRIBLE D'ERATOSTHENE
Information sur la source
Description
Un petit programme de recherche des nombres premiers en utilisant la méthode d'Eratosthene. Algorithme différent de celui posté la semaine dernière. Celui de la semaine dernière cherchait les nombres premiers d'une façon classique : le nombre n'est pas premier s'il existe au moins un seul le precedant telle que le modulo est <> de zero. Par contre pour celui là, pour chaque nombre (non eliminé donc premier), il faut éliminer tous ses multiples (d'où le tableau utilisé).
Source
- /**
- * @author chabacha
- *
- */
-
- class Eratosthene {
- /*Recherche des nombres tels qu'ils ne sont divisibles
- que par eux même (ou 1!)*/
- public static void main (String args[]) {
- int i,j,borne_sup=1100,nbr_int_premier=0;
- boolean []tableau_premiers = new boolean [borne_sup-1];
-
- for (i=0;i<=tableau_premiers.length-1;i++)
- {
- tableau_premiers[i]=true;
- }
- // le chiffre 2 est premier "par defaut", d'ailleurs, tous au debut.
- for (i=2;i<=borne_sup;i++)
- {
- if (tableau_premiers[i-2]==true){ // bypass les nbres non 1ers
- j=i+1;
- while (j<=borne_sup)
- {
- if ((j%i)==0) tableau_premiers[j-2]=false;
- j++;
- }
- nbr_int_premier++;
- if (nbr_int_premier%13!=0) System.out.print(i+" ");
- else System.out.println(i+" ");
- }
- }
- /*for (i=0;i<=tableau_premiers.length-1;i++)
- {
- if (tableau_premiers[i]==true)
- {
- nbr_int_premier++;
- if (nbr_int_premier%13!=0) System.out.print(i+2+" ");
- else System.out.println(i+2+" ");
- }
- }*/
- System.out.println("");
- System.out.println("Nomre de nbr premiers : "+nbr_int_premier+" entre "+2+" et "+borne_sup);
- }
- }
/**
* @author chabacha
*
*/
class Eratosthene {
/*Recherche des nombres tels qu'ils ne sont divisibles
que par eux même (ou 1!)*/
public static void main (String args[]) {
int i,j,borne_sup=1100,nbr_int_premier=0;
boolean []tableau_premiers = new boolean [borne_sup-1];
for (i=0;i<=tableau_premiers.length-1;i++)
{
tableau_premiers[i]=true;
}
// le chiffre 2 est premier "par defaut", d'ailleurs, tous au debut.
for (i=2;i<=borne_sup;i++)
{
if (tableau_premiers[i-2]==true){ // bypass les nbres non 1ers
j=i+1;
while (j<=borne_sup)
{
if ((j%i)==0) tableau_premiers[j-2]=false;
j++;
}
nbr_int_premier++;
if (nbr_int_premier%13!=0) System.out.print(i+" ");
else System.out.println(i+" ");
}
}
/*for (i=0;i<=tableau_premiers.length-1;i++)
{
if (tableau_premiers[i]==true)
{
nbr_int_premier++;
if (nbr_int_premier%13!=0) System.out.print(i+2+" ");
else System.out.println(i+2+" ");
}
}*/
System.out.println("");
System.out.println("Nomre de nbr premiers : "+nbr_int_premier+" entre "+2+" et "+borne_sup);
}
}
Conclusion
Devinez quel est le traitement le plus long ? voilà la prochaine foi je posterai une animation (SWT, lib GC) d'un tableau de cent cases.
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Nombres amis - (en Java) [ par HEVs ]
Bonjour,Je recherche un algorithme qui donne les nombres amis (ou amicaux).Si vous avez encore les exercicres de vos études... alors merci!David---Ave
Les nombres négatifs et le complément à 2 [ par Tara ]
Bonjour à tous,Je désire lire un fichier au format binaire dans lequel chaque bit a une signification précise et donc son importance. A la lecture du
changement de base pour la representation des nombres [ par fox66 ]
bonjour,je suis debutant, je dois effectué un prog en java d'un outil pedagogique pour comprendre les pbs de changement de base pour la representation
probleme nombres d'un tableau [ par Skyffer3 ]
Salut a tous ! Voila quand je fais un tableau, par exemple :x = new int[3];for (i = 0; i < 3; i++){int[i] = 0;}La boucle for remplit donc le table
SteamTokenizer - lire les nombres dans un fichier [ par guns17 ]
bonjour, voila le code (le plus important): type == StreamTokenizer.TT_NUMBER; String mot = Integer.toString(type); System.out.println(mot); dans
débutante en java [ par hananetsdi ]
<TD id=HB_Focus_Element vAlign=top width="100%" background="" height=250 UNSELECTAB
Premiers pas ... [ par Akamaru88 ]
Bonjour à tous, Jusqu'à présent je programmais uniquement en Basic sur ma calculatrice (Ti-89 titanium), je me débrouillais&n
la factorisation d'un entier par le crible algébrique [ par infcrypt ]
samicomment je peut factoriser un entier en un produit de 2 nombres premiers en utilisantla methode (le crible algébrique)..je souhaite un algori
nombres aléatoires entiers ? [ par s_lannois ]
Bonjour,Je voudrais créer un petit programme qui calculerait la somme des nombres pairs compris entre deux nombres aléatoires compris entre 0 et 100.
Lecture fichier java - texte + nombres [ par Roxxx ]
Bonjour,je dois créer un programme java dont une partie consiste à lire un fichier.txt qui contient des informations à récupérer de divers types: Stri
|
Derniers Blogs
UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|