精彩做本人 2024-08-01 20:31 采纳率: 25%
浏览 3

idea提问(标题括号内为标题长度占位用)

用idea寻找勾股数:

三个正整数,如果两个数的平方和等于第三个数。则三个数就构成一组勾股数。

例如:

3 4 5

找出100以内的所有的勾股数。

每组勾股数从小到大、用空格间隔、独占一行输出
(初学者)


```java
public class day13homework {
    public static void main(String[] args) {
        int[]gougu=new int[3];
        int a=100;
        int b=5;
        int c=4;
        gougu[0]=a;
        gougu[1]=b;
        gougu[2]=c;
        for (int i = 0; i <100; i++) {
            if(a*a==b*b+c*c|| b*b==a*a+c*c||c*c==a*a+b*b){
                System.out.println(gougu[0]+" "+gougu[1]+" "+gougu[2]);
//怎么让a.b.c改变数值不会了
                
            }
        }

```

  • 写回答

1条回答 默认 最新

  • 百木成森 2024-08-02 08:54
    关注

    1 你写的循环i和abc无关,所以在此基础上只是无效循环
    2. 新手可以从3次循环开始,abc依次从1取到100判断是否满足勾股条件
    3. 从n^3开始逐渐缩小时间复杂度先去掉c的循环,再判断b是否可以少取一些数,进一步缩小时间复杂度
    至于代码,需要自己想

    评论

报告相同问题?

问题事件

  • 创建了问题 8月1日