TB椰程 TypeBuddy 打字搭子

【例30.1】 平方根

C++语法 · 循环结构 · 代码 · cpp · 难度 3/5 · 共 447 字

牛顿迭代法迭代 n 次求平方根

  • C++语法
  • 例题

正文

// 原题:https://oj.yecheng.tv/p/P180
// 题意:按公式 y = (y + x/y) / 2
//       从 y0 = 1 开始迭代 n 次,求 x 的平方根,
//       保留三位小数。
// 思路:循环次数明确为 n,
//       每轮把上一步的近似值代入公式。
#include <iostream>
#include <iomanip>
using namespace std;

int main() {
    double x;
    int n;
    cin >> x >> n;
    double y = 1;
    // 明确迭代 n 次
    for (int i = 0; i < n; i++) {
        y = (y + x / y) / 2;
    }
    cout << fixed << setprecision(3) << y << endl;
    return 0;
}

C++语法 · 循环结构的其它内容

打字首页 · 词库画廊 · 编程打字 · 指法入门 · 天梯榜 · 数据分析 · 班级课堂 · 关于我们
椰程 TypeBuddy 打字搭子 —— 键盘指法练习 · 单词记忆 · 班级课堂 · 在线 PK