#include <iostream>
using namespace std;
int main() {
int val;
cout << "Enter the number: ";
cin >> val;
if( val< 0) {
cout<< "According to my maths its not possible." << endl;
} else {
float low = 0, high = val;
float mid = (low + high)/2;
int c = 0;
while (c != 1) {
if(mid * mid = val) {
cout << "Square root is: " << mid <<endl;
c = 1;
} else {
if(mid * mid > val) {
high = mid;
mid = (low + high)/2;
} else {
low = mid;
mid = (low + high)/2;
}
}
}
}
return 0;
}
C ++で二等分法を使用して角根を見つけるためのコードを書きますか? [閉まっている
-
29-07-2022 - |
質問
二等分は、私があなたの検索を絞り込み、間隔の特定の値に到達することを知っている限りです。そのサンプルのサンプルを教えてください。一般的なコードを作成してSquare-Rootを見つけることができます。私が思うに、3つの変数を低く、中、高くすることです。 high = userInput、low = 0、mid(low + high) /2、問題は、値を変更する方法です。
解決
他のヒント
私たちが探しているとしましょう sqrt(N)
説明されているように ここ, 、平均の平均がより大きい場合は、低価格と高値の平均を見つける必要があります N
, 、私たちは、それが未満の場合、私たちが今見つけた平均で高い値を変更します N
, 、平均で低い値を変更します。また、必要な精度を満たすために、何度も手順を繰り返します。
所属していません StackOverflow