您好,我一直想知道是否有一种方法可以将二进制数转换为十进制分数。
我知道如何通过此代码更改基础作为示例
String binary = "11110010";
//I'd like to change this line so it produces a decimal value
String denary = int.parse(binary, radix: 2).toRadixString(10);
Run Code Online (Sandbox Code Playgroud)
小智 7
如果有人仍然想知道如何将十进制转换为二进制及其逆:
print(55.toRadixString(2)); // Outputs 110111
print(int.parse("110111", radix: 2)); Outputs 55
Run Code Online (Sandbox Code Playgroud)
int binaryToDecimal(int n)
{
int num = n;
int dec_value = 0;
// Initializing base value to 1, i.e 2^0
int base = 1;
int temp = num;
while (temp) {
int last_digit = temp % 10;
temp = temp / 10;
dec_value += last_digit * base;
base = base * 2;
}
return dec_value;
}
int main()
{
int num = 10101001;
cout << binaryToDecimal(num) << endl;
}
Run Code Online (Sandbox Code Playgroud)
这是我的 C++ 解决方案,但您可以实现任何语言
| 归档时间: |
|
| 查看次数: |
5393 次 |
| 最近记录: |