int n_decimal = 0;
unsigned long n_binario = 1001; // Uso adequado até o número 1023.
void setup() {
Serial.begin(115200);
n_decimal = converte_para_decimal(n_binario);
Serial.print("Binário: ");
Serial.print(n_binario);
Serial.print(" Decimal: ");
Serial.println(n_decimal);
}
int converte_para_decimal(unsigned long binario) {
int decimal = 0;
int base = 1; // 2^0
while (binario > 0) {
int last_digit = binario % 10; // Obtém o último dígito binário
binario = binario / 10; // Remove o último dígito binário
decimal += last_digit * base; // Adiciona ao decimal a contribuição do dígito binário atual
base = base * 2; // Incrementa a base (2^n)
}
return decimal;
}
void loop() {
// Código vazio
}