相关疑难解决方法(0)

匹配头部不同于某些模式

我想匹配头部与f不同的表达.

这有效

[In]  !MatchQ[t[3], x_ /; Head[x] == f]
[Out] True
Run Code Online (Sandbox Code Playgroud)

但不是这个

 [In]  MatchQ[t[3], x_ /; Head[x] != f]
 [Out] False
Run Code Online (Sandbox Code Playgroud)

为什么第二种解决方案不起作用?我怎样才能使它工作?

wolfram-mathematica

5
推荐指数
1
解决办法
222
查看次数

是什么造成了这个奇怪的Mathematica结果?

我遇到了Mathematica 8中的一个错误.我在网上找不到任何与之相关的内容,但我承认我不确定要搜索什么.

如果我运行此声明:

0.05 + .10 /. {0.15 -> "pass"}
1.04 + .10 /. {1.14 -> "pass"}
1.05 + .10 /. {1.15 -> "pass"}
1.15 /. {1.15 -> "pass"}
Run Code Online (Sandbox Code Playgroud)

我得到这个输出:

pass

pass

1.15

pass
Run Code Online (Sandbox Code Playgroud)

我只是忽略了什么?

编辑:阅读下面的有用讨论后,我更改了我的调度表以使用Which语句:

f[x_] := Which[x == 1.05, -1.709847, x == 1.10, -1.373823, 
  x == 1.15, -1.119214, x == 1.20, -0.9160143, x == 1.25, -0.7470223, x == 1.30, -0.6015966]
Run Code Online (Sandbox Code Playgroud)

这似乎可以解决问题.

wolfram-mathematica

4
推荐指数
2
解决办法
662
查看次数

标签 统计

wolfram-mathematica ×2