tu as:
Citation :
while(prime == 1){
test = num / v * v;
if(test == v){
prime = 0; } }
|
et c'est à cet endroit que tu vas foirer:
la seule manière de sortir de la boucle, c'est de modifier le 'prime'.
pour cela, d'après ton programme, il faut que test==v.
donc si test!=v, tu as une boucle infinie.
prenons ton programme. ca fait:
num=1 (première itération du premier for)
prime=1
v=2(première itération du second for)
->prime==1: on rentre dans le while
{test=0 (car 1/2=0; 0*2=0)
->0!=2: on ne rentre pas dans le if}
on répète indéfiniment l'opération entre crochets, puisqu'entre les crochets tu ne dis nulle part "prime!=1"
il manque à priori un else, dans lequel un paramètre au moins serait changé (v, test, prime...)
Ou alors change ton while en if... tout dépend de ce que tu souhaites produire avec ce programme
Message édité par Redeka le 03-11-2007 à 12:57:23
---------------
~il Re~