如何在基数10中计算二进制数

时间:2018-02-01 15:59:43

标签: c++ algorithm binary decimal

我想要一个c ++中的整数来计算二进制数: 1,10,11,100,101,110,111 但我希望价值在基数10,如: 一,十,十一,一百,一百零等 基本上以十进制计算,但看起来像10。 有没有算法来做到这一点。

-Joseph

1 个答案:

答案 0 :(得分:0)

这当然是可以解决的,但这不是代码编写服务,所以我只会给你一些足以帮助你自己编写的想法。

这就是你应该如何进行的:

  • 使用字符串作为二进制值来显示它
  • 你应该实现一个循环,它将在你的数字达到0时结束,并且应该将currentValue%2的结果写入你的字符串的开头,然后将你的数字除以2
  • 你应该实现一个能够返回人性可读数字文本的函数,你可能希望从here中获取灵感,但有一个线索是数字%3是相关的。如果是0,那么你需要写一个数字,如果它左边的数字不是一个数字,那么11-19之间的值是一个例外,不要忘记千万,十亿,如果模数为1,那么你将有一个特殊的文本,如十一,......十九,二十,......,九十,如果模数是2,那么文本将是数字+"百& #34;

您基本上会有一个数字,并且能够从中获取二进制文件以及文本表示。

编辑:算法不需要字符串,也可以输入say *routine name*