下面的MATLAB代码哪里有问题?为何不能正常运行?
function y=F(x,p)x(1)=x,
i=1;
while (i<=100)
if (x(i)>=0&x(i)<p)
y(i)=x(i)/p;
elseif (x(i)>=p&x(i)<0.5)
y(i)=(x(i)-p)/(0.5-p);
elseif (x(i)>=0.5&x(i)<1)
y(i)=F((1-x(i)),p);
end
x(i+1)=y(i);
i=i+1;
end
plot(y); --------------------编程问答-------------------- p赋值了没 --------------------编程问答-------------------- p值我赋了,程序无法运行。但我看不出哪里有问题? --------------------编程问答-------------------- 是运行结果不对还是 语法有问题?
p值你赋的多少?要是大于0.5,那么while中的判断都会达不到,相当于语句都不会执行啊
那么对x(i)和y(i)的复制都是错的 --------------------编程问答-------------------- 我赋的值是F(0.98,0.45)。。。等等都是在0<x<1,0<p<0.5区间的值,可是总显示超出精度, --------------------编程问答-------------------- x,y是定义的什么变量啊
可能算几轮后,x,y会超出范围。
你把循环减少,然后逐步调,把中间结果输出。看到哪一步错误了
补充:云计算 , 云安全