Générer des nombre premier

hoberon Messages postés 6 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 12 décembre 2004 - 12 déc. 2004 à 11:41
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 - 12 déc. 2004 à 17:42
bon alors le problème qui se moi est le suivant:
je dois afficher à lécran tt les nombre premier compris entre 2 et n ( n étant définis par l'utilisateur) mon petit programme doit etre fait en java. je sais que ma méthode de vérification doit
1) vérifier si ma variable test est + grande que 2 (test est de type int)
2) que la variable test%2==0 entraine le rejet de test
3) et j'aimerai que ma méthode retourne true ou false suivant le résultat du test ( ds mon "main" il y aura un test si monObjet.Maméthode() == vrai alors affichage de monObjet.getTest()

Bon mais apres qd test vaut 5 par exemple je dois aussi eleminer par la suiste tt les test%5==0 , et bon je m'embrouille, je touille et j'ai besoin d'un éclairage divin :p

merci d'avance ( si possible ne m'afficher pas un code qui fait ça mais reprenez mon raisonnement et expliquez moi, je ne veux pas avoir 20/20 amon Tp d'info mais surtout comprendre :d )

7 réponses

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
12 déc. 2004 à 13:26
euh... c pour faire quoi ??

j'ai créé un programme sur mon site si tu veux aller voir... il te dones des nombres pre'miers : crible d'ératostène

La seule utilitée de ceci c'est RSA et le calcule de D et lacrypto décrypto sera assez longue trop pour être faite en js...
De plus ça doit se faire avec des nombres énormes qui ne sont pas gérés par js... Tu devras stoquer les nombres dans des tableaux et c chiant et ça ralentit....

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
0
hoberon Messages postés 6 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 12 décembre 2004
12 déc. 2004 à 13:43
heuu en fait j'aimerai simplement qu'on m'explique comment trouver les nombre premier qui sont entre la borne inférieur (=2) et une borne supérieur n (un nombre définis par lutilisateur)
je dois faire ça en java en utilisant les principes de classe et de méthodes le but de tt ça c'est juste de générer des nombre premier :p j'vais regarder si la souce de ton programme est accessible si je trouve reponse a mes question je viendrai le dire ici
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
12 déc. 2004 à 13:44
Mais c juste un défi perso ou un vrai projet ??

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
0
hoberon Messages postés 6 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 12 décembre 2004
12 déc. 2004 à 13:46
bhaa c'est truc perso... par la suite, ds mon cursus je vais etre mis devant des problème mathematique just for fun alors bon je commence déja un peu tt seul :d
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
12 déc. 2004 à 14:22
Si c pour les math alors change de language, en fait, js c'est interprété donc lent.. oriente toi vers le C...

autrement tu peux faire :

i=min;
prem=0;
j=2
prem=1;
while (j*jhttp://coucou747.hopto.org
0
hoberon Messages postés 6 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 12 décembre 2004
12 déc. 2004 à 15:36
public class PrimeGenerator
{
private int entier;
private int premier;
private int test;
private int valeur;

public PrimeGenerator()
{

entier = 0;
}
public PrimeGenerator(int unEntier)
{
entier=unEntier;
}

public boolean verifEntier()
{
if(entier<2)
{
return false;
}
else
{
return true;
}
}
public boolean nextPrime()
{
boolean truc=false;
int i=3;
if(test==2)
{
int Valeur=test;
truc=true;
return truc;
}
else
{
if(test==3)
{
valeur=test;
truc=true;
return truc;
}
else
{
if(test%2==0)
{
truc=false;
return truc;
}
else
{
while(i<test)
{
if(test%i==0)
{
i=i+1;
truc=false;
return truc;

}
else
{
i=i+1;
valeur = test;
truc = true;
return truc;
}
}
return truc;
}
}
}
}
}
public int GetEntier()
{
return entier;
}
public int getValeur()
{
return valeur;
}
public void setTest(int x)
{
test=test+x;
}
public static void main(String[] args)
{
PrimeGenerator test = new PrimeGenerator(2643);
if(test.verifEntier())
{
System.out.println("il n'y a pas de nombres premiers plus petits que " + test.getEntier()+ " ."
}
else
{
test.setTest(2);
}
while(test<=test.getEntier())
{
if(test.nextPrime())
{
System.out.println("" + test.getValeur());
test.setTest(1);
}
else
{
test.setTest(1);
}
}
}

regarde mon code, classe avec un main inclus dedans... il compile pas mais je crois ke ma logik est bonne . kelkun peut il médé ? ^^ ( merci pour ton ptit code mais je crois pas ke ça fais ce que je demande ...)
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
12 déc. 2004 à 17:42
Selon moi t'as pas besoin, d'une classe pour cela... Un nombre est un nombre et non un objet particulier...

A ta place je changerais de forum pour aller vers un forum adapté...
Ici c'est du js que l'on fait perso, je n'ai jamais fait de java... en javascript les class n'existent pas... enfin je ne crois pas...

In a dream, I saw me, drop dead... U was here, U cried... It was just a deam, if I die, U won't cry, maybe, U'll be happy

http://coucou747.hopto.org
0
Rejoignez-nous