高校数学の窓過去問検索

質問<3588>2007/8/16 from=小豆 「積分」

いつもお世話になっています。

以下の問題を教えて下さい。


Maximaで解こうとしましたが、エラーが出てうまくいきません。

宜しくお願いします。


はいはい。
Maxima活用してますね(笑)。便利でしょ(笑)?
ところで、Maximaもたまにバカな挙動します(笑)。
正確に言うと、Maximaは「計算」してるんじゃなくって、実は一種の「記号処理」をしてるんです。つまり、字面から判断して別の字面に変換してるんですね。
これがLispと言う記号処理言語で書かれたMaximaの偉いトコなんですが、それでもたまにおかしな変換をしたり、人間よろしく「諦めたり」する(爆)。こういう辺りで、「コンピュータの限界」を見ることが出来るのです。パソコンも結構バカなんですよ(笑)。
こういう場合、人間がそれなりに補助してやんなきゃならないケースが出てきたりします。
ちょっとやっていってみましょう。


こういう状態でしょ?
つまり、

(%i1) integrate(sqrt(1-x/(x+2)), x);
(%o1)

と出てきやがる(笑)。何にも計算してくれていない。
平たく言うと、積分対象のと言う関数の記号処理が上手くいってないんですね。
こういう場合どうするか?人間だったら、計算しやすくなるように式の整理を施すトコ、ですね。例えば項をまとめてみたり(factoring)、ないしは展開してみたりする(expanding)。コンピュータも同じですね。
Maximaの下を見てみれば分かりますが、このテのコマンドもキチンと存在します。


ここではFactorと言うコマンドを利用してみましょう。


註:factorは日本語では因数分解、と訳される場合が多いが、元々の意味から言うと、単に項をまとめる、と言うような至極単純な意味。因数分解も実際、単純に項をまとめる作業だ。
Maxima下段のINPUT:欄に次のように入力してみます。

factor(sqrt(1-x/(x+2)))

そうすると、次のような出力が得られます。

(%i2) factor(sqrt(1-x/(x+2)));
(%o2)
はい。その通りですね。確かにです。
これをこのまま積分します。出力番号(%o2)を利用して、また、INPUT:欄に次のように入力して下さい。

integrate(%02,x)
これは出力番号%o2をxに付いて積分せよ、と言うような命令です。またいちいち式を入力せんでもエエのです。このように、一端計算させた数式は、また入力するのは(さすがにGUIでも)メンド臭いので、出力番号(%o××)を上手く使って上手に処理しましょう。
[Enter]キーを押せば、計算結果を返してくれます。



はい。今度は上手く計算されましたね。
答えは


(は積分定数)となるようです。
微分して、検算してみてください。

以上です。




Maxima Manual: 多項式

0 コメント: