Você está na página 1de 1

//Hugo Leonardo de Oliveira Rocha - Jogos Digitais - Primeiro período

/*23:59h de 09/03/2010 (SGA)


PROBLEMA: Escreva um programa que receba como entrada um número binário (somente 8 b
its),
converta e mostre o número decimal correspondente.
Dica: Estude a função "pow(base, expoente)", para calcular potência, da biblioteca "ma
th.h".
ENTRADA: Oito dígitos binários (0 ou 1), separados por espaços, começando no mais signif
icativo. Exemplo: 0 1 0 0 0 0 0 1
RESULTADO: Número binário (fornecido na entrada) convertido para número decimal. Exemp
lo: 65
IMPORTANTE: Programas similares ganharão zero, não importando quem forneceu ou receb
eu a "cola".
*/
//O que é math.h?
/* math.h é uma biblioteca, tambem referida como <cmath> em c++. http://www.tiexpe
rt.net/programacao/c/math.php.
Uma das funções dessa biblioteca, é o pow: pow (): Retorna o valor da base elevada ao
expoente.
Recebe dois argumentos do tipo double, o primeiro é a base e o segundo o expoente.
Por exemplo: se quisermos saber o resultado da operação 2^10, faríamos pow (2, 10).
*/
/* Para converter binário para inteiro> Observe o número binário 001
Cada número formador é uma potência de 2.Assim:
001 = 0.2²+0.2¹+1.2º = 1 */
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
double a,b,c,d,e,f,g,h,numeroDecimal;
cout<< "informe o número em binário de 8 dígitos em cada linha.";
cin>>a;
cin>>b;
cin>>c;
cin>>d;
cin>>e;
cin>>f;
cin>>g;
cin>>h;
numeroDecimal = a*pow(2,0)+b*pow(2,1)+c*pow(2,2)+d*pow(2,3)+e*pow(2,4)+f*pow
(2,6)+g*pow(2,7)+h*pow(2,8);
cout<< "O número decimal é: "<< numeroDecimal<<endl;
system("pause");
return 0;
}

Você também pode gostar