这个程序我设置了条件,在x=53.7之后的Y值为0,但是计算出来的结果x从10-63,Y都有结果,请问为什么呢?
```c++
clear;
clc;
x=10:0.1:63.45842269
a=[]
for x1=x
if (10<=x1<=53.73870947)
y11=-1.824e-5*x1.^3+0.05575*x1.^2-0.1125*x1-4.432;
else
y11=0;
end
a=[a,y11]
end
plot(x,a)
```
clear;
clc;
x =10:0.1:63.45842269
a =[]
for x1=x
if (10<=x1)&&(x1<=53.73870947)
y11=-1.824e-5*x1.^3+0.05575*x1.^2-0.1125*x1-4.432;
else
y11=0;
end
a = [a,y11]
end
plot(x,a)
有用请采纳,谢谢
根据你提供的代码,我发现了可能导致问题的原因。在程序中,条件判断语句的写法有问题。
正确的写法应该是:
if (x1 >= 10 && x1 <= 53.73870947)
而你的写法是:
if (10<=x1<=53.73870947)
这种写法是错误的,因为在C++中,条件判断语句中只能包含两个操作数,而不能包含三个操作数。因此,你需要修改这个条件判断语句的写法,才能正确地实现你的需求。