Đổi cơ số 10 ra cơ số 2, 8, 16

Like và +1 thay lời cám ơn chủ blog

Yêu cầu: nhập vào một số nguyên ở dạng thập phân, chương trình sẽ chuyển số nguyên đó về dạng nhị phân, bát phân và thập lục phân. Và kết quả chuyển đổi phải hiển thị ở dạng 8 con số như hình minh họa


Code: 

#include<iostream>
#include<conio.h>
using namespace std;

int
a;

void
Input(){
do
{
cout<<"a = ";
cin>>a;
if
(a<2||a>256)
cout<<"\nNhap lai a! ";
}
while(a<2||a>256);
}


void
DecToBin(int a){
int
m[8];
int
i;
for
(i=0;i<8;i++)
m[i]=0;
i=7;
while
(a!=0){
m[i--]=a%2;
a/=2;
}

cout<<"\nSo nhi phan la: ";
for
(i=0;i<8;i++)
cout<<m[i];
}

void
DecToOct(int a){
int
m[8];
int
i;
for
(i=0;i<8;i++)
m[i]=0;
i=7;
while
(a!=0){
m[i--]=a%8;
a/=8;
}

cout<<"\nSo bat phan la: ";
for
(int i=0;i<8;i++)
cout<<m[i];
}


void
DecToHex(int a){
char
m[8];
int
i;
for
(i=0;i<8;i++)
m[i]='0';
i=7;
int
du;
while
(a!=0){
du=a%16;
switch
(du){
case
0: m[i]='0'; break;
case
1: m[i]='1'; break;
case
2: m[i]='2'; break;
case
3: m[i]='3'; break;
case
4: m[i]='4'; break;
case
5: m[i]='5'; break;
case
6: m[i]='6'; break;
case
7: m[i]='7'; break;
case
8: m[i]='8'; break;
case
9: m[i]='9'; break;
case
10: m[i]='A'; break;
case
11: m[i]='B'; break;
case
12: m[i]='C'; break;
case
13: m[i]='D'; break;
case
14: m[i]='E'; break;
case
15: m[i]='F'; break;
}

i--;
a/=16;
}

cout<<"\nSo thap luc phan la: ";
for
(i=0;i<8;i++)
cout<<m[i];
}


int
main(){
Input();
DecToBin(a);
DecToOct(a);
DecToHex(a);
getch();
return
0;
}

Bài liên quan

Bài liên quan