P = zeros(20,20); P = U %2) P1 = zeros(20,20); for j1=1:20; for j2=1:20; rj1j2 = corr(P(j1,:)',P(j2,:)','type','pearson'); P1(j1,j2)=rj1j2; end end P1 %3) for j1=1:20; for j2=1:20; rj1j2=corr(P1(j1,:)',P1(j2,:)','type','pearson'); P1(j1,j2)=rj1j2; while rj1j2==1 | rj1j2==-1; break end end end P1这段代码不迭代while
时间: 2024-04-20 22:22:55 浏览: 121
这段代码中的 while 循环会导致代码陷入无限循环,因为循环条件 `rj1j2==1 | rj1j2==-1` 永远为真。在每次迭代中,循环中的 `break` 语句没有改变 `rj1j2` 的值,因此循环条件始终为真。
如果你想要避免无限循环,你可以使用一个条件来终止循环。例如,你可以添加一个计数器来限制最大迭代次数,或者在满足某个条件时使用 `break` 语句结束循环。具体的实现方式取决于你的需求和代码的逻辑。
阅读全文