Vérification d'un nombre binaire
bonjour, j'ai un petit problème, je veux vérifier au moment de la saisi le nombre ( n ) si il est sous la forme binaire ( contient que les chiffres 1 et 0 ). L'exercice m'oblige de déclarer la variable de type entier ( et pas une chaine de caractères ).
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| #include <stdio.h>
void main()
{
int n, b, c, reserve; // b: boolean, reserve: reserver la valeur de n
do
{
printf("donner n:\n");
fflush(stdin);
scanf("%d", &n);
reserve = n;
do
{
c = reserve % 10;
reserve /= 10;
} while ( reserve>0 || c == 0 || c == 1 );
b = -1;
if (c != 0 || c != 1)
b = 0;
else
b = 1;
if (b == 0)
printf("le nombre n est pas binaire.\n");
} while (b == 0);
} |
Le programme n'affiche rien, je pense c'est une boucle infinie. J'ai fait le tournage, l'algorithme marche bien mais la traduction est nulle :aie: