演習課題 ex06-9.c

実数 x の値を入力すると、次のテイラー展開 $$\frac{1}{1-x} = \sum_{k=0}^\infty x^k\quad (|x| < 1)$$ の第n項までの値(初項 k=0 から k=n まで、n+1項の和)を順に出力するプログラム ex06-9.c を作成し、kiso2コマンドを用いて提出しなさい。 ただし、第n項までのテイラー展開の値と、実際の $\frac{1}{1-x}$ の値は共に小数点以下第9桁まで表示し、それら2つの値の差(誤差)が $10^{-6} = 0.000001$ 未満になるとプログラムは計算を停止し終了する。 また、x に入力された値が |x|<1 を満たさない場合は、何も出力せずにプログラムを終了するものとする。

実行例:

t190900@s01cd0542-160:~/kiso2-2019/ex06$ ./ex06-9
1
t190900@s01cd0542-160:~/kiso2-2019/ex06$ ./ex06-9
0
k= 0, talor=1.000000000, diff=0.000000000
t190900@s01cd0542-160:~/kiso2-2019/ex06$ ./ex06-9
0.1
k= 0, talor=1.000000000, diff=0.111111111
k= 1, talor=1.100000000, diff=0.011111111
k= 2, talor=1.110000000, diff=0.001111111
k= 3, talor=1.111000000, diff=0.000111111
k= 4, talor=1.111100000, diff=0.000011111
k= 5, talor=1.111110000, diff=0.000001111
k= 6, talor=1.111111000, diff=0.000000111
t190900@s01cd0542-160:~/kiso2-2019/ex06$ ./ex06-9
0.5
k= 0, talor=1.000000000, diff=1.000000000
k= 1, talor=1.500000000, diff=0.500000000
k= 2, talor=1.750000000, diff=0.250000000
k= 3, talor=1.875000000, diff=0.125000000
k= 4, talor=1.937500000, diff=0.062500000
k= 5, talor=1.968750000, diff=0.031250000
k= 6, talor=1.984375000, diff=0.015625000
k= 7, talor=1.992187500, diff=0.007812500
k= 8, talor=1.996093750, diff=0.003906250
k= 9, talor=1.998046875, diff=0.001953125
k=10, talor=1.999023438, diff=0.000976562
k=11, talor=1.999511719, diff=0.000488281
k=12, talor=1.999755859, diff=0.000244141
k=13, talor=1.999877930, diff=0.000122070
k=14, talor=1.999938965, diff=0.000061035
k=15, talor=1.999969482, diff=0.000030518
k=16, talor=1.999984741, diff=0.000015259
k=17, talor=1.999992371, diff=0.000007629
k=18, talor=1.999996185, diff=0.000003815
k=19, talor=1.999998093, diff=0.000001907
k=20, talor=1.999999046, diff=0.000000954
t190900@s01cd0542-160:~/kiso2-2019/ex06$ ./ex06-9
-0.2
k= 0, talor=1.000000000, diff=0.166666667
k= 1, talor=0.800000000, diff=0.033333333
k= 2, talor=0.840000000, diff=0.006666667
k= 3, talor=0.832000000, diff=0.001333333
k= 4, talor=0.833600000, diff=0.000266667
k= 5, talor=0.833280000, diff=0.000053333
k= 6, talor=0.833344000, diff=0.000010667
k= 7, talor=0.833331200, diff=0.000002133
k= 8, talor=0.833333760, diff=0.000000427
C言語では $b\times10^n$ で表される実数値「定数」を “ben” の形で表記することができます。 たとえば、$10^{3}, 2\times10^{-1}, -1.2\times10^{3}$ は、プログラム中でそれぞれ、1e3, 2e-1, -1.2e3 と書くことができます。 ただし、変数 b=3; を用いて “be2” ($3\times10^2$ ?) のような表記はできません。
  • lecture/kiso2/2019/rev06.txt
  • 最終更新: 2019/11/07 16:05
  • by sano