% 超簡單的複數的erlang實現
% 參見: http://www.trapexit.org/complex_numbers
-module(complex).
-export([make/2, is_complex/1, add/2, sub/2, mult/2, divide/2,
get_real/1, get_imaginary/1]).
-record( complex, ).
is_complex(x) when is_record(x, complex) -> true;
is_complex(_) -> false.
make(real, imaginary) ->
#complex.
make(x) when is_record(x, complex) -> x;
make(real) -> make(real, 0).
add(x, y) ->
a = make(x), b = make(y),
make( a#complex.real + b#complex.real,
a#complex.imaginary + b#complex.imaginary).
sub(x, y) ->
a = make(x), b = make(y),
make( a#complex.real - a#complex.real,
b#complex.imaginary - b#complex.imaginary).
mult(x, y) ->
a = make(x), b = make(y),
make( (a#complex.real * b#complex.real)
- (a#complex.imaginary * b#complex.imaginary),
(a#complex.real * b#complex.imaginary)
+ (b#complex.real * a#complex.imaginary) ).
divide(x,y) ->
a = make(x), b = make(y),
divisor = math:pow(b#complex.real,2) + math:pow(b#complex.imaginary,2),
make( ((a#complex.real * b#complex.real)
+ (a#complex.imaginary * b#complex.imaginary)) / divisor,
((a#complex.imaginary * b#complex.real)
- (a#complex.real * b#complex.imaginary)) / divisor).
get_real(x) -> x#complex.real.
get_imaginary(x) -> x#complex.imaginary.
003 超簡單的複數類
描述 下面程式的輸出是 3 4i 5 6i 請補足complex類的成員函式。不能加成員變數。include include include using namespace std class complex 在此處補充你的 int main 輸入無 輸出3 4i 5 6i 分析 從程式可以看出來,...
erlang例項 los簡單實現
最近看了 erlang程式設計 好書,翻譯的也不錯,兩天時間,基本讀完 我的習慣總是先快速讀完一本書再回過頭,一邊練習一邊翻閱 正試著學習編寫erlang的例子。joe在網上 http erlang.org examples examples 2.0.html 給了乙個簡單系統 sos 的例子,可惜...
erlang的簡單編譯
首先我們先來建立乙個test的資料夾,然後再該資料夾下建立這樣幾個資料夾 這些在以後都是用的到的,檔案結構不需要更多複述!目的是將我們所有的編譯好的beam檔案放到ebin中以便我們進行操作 我們在script資料夾下新建乙個檔案格式的emakefile檔案,然後我們在src內新建兩個資料夾modu...