• ベストアンサー

C言語 正弦関数の級数展開のプログラム

php504の回答

  • php504
  • ベストアンサー率42% (926/2160)
回答No.3

1. sin xの級数展開がわからない 2. 7項まで取った場合がわからない 3. 組み込み関数がわからない 4. 値の差を求めるのがわからない 5. 0度から360度までがわからない 6. プログラムの作成がわからない なにがわからないのでしょうか。 ここでは問題の丸投げはだめです。 自分である程度プログラムを書いてそれを書き込むと回答率が上がります。

girugiru
質問者

補足

回答ありがとうございます。 とりあえずsinxの級数展開部分のプログラムを作ってみたのですが、電卓でsinxを計算した場合と0から90°はほぼ等しいのですが、90から180の値は減少せずに増加し、180から360°はマイナスの値が出てこず、電卓の値と全く違ってわかりません。 3と4もわかりません。 よろしくお願いします。

関連するQ&A

  • C言語 正弦関数の級数展開

    はじめまして。 sinxの級数展開を7項まで取った場合と組み込み関数で求めたsinxの値の差を,0度から360度まで,プログラムを作成して求めよ、という問題があるのですが、300度まででとまってしまいます。 どなたか、わかる方がいまいたら、教えてください。 以下リストです。 #include <stdio.h> #include<conio.h> #include <math.h> const double pi=atan(1.0)*4; double kaijyo(int n) { double ret=1; for (int i=2;i<=n;i++) { ret*=i; } return ret; } double polSin(double theta,int order) { int i; double ret=theta; for (i=1;i<order;i++) { if (i%2==1) { ret-=pow(theta,(i*2+1))/kaijyo(i*2+1); } else { ret+=pow(theta,(i*2+1))/kaijyo(i*2+1); } } return ret; } int main() { int order=7; double rad,theta,trueVal,polVal; for (theta=0;theta<360;theta+=1.0) { rad=theta/180*pi; trueVal=sin(rad); polVal=polSin(rad,order); printf("%e\n",polVal-trueVal); } getch(); return 0; }

  • 数学のフーリエ級数展開およびデルタ関数の問題です!

    数学のフーリエ級数展開、およびデルタ関数の問題です!助けて下さい(><;) (1) f(x)=e^x (0≦x≦π) をフーリエ・サイン級数に展開せよ。 (2) f(x) (-π<x<π) のフーリエ級数展開に対して、パーセバルの等式 (1/π)∫[-π,π]|f(x)|^2・dx=(a0^2/2)+Σ[n=1,∞](an^2+bn^2)が成り立つことを利用して Σ[n=1,∞](1-(-1)^n・e^π)^2・n^2/(n^2+1)^2の値を求めよ。 (3)デルタ関数δ(x)に対して∫[-π/2,π/2]δ(sinx)cosxdxの値を求めよ。 以上の3問です。本当に困っています(;_;) 途中計算などは出来る限り詳しく書いてもらえると助かります。 これでは読みにくいと思われるので問題の写真を貼っておきます。 http://book.geocities.jp/yukarin6127/f_kyusu.htm よろしくお願い致しますm(_)m

  • Fortranでベッセル関数のべき級数展開が正しく計算できない!!!

    Fortranでベッセル関数のべき級数展開が正しく計算できない!!! タイトルの通りです。ベッセル関数のべき級数展開は画像に添付した通りです。 この計算をFortranで行っているのですが、式中のzが30以上になると、正しく 計算できません。zが30以下のときは、ベッセル関数の値と完全に一致しています。 どうも、(z/2)^2nの項が大きくなりすぎることが原因です。 これの解決法をどなたかご存知ですか? もしご存知でしたらご教授願います。 ちなみに∞はn=100までで計算をしています。 ほんと死にそうです。。。助けて下さい。

  • フーリエ級数展開。

    f(x)=0(-π≦x<π),x(0≦x<π) これをフーリエ級数展開するとどうなるのでしょうか? フーリエ級数展開した式が出ません・・・。 答えとしては f(x)=π/4-(2/π)cosx+sinx-sin2x/2-(2/π)cos3x/3~2+sin3x/3-・・・ と解答にはありますが、一般系(?)で表記したいと考えています。 どのようにフーリエ級数展開すればいいのでしょうか? お願いします。

  • フーリエ級数展開について

    次の関数のフーリエ級数展開を行え。 xsinx って問題なんですが、解けません>< 教えてください。

  • 級数展開 剰余項 計算(評価)

    級数展開 剰余項 計算(評価) e^xの巾級数展開について、 剰余項R(n+1)がlim[n→∞]R(n+1) = 0になれば、 e^x=Σ[n=0~∞]((x^n)/(n!))と表せることは理解できました。 Rの係数?は実際(1/((n+1)!))となるからe^xは巾級数展開可能 であると理解したのですが、e^xの場合lim[n→∞]R(n+1) は具体的に どのように計算(評価)されるのでしょうか? また、剰余項に関して、 R(n+1)やR(x^(n+1))などと表記されるようですが、なにか 違いはありますか? それぞれの表現について教えて頂けないでしょうか? また、C^ω級は級数展開可能である関数を表す場合に用いられると 理解したのですが、C^ω級は無限級数展開でも有限級数展開 (有限級数展開の例が思いつきませんが・・・)でもどちらでも 使用して良いのでしょうか? また、C^ω級はテーラー展開の場合(x=0で級数展開できない場合)でも 使用して良いのでしょうか? ご回答よろしくお願い致します。

  • フーリエ級数展開についてです。 急いでます。

    (1)下の図のような周期2の関数がある。これをf(t)=|t| (-1<t<1)とし、そのフーリエ級数展開を求めなさい。なお、フーリエ級数展開はフーリエ係数を求めそれらの係数を用いて与式を展開すること。          |        /\ |   /\ _\/__\|/__\/___      -1       1   (2) 上の結果を用いて、Σ 1/(2n-1)^2=(π^2)/8となることを導きなさい。          (n=1~∞) という問題を教えてください。

  • f=max(sinx,0)のフーリエ級数展開について

    f=max(sinx,0)は     f(x)=  0 (-π≦x≦0)       sinx (0≦x≦π)  であり、 この関数のフーリエ級数展開をせよという問題ですが、n≧2として 係数ao=2/π,a1=0、an= {(-1)^(n+1) -1} / {π*(n^2 -1)} になり、b1=1/2,bn=0となったので、 f(x)=1/π + 1/2sinx +  Σ(n=2~∞)an*cosnx と答えを得ましたが、かなり自信がありません。どなたか知恵のある方、貸してくれるとありがたいです。 もちろんfは2π周期の周期関数で、区分的に滑らかである。

  • C言語

    C言語による課題です.指数関数のマクローリン展開について,第n項までの近似値を求めるプログラムを作成し,各ステップごとに理論値との誤差を比較しなさい.(xとnは任意の値で自分で入力する.) 宜しくお願いします.

  • フーリエ級数展開は三角関数ですがほかの関数は可能?

    フーリエ級数展開は三角関数で展開する方法ですが、 矩形波や三角波などを基底関数にして展開できますか? たぶん発散しそうな気がしますが。 周期関数を三角関数以外の関数で展開する方法があったら紹介してください。