您的位置:首页 > 其它

二进制小数

2017-04-20 01:56 113 查看

题目描述

有一个介于0和1之间的实数,类型为double,返回它的二进制表示。如果该数字无法精确地用32位以内的二进制表示,返回“Error”。

给定一个double num,表示0到1的实数,请返回一个string,代表该数的二进制表示或者“Error”。

测试样例:
0.625

返回:0.101


class BinDecimal {
public:
string printBin(double num) {
// write code here
string tmp = "0.";
int i = 0;

while(i++ < 32 && num != 0){
num *= 2;
tmp += (int)num +'0';
num = num-(int)num;
}

if(i > 32){
tmp = "Error";
}

return tmp;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: