Mathematica 如何得到2个表中多种运算符号的表达式?如何得到2个表中多种运算符号的表达式?输入:s1={5,6,7,8}s2={1,2,3,4}例如如何得到2种运算符号的表达式:s3=5~1#6~2#7~3#8~4 (其中~和#各表示一种
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/25 22:43:41
Mathematica 如何得到2个表中多种运算符号的表达式?如何得到2个表中多种运算符号的表达式?输入:s1={5,6,7,8}s2={1,2,3,4}例如如何得到2种运算符号的表达式:s3=5~1#6~2#7~3#8~4 (其中~和#各表示一种
Mathematica 如何得到2个表中多种运算符号的表达式?
如何得到2个表中多种运算符号的表达式?
输入:
s1={5,6,7,8}
s2={1,2,3,4}
例如如何得到2种运算符号的表达式:
s3=5~1#6~2#7~3#8~4
(其中~和#各表示一种运算符号,假设没有结合律,即前面得到的结果再与下一个数运算即可)
例1:如当~表示+,而#表示-时就输出:
s4=5-1+6-2+7-3+8-4=16
例2:如当~表示*,而#表示+时就输出:
s5=5*1+6*2+7*3+8*4=380 (假设没有结合律,即前面得到的结果再与
下一个数运算,这实际是省略了括号)
当s1,s2的元素很多,手工列出s3的表达式很麻烦,如何通过表s1,s2自动得到s3的表达式?
Mathematica 如何得到2个表中多种运算符号的表达式?如何得到2个表中多种运算符号的表达式?输入:s1={5,6,7,8}s2={1,2,3,4}例如如何得到2种运算符号的表达式:s3=5~1#6~2#7~3#8~4 (其中~和#各表示一种
这个问题的具体处理,取决于你要使用的靠里的那个运算符是否具有Listable属性,以及靠外的那个运算符是否允许多个参数.大部分的算数运算符都有Listable属性.比如乘法:
Attributes[Times](* {Flat, Listable, NumericFunction, OneIdentity, Orderless, Protected} *)
多个参数方面嘛,有的有有的没有……总之你举的两个例子都符合这个条件,对于有这种属性的算符,可以这样处理:
Plus @@ (s1-s2)Plus @@ (s1 s2)
至于没有Listable属性的嘛,其实也差不多……唉呀直觉上这个回答已经够你用了,就先到这儿吧.