这个错误是由于使用了超过52位的二进制字符串导致的。bin2dec函数的输入参数必须是52位或更少的二进制字符串。

你在代码的第46行使用了bin2dec函数,并将population转换为二进制字符串。解决这个问题的方法是将population的长度限制为52位或更少。

你可以使用以下代码来解决这个问题:

population = population(1:min(length(population), 52));
decoding = bin2dec(num2str(population));

这将限制population的长度为52位或更少,并将其转换为二进制字符串,然后再使用bin2dec函数进行转换。

Error using == bin2dec at 36Binary string must be 52 bits or lessError in == main at 46 decoding = bin2decnum2strpopulation;是什么意思?怎样解决?

原文地址: https://www.cveoy.top/t/topic/hMSh 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录