#include "func_parite.h" // Renvoye 1 si le nombre de bit a 1 est impaire // 0 paire bool parite1(int x,int val_parite) { int mask = 1; bool res = ( (val_parite & mask) ^ mask); //si bit de poids faible ŕ zero alors parité pair while(x!=0) { res ^= (x & mask); x = x >> 1; } return res; } extern unsigned int find_first_one (int x); bool parite2(int x,int val_parite) { unsigned int mask = 1; unsigned int pos; bool res = ( (val_parite & mask) ^ mask); //si bit de poids faible ŕ zero alors parité pair while ((pos = find_first_one(x)) != 0) { res ^= 1; x = x >> pos; } return res; }