Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: peilin

Problemset: แปลงเลขฐาน

Language: c

Time: 0.002 second

Submitted On: 2025-10-10 20:49:35

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void printBinary(unsigned int num) {
    int started = 0;
    for (int i = sizeof(unsigned int)*8 - 1; i >= 0; i--) {
        int bit = (num >> i) & 1;
        if (bit) started = 1;
        if (started) printf("%d", bit);
    }
    if (!started) printf("0");
    printf("\n");
}

int main() {
    char hex[100];
    unsigned int decimal;

    scanf("%s", hex);

    decimal = (unsigned int)strtoul(hex, NULL, 16);

    printBinary(decimal);
    printf("%o\n", decimal);

    return 0;
}