您需要编写自己的算法来计算平方根。写一个 在继续编写C ++程序之前先进行伪代码。不要使用 数学库中的sqrt函数用于计算平方根。创建自己的 平方根算法。 你的程序应该适应所有非完美的方形数字和负数 用户输入的整数。在这些情况下,程序应该提示用户 没有进入完美的广场。 该程序应该允许用户有三次机会进入一个完美的正方形。如果 用户无法在三个机会中输入一个完美的正方形然后程序 应该退出 4.您将在C ++程序中使用函数。创建用户定义的功能 名称sqroot。这应该是您实现自己的功能 平方根算法。此函数应返回一个整数并仅接受一个整数 输入参数,也是整数类型。
我已经尝试了但是卡住了PLIZ帮助
#include <iostream>
#include <cmath>
#include <math.h>
#include <stdlib.h>
using namespace std;
int main (){
int test;
int square;
int answer;
int i=0;
cout << "enter a perfect sqare ";
cin >> square;
answer = pow(square, 0.5);
test = square % answer;
if (test==0){
cout << "the square is: " << answer;
}
if (test!=0){
cout << "enter a perfect sqare ";
cin >> square;
answer = pow(square, 0.5);
test = square % answer;
cout << "the square is: " << answer;
}
return 0;
}
答案 0 :(得分:1)
来自维基百科:&#34;一种用于连续更好地逼近实值函数的根(或零)的方法&#34;。
让我们说你正试图找到&#39; a&#39;的根源。
那么基本上,你试图找到函数的根源:
f(x)= x ^ 2 - a
此外,这种方法也很快。
答案 1 :(得分:0)
如果你真的想给da'Prof留下深刻印象,你可以使用1/2的幂二次扩展近似:
=
a 是您输入数字中的下一个完美正方形(我确信您可以轻松计算它和它的平方根)。将其转换为公式,将 x 作为输入数字,不要忘记为分数使用浮点变量,并使用答案执行您喜欢的操作(在您的情况下将其舍入为整数)。
我知道这只是一个近似值,但它对于整数答案应该足够好了。