在π,找到self-locating循环接收”指数超过数组元素的数量。不得超过50指数。”
18视图(30天)
显示旧的评论
你好,按标题我进这个错误。这是有关内存或者perferences吗?
%定义数字使用的数量从π
numDigits = 100000;
%的第一numDigits数字pi加载到一个字符串
piStr = num2str(π,numDigits);
%将遍历所有可能的循环长度
为loopLen = 1:地板(numDigits / 2)
%循环遍历所有可能的起始位置
为startPos = 1: numDigits-loopLen * 2
%从piStr提取循环和下面的序列
loopStr = piStr (startPos: startPos + loopLen-1);
seqStr = piStr (startPos + loopLen: startPos + loopLen * 2 - 1);
%检查循环seqStr中又出现了
如果包含(seqStr loopStr)
流(“发现self-locating循环长度% d \ n ',loopLen);
流(“循环始于位置% d \ n”,startPos);
流(“循环序列:% s \ n”,loopStr);
流(“序列:% s \ n”,seqStr);
结束
结束
结束
答案(1)
鸡向量
2023年6月1日7:55
编辑:鸡向量
2023年6月1日,造成车厢
错误来自这样一个事实:50是数字的最大数量
π
。
你可以有一个证明这个通过:
nDigits = 60;
num2str(π,nDigits)
num2str(π,“%”。num2str (nDigits)“f”])
注意,双精度浮点数有16位的准确性。