あなたの仕事は、ニュートンの方法を使用して2の平方根を計算することです。プログラムは、ニュートン法を使用して反復を計算し、次の反復のソースコードを出力します(これは同じことを実行できる必要があります)。
ニュートンの方法は、ウィキペディアでかなり網羅的に説明されています
ニュートン法を使用して平方根2を計算するには、次のようにします。
- 定義する
f(x) = x^2 - 2
- 定義する
f'(x) = 2x
- 定義
x[0]
(最初の推測)= 1
- 定義する
x[n+1] = x[n] - (f[n] / f'[n])
各反復は、x [n]を2の平方根に近づけます。そう -
x[0] = 1
x[1] = x[0] - f(x[0])/f'(x[0]) = 1 - (1 ^ 2 - 2) / (2 * 1) = 1.5
x[2] = x[1] - f(x[1])/f'(x[1]) = 1.5 - (1.5 ^ 2 - 2) / (2 * 1.5) = 1.416666667
x[3] = x[2] - f(x[2])/f'(x[1]) = 1.416666667 - (1.416666667 ^ 2 - 2) / (2 * 1.416666667) = 1.414215686
- 等々
あなたのプログラムは:
- 計算は、
x[n]
どこn
のプログラムが実行された倍の量であります x[n+1]
この質問と同じ基準を計算し、満たす必要がある同じ言語の有効なプログラムにソースコードを出力します。- ソースコードの最初の行は、適切にコメント化された計算結果でなければなりません。ソースの最初の行に特定の何か(シバンなど)が必要な場合、結果は2行目に表示される場合があります。
ご了承ください
- プログラムは、次の初期推測を使用する必要があります
x[0] = 1
- 標準的な抜け穴が適用されます
- 組み込みのパワー、平方根またはxroot機能は禁止されています
- あなたのプログラムはいかなる入力も受け付けてはいけません。完全に自己完結している必要があります。
スコアは、初期プログラムのサイズをUTF-8バイトで表したものです。最も低いスコアが勝ちます。
x = x-(x*x-2)/(2*x)
ますか?