このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1294061094/89
#  [1] 授業単元:Cプログラミング入門2 
#  [2] 問題文(含コード&リンク): 
#  複数の自然数に対する最小公倍数を求めるプログラムを作成せよ。 
#  最小公倍数を求める関数を作成する必要あり 
#  int型のオーバーフローは考慮しないで良い。 
#  関数名はlcm 
#  int lcm(int num0,int num1) 
#  num1 num2は入力値 
#  lcmの戻り値は最小公倍数 
#  入力に関して:キーボードから入力する整数の個数を入力し(最大10)改行する次に指定した数の整数を入力するように作る 
#  

最小公倍数(A,B,X) :-
        integer(A),
        integer(B),
        最大公約数をユークリッドの互除法で求める(A,B,C),
        X is A * B // C.

最大公約数をユークリッドの互除法で求める(A,B,B) :-
        0 is A mod B,!.
最大公約数をユークリッドの互除法で求める(A,B,C) :-
        Mod is A mod B,
        最大公約数をユークリッドの互除法で求める(B,Mod,C).