首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

解析四方定理的应用

解析四方定理的应用

我们可以通过计算机验证其在有限范围的正确性。
复制代码 代码如下:
#include <stdio.h>
#include <math.h>
int f(int n, int a[], int idx)
{
if(n==0) return 1;
if(idx==4)  return 0;  //超出数组范围 出错
for(int i=(int)sqrt(n); i>=1; i--)
{
  a[idx] = i;
  if(f(n-i*i, a, idx+1) == 1)  return 1;  // 递归调用
}
return 0;
}
int main(int argc, char* argv[])
{
for(;;)
{
  int number;
  printf("输入整数(1~10亿):");
  scanf("%d",&number);
  int a[] = {0,0,0,0};
  int r = f(number, a, 0);
  printf("%d: %d %d %d %d\n", r, a[0], a[1], a[2], a[3]);
}
return 0;
}
继承事业,薪火相传
返回列表