Bonjour,
J'ai créé un programme simple pour décomposer un entier en produits de facteurs premiers.
decomp(n)
Prgm
Local divise,d,fc,i
Define divise()=Prgm
While mod(n,d)=0
d->fc[i]
n/d->n
i+1->i
EndWhile
EndPrgm
{}->fc
2->d
divise()
3->d
Loop
divise()
d+2->d
If d*d>n
Exit
EndLoop
If n>1
n->fc[i]
Disp fc
EndPrgm
Comment se fait-il que je tombe sur l'erreur suivante à l'exécution : A test did not resolve to TRUE or FALSE ?
Si je "sors" le sous programme de test de division par les nombres impaires (ligne 4 à 10) en créant ce sous-programme à part, j'ai la même erreur...
Par contre ce programme fonctionne sans le sous-programme "interne" de division par les nombres impaires.
decomp(n)
Prgm
Local d,fc,i
{}->fc
1->i
While mod(n,2)=0
2->fc[i]
n/2->n
i+1->i
EndWhile
3->d
Loop
While mod(n,d)=0
d->fc[i]
n/d->n
i+1->i
EndWhile
d+2->d
If d*d>n
Exit
EndLoop
If n>1
n->fc[i]
Disp fc
EndPrgm
Si vous pouvez m'éclairer sur mon erreur.