Boucle infinie ?

Résolu/Fermé
Utilisateur anonyme - 26 oct. 2010 à 11:38
fardenco Messages postés 254 Date d'inscription samedi 17 janvier 2009 Statut Membre Dernière intervention 19 août 2015 - 26 oct. 2010 à 11:44
Bonjour,
j'ai modifié un petit code source d'un convertisseur décimal-binaire, mais lors de la phrase : "Si vous voulez recommencer, tapez 1", la boucle devient infinie, quelque soit la réponse (en int) ! :
#include <stdio.h>
#include <stdlib.h>
#define MAX 30

int main()
{
    int recommencer;
    do
    {
        recommencer = 0;
        int nombre, i = 0, bin[MAX] = {0}, j;
    printf("\n Nombre à convertir en binaire : "); scanf("%d", &nombre);

// convertiseur
    while (nombre != 0) {
        bin[i] = nombre % 2;
        nombre /= 2;
        i++;
    }
    printf("\n");

// inverse le sens du tableau, pour avoir l'écriture en binaire dans le bon sens
    for (j=i; j>0; j--) {
        printf("%d", bin[j-1]);

// séparre les chiffres en bloc de 4
        if ((j) % 4 == 1) {
            printf(" ");
        }
    }
    printf("\n");
    printf("Si vous voulez convertir un autre nombre, tapez 1 :"); scanf("%d", &recommencer);

    } while(recommencer = 1);
    printf("Fin du programme");

return 0;

}


Vous remerciant de votre aide.



2 réponses

Utilisateur anonyme
26 oct. 2010 à 11:41
Problème résolu : sur la ligne 35, il fallait mettre deux '=' pour vérifier la condition.
0
fardenco Messages postés 254 Date d'inscription samedi 17 janvier 2009 Statut Membre Dernière intervention 19 août 2015 32
26 oct. 2010 à 11:44
jsait pas mais perso je ferai un truc du genre
label 1
if x<le nombre max de boucle
then l'opération a faire
x=x+1
ifend
"recommencer ?"->y
if y=1
then goto 1
else exit

jsait pas si c'est ca mais moi j'suis au lycée jfait des ptit programmes sur ma calculatrice et qqch comme ca marcherai ^^
0