设置::write: Tag Plus受保护

设置::write: Tag Plus受保护

如果我有这个等式:

x+y=27
xy=180

我想用以下方法解决它:

Solve[{x+y==27,xy==180},{x,y}]

但这会导致以下错误:

  • 设置::写入: x+y 中的标签加号受到保护。>>
  • Solve::svars:方程式可能无法为所有“解决”变量提供解。>>

为什么?我该如何解决这个问题?

答案1

如果你只是运行

Solve[{x + y == 27, x y == 180}, {x, y}]

然后一切运行正常,你会发现{{x -> 12, y -> 15}, {x -> 15, y -> 12}}

你看到的错误是因为在某处你有一个像这样的语句

In[1]:= x + y = 27

During evaluation of In[1]:= Set::write: Tag Plus in x+y is Protected. >>

Out[1]= 27

其中x + yPlus保护的符号,不能随意赋予新定义。可能您在某处隐藏了一些奇怪的定义,在这种情况下,最简单的方法是重新启动内核并重试。

这个故事的寓意是===) 与(不同平等的)。

相关内容