繁体   English   中英

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

[英]Converting from decimal to binary in the right order

我是 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;
}

此 function 将以正确的顺序将十进制打印为二进制:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM