(for 循环)编程找出四位整数 abcd 中满足 (ab+cd)(ab+cd)=abcd 的数
生活随笔
收集整理的這篇文章主要介紹了
(for 循环)编程找出四位整数 abcd 中满足 (ab+cd)(ab+cd)=abcd 的数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
優化之前:
public class Exc2_8{public static void main(String[] args){for(int abcd = 1000 ; abcd <= 9999 ; abcd++){int ab = abcd/100;int cd = abcd%100;if ((ab+cd)*(ab+cd)==abcd) System.out.println(abcd);}} }優化思路:
?? ??? ??? ?優化過程:先了解完全平方數的概念;一個數能表示成某個數的平方的形式,例如6*6=36,36就是完全平方數
?? ??? ??? ?這個題就是求1000-9999內的一個數的個位十位和百位千位相乘等于自身的數。
?? ??? ??? ?先知道 32*32=1024,100*100=10000
?? ??? ??? ?則,兩個數相乘是一個四位數,這這兩個數一定是32-99內的共68個數
?優化之后:
運行結果:
? ? ? ? 2025
?? ??? ?3025
?? ??? ?9801
轉載于:https://www.cnblogs.com/chenpeisong/p/9751296.html
總結
以上是生活随笔為你收集整理的(for 循环)编程找出四位整数 abcd 中满足 (ab+cd)(ab+cd)=abcd 的数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BJSubwayPen -- 北京地铁路
- 下一篇: 个人空间岁末大回报活动12月28日获奖名