显示标签为“Linux related”的博文。显示所有博文
显示标签为“Linux related”的博文。显示所有博文

2009年2月25日

UNIX环境下的简易计算器bc

(From ncu.edu.tw,for own reference,it's a good smart tool instead of windows calculator)

bc     # 就是 basic calculator 的縮寫

就進入一個簡易的計算器,使用方法很直覺,但是它只能做整數計算,所以要小心,例如 2/3 會計算出來 0。因為它只取整數輸出。 bc 接受十進制的數字,能做以下六種基本運算:
加 +     減 -     乘 *     除 /     餘數 %     次方 ^
您只要輸入計算指令,然後按 Enter,bc 就會回應結果,例如
1+1
2
37/7
5
37%7
2
最後,按 Ctrl+D 離開 bc 程式。

加一個指令參數,如下

bc -l
則令 bc 以小數點下有 20 位的數值做計算,而且增加了一些科學計算的功能。但是,求餘的 % 符號不再管用。例如
1+1
2
37/7
5.28571428571428571428
37%7
.00000000000000000004
也是以 Ctrl+D 結束程式。增加的科學計算功能,有
平方根 sqrt()     sine s()     cosine c()     exp e()     自然對數 l()     arctangent a()
例如
sqrt(2)
1.41421356237309504880
s(3.14159)
.00000265358979323534
c(3.14159)
-.99999999999647923060
e(1)
2.71828182845904523536
l(2.71828)
.99999932734728200315
a(1)*4
3.14159265358979323844

其實 bc 和 bc -l 都是建構在另一個更基本的工具之上: dc (desk calculator)。這個計算器採用後運算 (postfix operation) 符號,而且使用者可以自訂進位制和有效數字位數,還可以為它寫頗為複雜的程式。我們將不會在此教材中詳述這個工具。


以下是非標準 UNIX 工具。中大數學系的 UNIX 系統有安裝。

一個比較簡單一點兒的後運算計算器是 pcalc (postfix calculator)。我們不在此詳述後運算的道理,讀者在將來學習程式語言或資料結構的時候,必然會遇到這個課題。此處只是舉例。下指令

pcalc
就會進入 pcalc 的計算環境。所謂後運算,就是每當出現一個計算符號的時候,此符號視情況作用在前面一個或兩個數值上。這兩個數值,可以是以數目字寫出來的常數,也可以是另外一個計算符號的結果。計算的順序嚴格地由左而右,不需要括號也可以唯一定義計算順序。以下是一些例子。
1 1 +
2
37 7 /
5.2857143
1 2 3 4 5 * + * +
47
以上最後一個式子,相對應的中位計算符號 (infix operator) 就是 1 + 2*(3 + 4*5) 。在 pcalc 中輸入指令 ? 就會看到簡短的提示訊息,按 Ctrl+D 離開 pcalc 程式。

習題

  1. 請將以下的後計算式,寫成中位計算式。

    1 2 3 4 5 + - * /

  2. 請將以下的 bc -l 指令計算式,寫成 pcalc 的指令計算式。

    (1 + 2.5^2) / sqrt(1 + 3*2.5)


Full Text

2008年4月28日

Linux版GloMoSim的安装过程

我用的是Linux版的:
1.解压缩:
[root@testbox src]# tar -xzvf glomosim-2.03.tar.gz
2.创建目录/usr/local//parsec,拷贝与你的系统对应的parsec预编译包到/usr/local/parsec.我是redhat的系统,就拷贝redhat-7.2目录下的内容(当然你建立链接也可):

[root@testbox glomosim-2.03]# mkdir /usr/local/parsec
[root@testbox glomosim-2.03]# cp parsec/redhat-7.2/* /usr/local/parsec/
3.设置环境变量PCC_DIRECTORY,指向刚建立的/usr/local/parsec,并将pcc的路径加入PATH环境变量中去(最好加到profile中):
[root@testbox glomosim-2.03]# export PCC_DIRECTORY=/usr/local/parsec/
[root@testbox glomosim-2.03]# export PATH=$PATH:/usr/local/parsec/bin/
注意:导出PCC_DIRECTORY环境变量时目录后一定要加"/",否则会出错,我就在这里浪费了10多分钟,:(,没想到有这种低级错误发生.比如要指向的目录是/usr/local/parsec,那么你一定要写成 "/usr/local/parsec/",后面的"/"一定不能少.
4.到glomosim/main目录下,执行make:
[root@testbox main]# make
5.上一步make成功之后,你会在glomosim/bin目录下得到可执行文件glomosim,that's ok
6.你可以通过下面的步骤检查你的glomosim是否能正常工作:进入glomosim/bin目录,执行./glomosim config.in,会得到一个输出文件glomo.stat,把这个输出文件跟bin目录下的glomo.stat.sample比较,看看有无异常.



Full Text