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中怎么定义一个变量为正整数?的主要内容,如果未能解决你的问题,请参考以下文章

在Mathematica软件中如何删除一个已经定义的函数

如何用mathematica画出函数图象

如何使用mathematica判定含有变量的不等式的真假?

这个Mathematica三维图为啥画不出来

怎么用mathematica算函数的最大值

Mathematica 中带条件的多元函数