Set :: write: Tag Plus em algo é Protegido [fechado]

2

Se eu tiver essa equação:

x+y=27
xy=180

Eu quero resolvê-lo usando:

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

No entanto, isso resulta nos seguintes erros:

  • Set :: write: Tag Plus em x + y é Protected. > >
  • Solve :: svars: As equações podem não fornecer soluções para todas as variáveis "solve". > >

Por quê? E como faço para corrigir isso?

    
por Tyilo 27.09.2011 / 09:06

1 resposta

3

Se você acabou de executar a linha

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

então tudo corre bem e você encontra {{x -> 12, y -> 15}, {x -> 15, y -> 12}} .

O erro que você vê é porque em algum lugar você tem uma declaração como

In[1]:= x + y = 27

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

Out[1]= 27

Onde a cabeça de x + y é Plus , que é um símbolo protegido e pode ' t ser ingenuamente dadas novas definições. Pode ser que você tenha alguma definição estranha escondida em algum lugar, neste caso, é mais simples reiniciar o kernel e tentar novamente.

A moral da história é que = ( Conjunto ) não é o mesmo que == ( Equal ).

    
por 27.09.2011 / 09:40