回 帖 发 新 帖 刷新版面

主题:请教:如何将一个很大的整数从十进制转二进制

Matlab中dec2bin可以将整数从十进制转二进制,但是这个整数必须小于2^52,现在要将一个大于2^52的整数从十进制转二进制,请教各位高人如何实现?

回复列表 (共2个回复)

沙发

当整数很大时,连求余数运算rem(x,y)也不能做,所以根据一般的算法进行转换行不通

板凳

现在已经找到问题的关键是存在舍入误差所导致的,一个具体的整数N在用分解求余数时出现了舍入误差,当N减去2^k后所得余数比实际值大了1,如何处理这个问题使得对其它数都适用到目前为止我还没有找到解决的办法。

我来回复

您尚未登录,请登录后再回复。点此登录或注册