系統是centos 7 shell如下:#!/bin/bashn=`expr 1 - 1`sd=`expr $n + 1`結果顯示:expr: non-integer argument為什么?
2 回答

慕標5832272
TA貢獻1966條經驗 獲得超4個贊
在Mathmatica中用等號=為變量賦值。同一個變量可以表示一個數值,一個數組,一個表達式,甚至一個圖形。如:
In[1]:=x=3
Out[1]=3
In[2]:=x^2+2*x
Out[2]=15
In[3]:=x=%+1
Out[3]=16
對不同的變量可同時賦不同的值,例如:
In[4]:={u,v,w}={1,2,3}
Out[4]={1,2,3}
In[5]:=2u+3v+w
Out[5]=11
對于已定義的變量,當你不再使用它是,為防止變量值的混淆,可以隨時用=.清除它的值,如果變量本身也要清除用函數Clear[var],例如:
In[6]:=u=.
In[7]:=2u+v (上面已定義了u,v的值)
Out[7]=2+2u
如果是函數問題,還有所謂的延遲賦值.
延遲定義函數從定義方法上與即時定義的區別為 “=” 與“:=”延遲定義的格式為f[x_]:=expr其他操作基本相同。那么延遲定義和即時定義的主要區別是什么?即時定義函數在輸入函數后立即定義函數并存放在內存中并可直接調用。延時定義只是在調用函數時才真正定義函數。
- 2 回答
- 0 關注
- 470 瀏覽
添加回答
舉報
0/150
提交
取消