#include <stdio.h> #include <stdint.h> #include <math.h> #include <string.h> uint16_t binary_to_uint(const char *str) { uint8_t index_counter = 0; uint16_t num = 0x0; for(uint8_t i=strlen(str); str[i]>=0; i--) { if(str[i]=='1' || str[i]=='0') { if(str[i]=='1') { num+= 1 * (pow(2,index_counter)); } index_counter++; } } return num; } int main() { char bin[20]; scanf("%s", bin); printf("%u", binary_to_uint(bin)); return 0; }
Test Cases
Test Results
Input
1010
Expected Output
10