二分法实现开方

来源:互联网 发布:windows xp系统主题 编辑:程序博客网 时间:2024/06/10 03:05
#include<iostream>using namespace std;double sqrt(double n){    double a=0,b=n;    double c=(a+b)/2;    while ((c*c)!=n) {        if (c*c>n) {            b=c;            c=(a+b)/2;//左移        }        else        {            a=c;            c=(a+b)/2;//右移        }    }    return c;    }int main(){    int n;    while (scanf("%d",&n)!=EOF) {        cout<<sqrt(n)<<endl;    }}

原创粉丝点击