新しく発言する EXIT インデックスへ
宿題

  宿題 BOND 2005/01/30 19:15:28 
  ドーナッツの体積はこちらの日記の10/23の説... 青木太一 2005/01/31 02:30:08 
   └あ、上のプログラムの流れは積分「∬f(x,y)... 青木太一 2005/01/31 03:10:16 

  宿題 BOND 2005/01/30 19:15:28  ツリーへ

宿題 返事を書く
BOND 2005/01/30 19:15:28
積分でドーナツ形の図形の体積を求めるのを作れって言われたんですがさっぱりわかりまあせん。

  ドーナッツの体積はこちらの日記の10/23の説... 青木太一 2005/01/31 02:30:08  ツリーへ

Re: 宿題 返事を書く
青木太一 2005/01/31 02:30:08
ドーナッツの体積はこちらの日記の10/23の説明がわかりやすいですが、
http://www.geocities.jp/krp87930/code/n0410.html
輪の半径をs、断面の円の半径をrとすると
V= 2πs * πr^2
です。

さて、積分でこの式を求めることはできますが、
ここ(十進BASIC掲示板)で質問しているということは、あるsとrが与えられたときのドーナッツの体積を、上の式からではなく、数値積分で求めなさい」ということだと思います。

たとえば、xとyで積分するなら
sum=0
for x= xの範囲 step dx
sum_y=0
for y= yの範囲 step dy
sum_y=sum_y+f(x,y)*dy
next y
sum=sum+sum_y*dx
next x
print "数値積分でもとめた体積は";sum
print "式で求めた体積は";2*pi*s*pi*r^2
といった感じになります。
ここで関数f(x,y)は、座標x,yにおけるドーナッツの高さです。
ドーナッツの高さはドーナッツを机においたとき、(ドーナッツの上面−ドーナッツの下面)とします。
注意:このやり方でやる場合、f(x,y)にはルートをもとめるsqr関数が使われるため、その引数が負の数にならないよう積分範囲に注意しなくてはいけない。

さっぱりわかりませんとのことですが、なにがわからないのか書いていただかないことには、
こちらもどうアドバイスすべきかさっぱりわからないのですが、
とりあえず思いついたままに書いてみました。
間違ってたり、質問の内容を勘違いしていたらごめんなさい。

   └あ、上のプログラムの流れは積分「∬f(x,y)... 青木太一 2005/01/31 03:10:16  ツリーへ

Re: ドーナッツの体積はこちらの日記の10/23の説... 返事を書く
青木太一 2005/01/31 03:10:16
あ、上のプログラムの流れは積分「∬f(x,y)dydx」の数値積分です。
ちょっと思いつくままに書きすぎて、読みにくい文章でした。失礼。


インデックスへ EXIT
新規発言を反映させるにはブラウザの更新ボタンを押してください。