Gente estou parada mais de horas nesse programa olha o anunciado
Escreva um procedimento que preencha um vetor de números inteiros de tamanho tam, apenas com os números zero ou um. Depois informe o número binário resultante deste preenchimento e o valor correspondente em decimal.
void converteBinario( int bin[], int tam)
quando faço o codigo ele lê da direita para esquerda, mas para converter eu preciso ir da esquerda para direita
estou tentando inverter o vetor mas n esta indo
#include<stdlib.h>
#include<stdio.h>
#include<math.h>
#include <locale.h>
#define t 8
int main()
{
setlocale(LC_ALL,"portuguese");
int bin[t], dec = 0, i,j,pot;
int invbin[t],final;
printf("\nInsira o numero binario separado por espaço: \t");
for(j=0;j<t;j++){
scanf("%d", &bin[j]);
}
printf("\nO número binario é : ");
for(i=0;i<t;i++){
printf("%d",bin); } printf("\n");
for(i=0;i<t;i++){ if(bin==1){ dec=dec*bin+pow(2, i); } } printf("a conversão do numero binario para decimal : %d \n",dec ); }
adicionado 14 minutos depois
pessoal ja consegui
...
#include<stdlib.h>
#include<stdio.h>
#include<math.h>
#include <locale.h>
#define t 8
int main()
{
setlocale(LC_ALL,"portuguese");
int bin[t], dec = 0, i,j,p;
int invbin[t],final;
printf("\nInsira o numero binario separado por espaço: \t");
for(j=0;j<t;j++){
scanf("%d", &bin[j]);
}
printf("\nO número binario é : ");
for(i=0;i<t;i++){
printf("%d",bin);
}
printf("\n");
final=t-1;
for(p=0;p<t;p++){
invbin[p]=bin[final];
final--;
}
for(i=0;i<t;i++){
if(invbin==1){
dec=dec*invbin+pow(2, i);
}
}
printf("a conversão do numero binario para decimal : %d \n",dec );
}