Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
decToBin.cpp #include<conio2.h> #include<stdlib.h> #include<stdio.h> #include<math.h> #define TF 10 int binToDec(int nBinario[TF],int tl); int decToBin(int nDec, int nBin[]); void inverte(int nBinario[TF],int tl, int nBinarioInv[TF]); int decToBin(int nDec, int nBin[]) { int aux=nDec,tl=0,cont=0,nAux,j=0; while(aux>0) // Converte o decimal e armazena o Bin no vetor. { nBin[tl]=aux%2; aux=aux/2; tl++; } for(j=tl-1;j>cont;j--) // Iverte os numeros do vetor { nAux=nBin[j]; nBin[j]=nBin[cont]; nBin[cont]=nAux; cont++; } return tl; } int main() { int binario[8]; int j=0,nAux,cont=0,tl; clrscr(); tl=decToBin(1000,binario); int dec=binToDec(binario,tl); printf("\n Inicio do vetor %d \n",tl); for(int i=0;i<tl;i++) printf(" [%d]",binario[i]); printf(" \n Fim do vetor"); printf(" decimal [%d]",dec); getch(); } int binToDec(int nBinario[TF],int tl) { int expoente = 0; int numero; int soma = 0; int aux[tl]; inverte(nBinario,tl,aux); for(int i=0;i<tl;i++) { numero=(aux[i]); soma+=numero*(pow(2,expoente)); expoente++; } return soma; } void inverte(int nBinario[TF], int tl, int nBinarioInv[TF]) { for(int i=0; i<tl;i++) nBinarioInv[i]=nBinario[tl-1-i]; }
Compartilhar