2018-2019-2 20175310 个人项目报告6--四方定理

2018-2019-2 20175310 个人项目报告6--四方定理

定义:

数论中著名的“四方定理”讲的是:所有自然数至多只要用四个数的平方和就可以表示。

需求分析:

根据四方定理的定义,用Java语言进行证明。

设计实现:

伪代码:
主方法:

1、读取用户输入的整数
2、调用f方法,判断该整数是否能进行分解
3、输出判断结果

f方法:

1、如果需要输出的数n为0,则返回1
2、如果数组a[]的四位均遍历了,则返回0
3、for循环是用于分解n,将n开根号,结果下取整赋值给数组a,对数n-i*i再次进行f方法,直到数组a[]的四位均遍历过

难点总结:

难点主要是f方法中的for循环,里面还嵌套了一个f方法

for (int i = (int) Math.sqrt(n); i >= 1; i--) {
            a[idx] = i;
            if (f(n-i*i, a, idx+1) == 1) {
                return 1;
            }
        }

运行结果截图:

码云链接

PSP时间

步骤 耗时(min) 百分比
需求分析 10 11%
设计 20 22%
代码实现 30 33%
测试 10 11%
分析总结 20 22%
posted @ 2019-05-26 19:49  20175310xcy  阅读(278)  评论(0编辑  收藏  举报