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