mathematica中怎么定义一个变量为正整数?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mathematica中怎么定义一个变量为正整数?相关的知识,希望对你有一定的参考价值。
参考技术A ……那要看情况了.比较常见的情况是解方程的时候,有两种语法,一种是直接在整数域求Solve[a + b == 4, 0 < a < 3, a, b, Integers]
还有一种是限制个别数的数域:
Solve[a + b == 4, 0 < a < 3, a \[Element] Integers, a, b]
此外还有定义函数的时候:
f[x_Integer] = x^3;
f[3]
f[3.5]
f[0]
f[0.]
(*
27
f[3.5]
0
f[0.]
*)
这样定义出的函数,只认整数.
比较常见的就这两个吧……确切地说这会儿能想到的就这两个.
Mathematica 中带条件的多元函数
【中文标题】Mathematica 中带条件的多元函数【英文标题】:Multivariate Functions with Conditions in Mathematica 【发布时间】:2013-01-12 09:13:10 【问题描述】:我正在尝试定义一个二元函数,该函数根据是否满足条件来取值。我让它们适用于单变量案例,但我坚持使用双变量案例:
g[x_, y_] := 10 /; x < 10
g[x_, y_] := 20 /; (x >= 10 && y < 5)
g[x_, y_] := -5 /; (x >= 10 && y >= 5);
这个函数永远不会给我 -5 的值。
g[12,10] = 20?
【问题讨论】:
您的定义工作正常,马克的回答与您的没有什么不同。您之前可能对g
有过定义,清除它会有所帮助。
是的,OP 对g
的定义工作正常。现在。奇怪的是,当我昨晚在新的 Mathematica 会话中尝试它时,定义返回 $Failed
。
【参考方案1】:
这对我有用:
Clear[g]
g[x_, y_] /; x < 10 := 10
g[x_, y_] /; x >= 10 \[And] y < 5 := 20
g[x_, y_] /; x >= 10 \[And] y >= 5 := -5
然后
In[73]:= g[12, 10]
Out[73]= -5
为什么这个版本有效,而您的版本无效我不确定。也许其他人会过来告诉我们
【讨论】:
谢谢马克。完美运行。以上是关于mathematica中怎么定义一个变量为正整数?的主要内容,如果未能解决你的问题,请参考以下文章