21xrx.com
2025-03-18 18:32:13 Tuesday
文章检索 我的文章 写文章
C++程序实现求勾股数
2023-07-11 18:10:09 深夜i     39     0
C++ 勾股数 程序实现

勾股数是指三个正整数a、b、c,它们满足勾股定理,即a² + b² = c²,其中c为斜边长。今天我们来介绍如何使用C++程序实现求勾股数。

首先,我们需要明确勾股数的定义和如何判断一个数是否为整数。在C++中,可以使用sqrt函数来求平方根,如果一个数的平方根为整数,那么它就是一个完全平方数。

接下来,我们编写一个函数check函数,用于判断一个数是否为完全平方数。

bool check(int num) {
  int root = sqrt(num);
  return root * root == num;
}

然后,我们编写一个函数findGougu,用于查找所有符合条件的勾股数。

void findGougu(int limit) {
  for (int a = 1; a <= limit; a++) {
    for (int b = a + 1; b <= limit; b++) {
      int cSquare = a * a + b * b;
      if (check(cSquare)) {
        int c = sqrt(cSquare);
        cout << a << " " << b << " " << c << endl;
      }
    }
  }
}

在主函数中,我们可以调用findGougu函数进行求解。

int main() {
  int limit;
  cout << "请输入上限:" << endl;
  cin >> limit;
  findGougu(limit);
  return 0;
}

这样,我们就完成了使用C++程序实现求勾股数的任务。通过这个程序,我们可以方便地查找指定上限以内的勾股数,并对勾股定理进行一定的理解。

  
  

评论区

请求出错了