백준 1550

oak_cassia·6일 전
0

내 목표는 솔브드 골드 다 풀기!(브론즈 부터...)

16진수를 10진수로 변환하는 문제
백준 1550

#include <iostream>
using namespace std;

int main()
{
    char* n1 = new char[7];
    cin >> n1;
    int cnt = -1;

    while (n1[cnt + 1] != 0)
        cnt++;
    if (cnt == -1)
        return 0;
    int n2 = 0;
    int n = 1;
    for (int i = cnt; i >= 0; i--)
    {
        if (n1[i] >= 'A')n2 += (int)(n1[i] - 55) * n;
        else n2 += (int)(n1[i] - 48) * n;
        n *= 16;
    }
    cout << n2;

}

쉬운 버전

#include<iostream>

int main()
{
    int i;
    scanf("%X", &i);
    printf("%d", i);
}
profile
수직 상승 달팽이

0개의 댓글