我想创建一个程序,要求用户输入一个函数,例如cos(x) + 2
。我的问题是,我不知道语法或代码如何使输入的函数成为一个真正的函数,我可以操纵它,比如得到它的衍生物,绘制它,类似的东西。任何人都可以教我如何做到这一点?谢谢!
答案 0 :(得分:0)
要创建“真实”功能,您可以使用2种不同的语法:
function [x]=myfct(a,b)
x=a+b;
endfunction
或
deff("[x]=myfct(a,b)","x=a+b");
注意:如果您只有一个返回变量,则可以省略方括号。
后一种形式在这里更直接,因为您只需要询问用户的2或3个字符串:
function_statement:答案应为"x=a+b"
input_varaible_list(以逗号分隔):答案应为"a,b"
output_varaible_list(以逗号分隔):答案应为"x"
然后将其放在deff
:
deff("["+output_varaible_list+"]=myfct("+input_varaible_list+")",function_statement);
如果将输出变量名称修改为x
,则不必要求它,用户只需输入函数语句的右侧({{1}之后) })。所以它变成了:
=
对于导数,请参阅Scilab帮助中的deff("[x]=myfct("+input_varaible_list+")","x="+function_statement);
和derivative
函数。