ここから本文です

c言語のプログラムについてです、 sinxをテイラー展開する、第1項まで第2項まで...

vywa5449さん

2018/1/923:48:00

c言語のプログラムについてです、

sinxをテイラー展開する、第1項まで第2項まで第3項まで、……………第7項まで取ったときの値をy1,y2,y3,………y7を-π<=x<=πの範囲で0.01π間隔で計算しファイ

ルに出力して下さい、

出来る限り早めの回答お願いします!!

閲覧数:
67
回答数:
1
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

rhinosugarさん

2018/1/1104:03:14

/*
2018/1/9 23:48:00__ vywa5449さん

c言語のプログラムについてです、
sinxをテイラー展開する
*/
/*
注:
1.y7は現状では改行に係るのでy6に留めたm=7とすればy7まで表示する
2.角度表示はラヂアンでなく度表示にしてある、ラヂアンはx
3.刻みは15度と粗くとり、即の検討のためスクリーンに出しておいた
4.実行部の各行後半にそれぞれの説明を付記したが、通常のソースでは
__ここまでのコメントは付けない。
*/
#include <stdio.h>
// #include <stdlib.h>
#include <math.h>

#define Z 180.__// マクロ定数:sin(z)の z変移気範囲

int main(){___________ // OSからの入口
_// 変数宣言(定義)部
_double_z;_// degree
_double_dz; // degree刻み
_double_x;_// radian
_int__ n;_// 項数
_int__ m;_// 打切り項数
_double_yn; // Tailor項
_double_sn; // Tailor展開部分和
_
_// 実行部
_dz = 15;____________// 15度刻みに設定
_m_= 6;____________ // y6まで計算
_// 表先頭見出し行出力
_printf("degree_ ");
_printf("y1____y2____y3____y4____y5____y6\n");
_
_// 角度刻みループ
_for(z=-Z;z<Z+dz/2;z+=dz){
_printf("%6.1f",z);_______// 角度出力(度)
_x = z*acos(-1.)/180;______// 度>ラヂアン換算
_// 級数項(y1,y2,...ym)ループ
_for(sn=yn=x,n=1;n<=m;n++){
__yn *= -x*x/(2*n*(2*n+1));__ // yn=y[n-1]*(-x^2/(2n(2n+1))
__sn += yn;__________ // ∑[1,n]yn
__printf(" %9.6f",sn);_____// ∑[1,n]ynの出力
_} printf("\n");________ // 行1括改行
_} printf("\n");________ // 表全体出力後に1空行出力
_
_// 終了
_printf("\n# NORMAL END #\n");_ // mainの正常終了を確認
_return 0;___________ // その直後にOSへ戻る
}________________ // mainソース末尾
/* STDOUT:
degree_ y1____y2____y3____y4____y5____y6
-180.0_2.026120 -0.524044_0.075221 -0.006925_0.000445 -0.000021
-165.0_1.100661 -0.549876 -0.223965 -0.261505 -0.258674 -0.258825
-150.0_0.372581 -0.652273 -0.485029 -0.500950 -0.499958 -0.500001
-135.0 -0.176066 -0.781232 -0.701239 -0.707407 -0.707096 -0.707107
-120.0 -0.563221 -0.899045 -0.863971 -0.866108 -0.866023 -0.866025
-105.0 -0.806829 -0.979076 -0.965303 -0.965945 -0.965925 -0.965926
-90.0 -0.924832 -1.004525 -0.999843 -1.000004 -1.000000 -1.000000
-75.0 -0.935175 -0.967202 -0.965895 -0.965926 -0.965926 -0.965926
-60.0 -0.855801 -0.866295 -0.866021 -0.866025 -0.866025 -0.866025
-45.0 -0.704653 -0.707143 -0.707106 -0.707107 -0.707107 -0.707107
-30.0 -0.499674 -0.500002 -0.500000 -0.500000 -0.500000 -0.500000
-15.0 -0.258809 -0.258819 -0.258819 -0.258819 -0.258819 -0.258819
_ 0.0_0.000000_0.000000_0.000000_0.000000_0.000000_0.000000
_15.0_0.258809_0.258819_0.258819_0.258819_0.258819_0.258819
_30.0_0.499674_0.500002_0.500000_0.500000_0.500000_0.500000
_45.0_0.704653_0.707143_0.707106_0.707107_0.707107_0.707107
_60.0_0.855801_0.866295_0.866021_0.866025_0.866025_0.866025
_75.0_0.935175_0.967202_0.965895_0.965926_0.965926_0.965926
_90.0_0.924832_1.004525_0.999843_1.000004_1.000000_1.000000
105.0_0.806829_0.979076_0.965303_0.965945_0.965925_0.965926
120.0_0.563221_0.899045_0.863971_0.866108_0.866023_0.866025
135.0_0.176066_0.781232_0.701239_0.707407_0.707096_0.707107
150.0 -0.372581_0.652273_0.485029_0.500950_0.499958_0.500001
165.0 -1.100661_0.549876_0.223965_0.261505_0.258674_0.258825
180.0 -2.026120_0.524044 -0.075221_0.006925 -0.000445_0.000021


# NORMAL END #
続行するには何かキーを押してください . . .
*/

  • 質問者

    vywa5449さん

    2018/1/1121:18:32

    Windows, Borand C++, を使ってるのですが、上記のようなもの初めて見るのですが………

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

この質問は投票によってベストアンサーに選ばれました!

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。