maple中if语句的使用,请指点迷津
ifv1~=v2&v1~=-v2 %%%%(v1不等于v2,且不等于-v2)f:=(2*v1*cos(b*v2)*sin(b*v1)-2*v2*cos(b*v1)*sin(b*v2))/(v1^2-v2^2);
(1)
else
f:=sin(2*v1*b)/2/(v1)+b; (2)
end
当计算
:f(2,2)时
仍然带入第一个式子,而非第二式子,请大家指点迷津
上面贴的是在matlab中的语句,调试通,在maple中的准确语句为
if(v1<>v2&v1<>-v2) then
f:=(v1,v2)->(2*v1*cos(b*v2)*sin(b*v1)-2*v2*cos(b*v1)*sin(b*v2))/(v1^2-v2^2);
else
f:=(v1,v2)->sin(2*v1*b)/2/(v1)+b;
end if
但是问题仍然存在 MATLAB与MAPLE的语法不同,运算符也不太相同:
if(v1!=v2) and (v1!=-v2) then
f:=(v1,v2)->(2*v1*cos(b*v2)*sin(b*v1)-2*v2*cos(b*v1)*sin(b*v2))/(v1^2-v2^2);
else
f:=(v1,v2)->sin(2*v1*b)/2/(v1)+b;
end if;
上面已在MAPLE 11调试通过,但相应的选择条件应该你应该比我们清楚!
回复 沙发 yangyzh 的帖子
是不是可以写一个过程来表示呢。这样就可以避免楼主所提的问题了。
页:
[1]