#include <stdio.h> #include <stdint.h> uint16_t binary_to_uint(const char *str) { // Your logic here uint16_t res = 0; for(uint8_t i=0;str[i]!='\0';i++){ res <<= 1; if(str[i]=='1'){ res |= 1; } } return res; } int main() { char bin[20]; scanf("%s", bin); printf("%u", binary_to_uint(bin)); return 0; }
Initialzise a 16 bit result variable
Run a loop from 0 to end of string
Test Cases
Test Results
Input
1010
Expected Output
10