以正确的顺序从十进制转换为二进制

Converting from decimal to binary in the right order

本文关键字:十进制 转换 二进制 顺序      更新时间:2023-10-16

我是一个完全的C++菜鸟,我们不得不在学校做一个程序,计算一个数字的交叉和,然后将这个数字转换为二进制数。

我现在遇到的问题是二进制数的顺序相反。 我想将数字添加到一个数组中,然后从右到左对数组进行排序,但我不知道该怎么做。:/

有人可以解释/告诉我如何做吗?

我正在使用 do while 循环,因为这是任务的要求......

int main()
{
int digit, sum = 0, rem;
cout<<"Enter a positive digit" << endl;
cin >>  digit;
do {
sum= sum + (digit%10); 
digit /= 10;
}
while (digit!= 0);
cout <<"Cross sum" << sum << endl; 
do {
rem = sum % 2;
sum /= 2;
cout << "Decimal in Binary: " << rem << endl;
}
while(sum>0);
return 0;
}

此函数将按正确的顺序将十进制打印为二进制:

void decToBin(int n) {
if (n == 0) {
return;
}
decToBin(n / 2);
cout << n % 2;
}