Submission
Status:
PPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: karnsinee
Problemset: แปลงเลขฐาน
Language: cpp
Time: 0.002 second
Submitted On: 2025-10-13 11:35:43
#include<iostream>
#include<string>
#include<cmath>
using namespace std;
int main(){
string a;
int n,sum=0;
cin>>a;
n=a.size();
for(int i=0;i<n;i++){
if(a[i]>=65&&a[i]<=70){
sum=sum+((a[i]-'A'+10)*pow(16,n-i-1));
}
else{
sum=sum+((a[i]-'0')*pow(16,n-i-1));
}
}
//cout<<sum<<"\n";
int x;
x=sum;
int b[100]={-1},c[100]={-1};
int i=0,j=0;
while(sum>0){
b[i]=sum%2;
sum=sum/2;
i++;
}
while(x>0){
c[j]=x%8;
x=x/8;
j++;
}
for(int x=i-1;x>=0;x--){
cout<<b[x];
}
// while(b[x]>0){
// cout<<b[x];
// x--;
// }
cout<<"\n";
int y=j;
for(int y=j-1;y>=0;y--){
cout<<c[y];
}
// while(c[y]>0){
// cout<<c[y];
// y--;
// }
}