lua example
更新記錄
item | note |
---|---|
20160810 | 第一版 |
目錄
Lua
- 範例來源:lua-5.1.5/test
ex1.如何取得參數
範例說明
- #
取得array szie - arg[]
可以取得輸入參數值
1 | #!/usr/bin/env lua |
測試
1 | # ./echo.lua t1 t2 t3 |
ex2.數值分析 bisection example
- Interval halving (Bisection) Revisited (半區間法) , 迭代法
- 直接法利用固定次數的步驟求出問題的解 (直接解方程式)
迭代法是通過從一個初始估計出發尋找一系列近似解來解決問題的數學過程 (只能求得問題的近似解,所找到的一系列近似解會收敛到問題的精確解)
f(x) = 3XXX -24
f(a) = -24, f(b)= 57
a | b | c | f(c) |
---|---|---|---|
0 | 3 | 1.5 | -13.875 |
1.5 | 3 | 2.25 | 10.17.. |
1.5 | 2.25 | 1.875 | -4.22.. |
1.875 | 2.25 | 2.0625 | 2.32.. |
計算到目前為止,問題的解是界於1.875及2.0625之間,若繼續往下算,可以得到更精確的答案
f(X1) * f(X2) < 0 , 表示在代1根在{X1,X2}區間
程式流程如下
範例程式
io.write
Equivalent to io.output():write(···).math.abs (x)
Returns the absolute value of x.string.format (formatstring, ···)
The format string follows the same rules as the ISO C function sprintf.
1 | $ cat bisect.lua |
測試
1 | # ./bisect.lua |
ex3. 溫度轉換 Celsius(C) to Fahrenheit(F)
華氏度(Fahrenheit)
- 在标准大气压下,冰的熔点为32℉,水的沸点为212℉,中间有180等分,每等分为华氏1度
- 20世纪后期,全球绝大多数国家开始向国际单位制转换,使用摄氏温标替代了华氏温标
美国支持保留华氏温标的人提出的一个重要理由是它使用较方便。与摄氏温标相比,华氏温标的一度要比摄氏温标小,当都精确到整数时,华氏温标比摄氏温标准确
华氏温标的0度比摄氏温标0度要低,在表达常用温度时,通常可以避免负数的使用
攝氏度(Celsius)
- ℃,degree celcius
- 在标准大气压,纯水的凝固点(即固液共存的温度)為0℃,水的沸點為100℃,中間劃分為100等份,每等份為1℃。
範例程式
1 | for c0=-20,50-1,10 do |
測試
1 | C -20 -19 -18 -17 -16 -15 -14 -13 -12 -11 |
參考來源
- 数值分析
- Interval halving (Bisection) Revisited (半區間法)
ex.溫度轉換 Celsius(C) to Fahrenheit(F)