Problléme de débutant

débutant -  
 nico -
Bonjour,

J'ai besion de votre aide:
J'ai fait un programme(pour connaitre les diviseurs du monbre saisi) pour parfaire mon code mais j'ai deux avertissements:

:: === multiplicateur, Debug ===
main.c:24: warning: left-hand operand of comma expression has no effect
main.c:31: warning: control reaches end of non-void function
:: === Génération finie: 0 erreurs, 2 avertissements ===

J'ai voulu faire une boucle pour réexécute le programme mais mon adaptation ne marche pas: y a t il une commande pour faire çà au lieu de devoir une boucle?

Code : C - Afficher / masquer les numéros de ligne#include <stdio.h>
#include <stdlib.h>

int main()
{
int encore; /* variable de boucle de "reboot du programe */
char rep= 'N'; /* variable caractére de la question de réexécuter le programme*/
long reste=0; /* modulo de la variable nbre (sujet de recherche */
long nbre=0; /*variable a laquelle on travail pour trouver le */
long i; /*compteur pour trouver le diviseur*/
while (encore==1)
{

printf("Entre le nombre entier pour trouver ses diviseurs: ");
scanf("%ld",&nbre);
printf("Les diviseurs du nombre %ld sont : ", nbre);
for (i=1 ; i<nbre ; i++) /* boucle pour trouver les diviseur */
{
reste = nbre % i;
if (reste == 0)
printf ("%ld ", i );
}
printf ("\n");
reste, nbre =0; /* réinitialiser de variable pour une éventuelle "reboot du code" (il y un probleme)*/
printf ("Veux-tu un autre nombre pour découvrir ses diviseurs? O/N");
scanf ("%c", &rep);
if (rep=='O')
encore=0;
}

}ligne 31

En mettant le "return 0", j'ai une erreur ( main.c:31: error: syntax error before '}' token)

Merci
Configuration: Windows XP
Internet Explorer 7.0
code block

1 réponse

  1. nico
     
    essaye sa ==>
    #include <stdlib.h> 
    
    int main(void) 
    { 
    int encore=0; /* variable de boucle de "reboot du programe */ 
    char rep= "O"; /* variable caractére de la question de réexécuter le programme*/ 
    long reste=0; /* modulo de la variable nbre (sujet de recherche */ 
    long nbre=0; /*variable a laquelle on travail pour trouver le */ 
    long i=0; /*compteur pour trouver le diviseur*/ 
    while (encore) // tant que la variable est vrai la boucle continu si elle devien fausse la boucle s'arette. Ici pas besoin de metre encore==1
    { 
    printf("Entre le nombre entier pour trouver ses diviseurs: "); 
    scanf("%ld",&nbre); 
    printf("Les diviseurs du nombre %ld sont : ", nbre); 
    for (i=1 ; i<nbre ; i++) /* boucle pour trouver les diviseur */ 
    { 
    reste = nbre % i; 
    if (reste == 0) 
    printf ("%ld ", i ); 
    } 
    // un printf('\n'); virer
    reste, nbre =0; /* réinitialiser de variable pour une éventuelle "reboot du code" (il y un probleme)*/ 
    printf ("\nVeux-tu un autre nombre pour découvrir ses diviseurs? O/N"); 
    scanf ("%c", &rep); 
    if (rep=="N") 
    encore=0; 
    } 
    return 0;
    }
    
    
    0