質問編集履歴

2

プログラムの更新

2018/01/09 14:07

投稿

motyaa
motyaa

スコア12

test CHANGED
File without changes
test CHANGED
@@ -38,7 +38,7 @@
38
38
 
39
39
 
40
40
 
41
- N = 1000
41
+ N = 10000 # 分割数
42
42
 
43
43
 
44
44
 
@@ -48,17 +48,15 @@
48
48
 
49
49
  cnt = 0
50
50
 
51
- for i in range(1,N,10):
51
+ for i in range(1,N,1):
52
52
 
53
- h = (b_list[0]-a_list[0])/i
53
+ h = (b_list[0]-a_list[0])/i # きざみ幅
54
54
 
55
55
  h2 = h/2
56
56
 
57
- v = (h/3) * sum(f1(h*i) + 4*f1(h*(i+1)) + f1(h*(i+2)))
57
+ v = (h/3) * (f1(h*i) + 4*f1(h*(i+1)) + f1(h*(i+2)))
58
58
 
59
- w = (h/3) * sum(f1(h2*i) + 4*f1(h2*(i+1)) + f1(h2*(i+2)))
59
+ w = (h2/3) * (f1(h2*i) + 4*f1(h2*(i+1)) + f1(h2*(i+2)))
60
-
61
- print(v,w)
62
60
 
63
61
  if abs(v-w) <= 10**(-10):
64
62
 
@@ -76,9 +74,9 @@
76
74
 
77
75
  h2 = h/2
78
76
 
79
- v = (h/3) * sum((f2(h*i) + 4*f2(h*(i+1)) + f2(h*(i+2))))
77
+ v = (h/3) * ((f2(h*i) + 4*f2(h*(i+1)) + f2(h*(i+2))))
80
78
 
81
- w = (h/3) * sum((f2(h2*i) + 4*f2(h2*(i+1)) + f2(h2*(i+2))))
79
+ w = (h2/3) * ((f2(h2*i) + 4*f2(h2*(i+1)) + f2(h2*(i+2))))
82
80
 
83
81
  if abs(v-w) <= 10**(-10):
84
82
 

1

誤字

2018/01/09 14:07

投稿

motyaa
motyaa

スコア12

test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  python3.6で1/3シンプソンの公式を利用したプログラムを実装中です。
4
4
 
5
- その際、きざみ幅がhの場合の近似値vと、きざみ幅をその半分にした場合の近似値wとを計算し、|v^w| <= 10^(-1)となった場合にプログラムを終了し、その際の計算結果を出力するというものです。
5
+ その際、きざみ幅がhの場合の近似値vと、きざみ幅をその半分にした場合の近似値wとを計算し、|v^w| <= 10^(-10)となった場合にプログラムを終了し、その際の計算結果を出力するというものです。
6
6
 
7
7
 
8
8
 
@@ -12,7 +12,7 @@
12
12
 
13
13
  ```
14
14
 
15
- |v^w| <= 10^(-1)となった時の分割数と近似値を出力してbreakするように実装したつもりなのですが、
15
+ |v^w| <= 10^(-10)となった時の分割数と近似値を出力してbreakするように実装したつもりなのですが、
16
16
 
17
17
  実行時に何も表示されなくて困っています。
18
18