方程的整數解

方程的整數解

c
在這裏插入圖片描述
在這裏插入圖片描述
應該還可以做其他方面的優化,減少循環的次數吧

# include <stdio.h>
int main()
{
	/**
	方程的整數解
	方程:a^2+b^2=2009;
	求有幾組解集打印出來 
	*/
	
	//不難看出這是一個二元二次函數
	
	//我們使用兩次循環,第一層循環就是遍歷其中一元a 
	int a,b;
	for(a=1; a<(int)sqrt(2009); a++) {
		
		//第二層循環就是遍歷另外一元b 
		for(b=a+1; b<(int)sqrt(2009); b++) {
			
			//判斷是否符合  a^2+b^2=2009 如果符合打印出來 
			if(a*a + b*b == 2009) {
				printf("%d*%d+%d*%d=2009\n", a,a,b,b);
			}
			
		}
	}
   return 0;
}

java

寫一個三元二次方程
    public static void main(String[] args) {
        //a^2+b^2+c^2=1000
        for(int a = 1; a < Math.sqrt(1000); a++) {
            for(int b = a + 1; b < Math.sqrt(1000); b++) {
                for (int c = b + 1; c < Math.sqrt(1000); c++) {

                    if(a*a+b*b+c*c == 1000) {
                        System.out.println(a+"、"+b+"、"+c);
                        System.out.println("----------");
                    }
                }
            }
        }
    }

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章