[..] Des resultats dif avec les memes parametres !!

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Jeco
Niveau 4
Niveau 4
Messages : 74
Enregistré le : dim. 05 oct. 2014 16:31
Status : Hors ligne

[..] Des resultats dif avec les memes parametres !!

#1

Message par Jeco »

Bonjour j'ai voulu faire une suite qui donnerais les tout nombres premiers dans l'ordre
j'ai partiellement réussi: oui elle donne tout les nombre premiers dans l’ordre cad U0=2; U1=3; U2=5...
Mais non parce qu’en fait j'ai triché ^^ en fait je fais juste un test de primalité sur tout les nombres mais de façon tel que sa apparait sous la forme d'un calcul
Bon le prog est très lourd et le calcul de la suite encore plus mais je suis tomber sur ce problème avant d'avoir pu simplifier l'algo
Voila pour l'explication maintenant le probleme:
► Afficher le texte
A la ligne 35 lorsque le prog calcul le 8eme nb premier et plus un message affichera pour vous montrer l'erreur:
$last+1 sera=20
$nb-1 sera=20
Cfunc($last+1,$nb-1) sera =20
mais Cfunc(20,20) sera=0
normalement vous avez pu remarque le problème sans moi
j'ai essayer le prog sur un autre PC mais sa donne la même chose...
J’espère que qqn pourra m'aider parce que la je sais vraiment pas quoi faire :shock:
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [..] Des resultats dif avec les memes parametres !!

#2

Message par jchd »

Ta factorielle explose bien trop vite pour être utilisable. De plus, ton algo me semble bien compliqué pour si peu.
Le plus simple et toujours aussi efficient reste encore le crible d'Eratosthène.

Code : Tout sélectionner

Local $iLimit = 10000
Local $aComposites[$iLimit + 1]
;~ $aComposites[0] = 1  ; ne sert à rien, juste pour la cohérence
;~ $aComposites[1] = 1 ; ditto
Local $n
For $i = 2 To $iLimit
    If $aComposites[$i] Then ContinueLoop
    For $j = 2 * $i To $iLimit Step $i
        $aComposites[$j] = 1
    Next
    ConsoleWrite($i & @LF)
Next
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Jeco
Niveau 4
Niveau 4
Messages : 74
Enregistré le : dim. 05 oct. 2014 16:31
Status : Hors ligne

Re: [..] Des resultats dif avec les memes parametres !!

#3

Message par Jeco »

J'ai du mal m'expliquer :( je ne veux pas un algo pour générer des nb premier je voudrais savoir d’où vient l'erreur pour ne pas la refaire plus tard
sinon merci d'avoir prit du temps pour me répondre je connaissais la méthode mais pas le nom :D
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [..] Des resultats dif avec les memes parametres !!

#4

Message par jchd »

Je te l'ai dit : ta factorielle explose et ton algo est ... bizarre.

n n!
1 1
2 2
3 6
4 24
5 120
6 720
7 5040
8 40320
9 362880
10 3628800
11 39916800
12 479001600
13 6227020800
14 87178291200
15 1307674368000
16 20922789888000
17 355687428096000
18 6402373705728000
19 121645100408832000
20 2432902008176640000
21 51090942171709440000 > 2^63-1 = 9223372036854775807
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Jeco
Niveau 4
Niveau 4
Messages : 74
Enregistré le : dim. 05 oct. 2014 16:31
Status : Hors ligne

Re: [..] Des resultats dif avec les memes parametres !!

#5

Message par Jeco »

ouais je sais pour l'algo :D pk faire simple quand on peut faire compliquer :mrgreen:
par contre je ne comprend pas pk la factorielle fait qu'a un moment sa fonctionne alors que 2 secondes avant et avec le même calcul sa ne fonctionnait pas
même si elle explose un calcul reste un calcul pour un ordi le résultat devrait être le meme
Répondre