Submission
Status:
PPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: letdown
Problemset: แปลงเลขฐาน
Language: cpp
Time: 0.002 second
Submitted On: 2025-10-07 14:24:03
#include <bits/stdc++.h>
using namespace std;
int main() {
string n, bin="", oct="";
cin >> n;
int dec = 0;
for (int i = n.length() - 1; i >= 0; i--) {
if (n[i] <= '9') dec += int(n[i] - '0') * pow(16, n.length() - i-1);
else dec += int(n[i] - 'A' + 10) * pow(16, n.length() - i-1);
}
int d = dec;
while (d > 0)
{
int digit = d % 2;
d /= 2;
bin += char(digit + '0');
}
reverse(bin.begin(), bin.end());
d = dec;
while (d > 0)
{
int digit = d % 8;
d /= 8;
oct += char(digit + '0');
}
reverse(oct.begin(), oct.end());
cout << bin << endl << oct;
}