Número par ou ímpar (com operado bit a bit)
Boa noite galera.
Vi muitos postarem códigos para calcular se um número é par ou ímpar... Aqui vai a minha contribuição.
Lógica: na representação binária, um número é impar se seu bit menos significativo for 1. Então, ao realizarmos um AND de um número qualquer com 0x01 retornará 1 se o número for ímpar ou 0 se o número for par.
Vi muitos postarem códigos para calcular se um número é par ou ímpar... Aqui vai a minha contribuição.
Lógica: na representação binária, um número é impar se seu bit menos significativo for 1. Então, ao realizarmos um AND de um número qualquer com 0x01 retornará 1 se o número for ímpar ou 0 se o número for par.
Descrição
Boa noite galera.
Vi muitos postarem códigos para calcular se um número é par ou ímpar... Aqui vai a minha contribuição.
Lógica: na representação binária, um número é impar se seu bit menos significativo for 1. Então, ao realizarmos um AND de um número qualquer com 0x01 retornará 1 se o número for ímpar ou 0 se o número for par.
Vi muitos postarem códigos para calcular se um número é par ou ímpar... Aqui vai a minha contribuição.
Lógica: na representação binária, um número é impar se seu bit menos significativo for 1. Então, ao realizarmos um AND de um número qualquer com 0x01 retornará 1 se o número for ímpar ou 0 se o número for par.
#include <stdio.h>
int main () {
int i;
scanf ("%d", &i);
if (i & 0x01)
printf ("Numero impar!\n");
else
printf ("Numero par!\n");
return 0;
}