十進BASIC では、 1 〜 10 までの自然数の和を求めるプログラムは次のようになります。
LET n = 0
LET i = 1
DO WHILE i =< 10
LET n = n + i
LET i = i + 1
LOOP
PRINT i
PRINT n
END
Maxima でも簡単なプログラム組んで計算することができます。 たとえば上と同じ内容の計算をするプログラムは次のようになります。
n : 0 ;
i : 1 ;
while i <= 10 do (
n : n + i ,
i : i + 1
) ;
n ;
wxMaxima の Long Input の中に上のプログラムを記入して実行します。 すると、 一番下に 55 と表示されます。 Maxima のプログラムは小文字で書いてください。
十進BASIC では、 2次方程式の実数解を求めるプログラムは次のようになります。
PRINT " a x^2 + b x + c = 0 の 解 "
INPUT PROMPT "a, b, c と 整数を入力してください。": a, b, c
LET d = b^2 − 4 * a * c
IF d >= 0 THEN
PRINT " 実数解は "; ( −b + SQR( d )) / ( 2 * a ) ;" と "; ( −b −SQR( d )) / ( 2 * a )
ELSE
PRINT " 実数解なし "
END IF
END
これと同じ内容のプログラムは、 Maxima では次のようになります。
d : b^2 − 4 * a * c ;
if d >=0 then (
x1 : ( −b + sqrt( d )) / ( 2 * a ) ,
x2 : ( −b −sqrt( d )) / ( 2 * a )
)
else (
x1 : inf,
x2 : minf
) ;
x1 ;
x2 ;
まず、 a : 1 ; 入力実行、 b : 3 ; 入力実行、 c : 2 ; 入力実行 してください。 その次に、 上記のプログラムを入力し、 コピーした後に実行してください。 すると、 一番下の2つが実数解を示しています。 確かめるために、 x1 ; 入力実行、 x2 ; 入力実行してみてください。 では次に、 c : 4 ; 入力実行 してください。 その次に、 上記のプログラムをもう一度入力実行してください。 解の値として無限大の記号が出ますが、 この場合は実数解が存在しないことを表しています。 ただ、 Maxima には方程式の解を出力する関数が標準装備されていますので、 solve ( a * x^2 + b*x + c = 0 , x ) ; と入力実行するだけで、 このプログラム以上のことをしてくれます。
< コピペ用の窓 >
プログラミング へ戻る