新しく発言する EXIT インデックスへ
教えてください(T-T)

  教えてください(T-T) ともこ 2003/07/06 01:26:15 
  P=(1)!Pの初期値 Tetsu 2003/07/06 09:57:39 
  │└間違っていました。 Tetsu 2003/07/06 10:06:40 
  1+1/1!+1/2!+1/3!+…+1/15! kkk 2003/07/06 23:51:42 

  教えてください(T-T) ともこ 2003/07/06 01:26:15  ツリーへ

教えてください(T-T) 返事を書く
ともこ 2003/07/06 01:26:15
明後日テストなのに、BASICの計算の仕方が全然わかりません。。。
e=1+1/1!+1/2!+1/3!+〜+1/15!
の求め方で、
P=(   )
S=(   )
for I=1 to ( )
P=P/( )
S=S+( )
next I
print S
の(  )の所を出し方を教えてもらえたらうれしいです。。。

  P=(1)!Pの初期値 Tetsu 2003/07/06 09:57:39  ツリーへ

Re: 教えてください(T-T) 返事を書く
Tetsu 2003/07/06 09:57:39
P=(1) !Pの初期値
S=(1) !Sの初期値
for I=1 to (15)
P=P*(I) !P!を求める(/ではなくて*になると思うのですが?)
S=S+(1/P) !逆数を足して行く

でどうでしょうか。

  │└間違っていました。 Tetsu 2003/07/06 10:06:40  ツリーへ

Re: P=(1)!Pの初期値 返事を書く
Tetsu 2003/07/06 10:06:40
間違っていました。
P=(1) !Pの初期値
S=(1)    !Sの初期値
for I=1 to (15)
P=P/(I)    !P!を求める
S=S+(P)    !逆数を足して行く

で良かったです。

  1+1/1!+1/2!+1/3!+…+1/15! kkk 2003/07/06 23:51:42  ツリーへ

Re: 教えてください(T-T) 返事を書く
kkk 2003/07/06 23:51:42
1+1/1!+1/2!+1/3!+…+1/15!
の求め方

@ 1/1! = 1/1
A 1/2! = 1/(1×2)=1/1/2
B 1/3! = 1/(1×2×3) = 1/1/2/3

N 1/15! = 1/(1×2×…×15)=1/1…/15

1+1/1!+1/2!+1/3!+…+1/15!=@+A+B+…+N

これをプログラムで表現する。

まず、下準備で、以下のプログラムを考える(考える必要がない人は考えないでよい)

A=1
for I=1 to 15
A=1/I
next I

を実行すると、
I=1の時 A=1/繰り返し回数⇒1/1
I=2の時 A=1/繰り返し回数⇒1/2
I=3の時 A=1/繰り返し回数⇒1/3

I=15の時 A=1/15⇒A=1/繰り返し回数⇒1/15

繰り返しの性質がつかめたところで、最初の問題に戻る。
まず、@〜Nそれぞれを考える
@⇒ I=1の時 欲しい答え = 1/1  ⇒(Aの初期値)/1
A⇒ I=2の時、欲しい答え = 1/1/2 ⇒(前回の結果→I=1の時の結果)/(繰り返し回数)
B⇒ I=3の時、欲しい答え = 1/1/2/3 ⇒(前回の結果→I=2の時の結果)/(繰り返し回数)

N⇒ I=15の時、欲しい答え= 1/1/2/3/…/15 ⇒(I=14の時の結果⇒前回の結果)/(繰り返し回数)
ということは、最初のプログラムの
A=1/I
の部分を
欲しい答え=(前回の結果)/(繰り返し回数)
にすればよさそうだ。
結局、
P=( 初期値  )
for I=1 to (15回繰り返す )
P=P/(繰り返し回数) ⇒Pには前回の結果が入ってる!
next I

S=@+A+B+…+Nの方は似たような考えで
S=1⇒初期値
S = S + P ⇒ Sには前回の結果が入っている
でいいとわかる。

もう遅かった?


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