치춘짱베리굿나이스

[백준] 1550 16진수 [C] 본문

C C++/알고리즘풀이

[백준] 1550 16진수 [C]

치춘 2021. 9. 15. 23:09

16진수

문제

16진수 수를 입력받아서 10진수로 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 16진수 수가 주어진다. 이 수의 최대 길이는 6글자이다. 16진수 수는 09와 AF로 이루어져 있고, AF는 1015를 뜻한다. 또, 이 수는 음이 아닌 정수이다.

출력

첫째 줄에 입력으로 주어진 16진수 수를 10진수로 변환해 출력한다.

풀이

#include <stdio.h>

int    main(void)
{
    char    str[7];
    int        index;
    int        num;

    index = -1;
    while (++index < 7)
        str[index] = 0;
    scanf("%s", str);
    index = -1;
    num = 0;
    while (str[++index])
    {
        num *= 16;
        if (str[index] <= '9' && str[index] >= '0')
            num += str[index] - '0';
        else
            num += str[index] - 'A' + 10;
    }
    printf("%d", num);
}

반성회

내일 일찍일어날수있겠지

'C C++ > 알고리즘풀이' 카테고리의 다른 글

[백준] 10989  (0) 2022.02.09
[백준] 2845 파티가 끝나고 난 뒤  (1) 2021.09.20
[백준] 1316 그룹 단어 체커  (2) 2021.09.13
[백준] 2775 부녀회장이 될테야  (0) 2021.09.09
[백준] 2292 벌집  (0) 2021.09.09
Comments