Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Função em C para verificar de maneira exaustiva se um determinado número é potência de dois. Caso seja, retorna o valor da potência, caso não seja, retorna -1.
- int VerificaPotenciaDois(int num){
- int i, valor = 2;
- if (num == 1) //Qualquer número elevado a 0 é 1
- return 0;
- if (num % 2 != 0) //Se o número não for divisível por 2, então não será um potência de 2
- return -1; //Numero não é potencia de 2
- for(i=1;valor<=num;i++){ //Verifica tentativa por tentativa se o número é potência de 2, caso seja, retorna-o
- if (valor == num)
- return i;
- valor = valor * 2;
- }
- return -1; //Numero não é potencia de 2
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement