• ベストアンサー

数列の関数を教えていただけませんか

先日数列の関数をこのコーナーに登校し多くの方々からご教授していただきました。おかげさまで、無事できたとおもいきや・・・なんと、私の考えが甘く、数式は正しいのですがそれが使えないことがわかりました。xとyの値の変化は以下のようなものでした。現在47歳どうあがいても自力で数列の問題は解けません。申し訳ございませんが、どなたかお力をお貸しください。 x→ 0, -1 ,-2, -3, -4, -5, -6, -7, -8 y→ 0, 1, -1, 2, -2, 3, -3, 4 , -4 のようにyの値がxに対応して変化する関数の式を知りたいのですが。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Mr_Holland
  • ベストアンサー率56% (890/1576)
回答No.1

 思いつく範囲では、2通りの表し方があります。 (1) 整数化を行うガウスの記号[](エクセルではint()関数に対応)を使う方法 http://ja.wikipedia.org/wiki/%E5%BA%8A%E9%96%A2%E6%95%B0   y=(-1)^(x-1) * [ (-x+1)/2 ]  ちなみに、エクセルの式では、次のようになります。(セルA2にxの値が入っているとしています。)   =(-1)^(A2-1)*INT((-A2+1)/2) (2) 場合分けによる方法  xが偶数のとき: x/2  xが奇数のとき: (-x+1)/2   =IF(MOD(A2,2)=0,A2/2,(-A2+1)/2)  このような感じでよろしいでしょうか。

ityounomi
質問者

お礼

ありがとうございます。エクセルで使いたいので、式が書いてあるので助かりました。早々に式を入力してやってみます。ありがとうございました。

ityounomi
質問者

補足

ありがとうございました!!できました! For i = 1 To 8 y = (-1) ^ (i - 1) * Int((-i + 1) / 2) Sheets(1).Cells(4, 2).Offset(y, 0) = Sheets(1).Cells(9 - i, 7) Next i 意図したセルに、意図した値を入れたかったんです。 本当にありがとうございました。

その他の回答 (1)

noname#56760
noname#56760
回答No.2

y=[|x/2|+1/2](-1)^(|x|-1) はどうですか | |は絶対値 [ ]はガウス記号 x=0ならy=0 x=-1ならy=1 x=-2ならy=-1 x=-3ならy=2 x=-4ならy=-2 x=-5ならy=3 x=-6ならy=-3 x=-7ならy=4 x=-8ならy=-4 となります。

ityounomi
質問者

お礼

昨日に引き続きありがとうございます。エクセルに転用できるかためしてみます。ガウス記号のところがVBAでどのようになるのかがわからないので、調べてみてそれができればどうにかなると思います。ありがとうございました。

関連するQ&A