A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

©   /  2014-4-12 15:34  /  2519 人查看  /  12 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public class BaseTest {
        public static void main(String[] args) {
                cifang();
        }
       
        public static void cifang(){
                System.out.println(Math.pow(13, 13)%1000);
        }
}
其实第二种方法和以上的这样一样,最终都是Math.pow(13, 13)%1000,如果你看不懂他说的那个方法的话,就是
                for(i=1;i<=13;i++)
                {
                        sum*=num;
                        if(sum>1000) sum%=1000;
                }中的sum>1000你可能误解他的意思了,我想你可能当sum>1000时,就停止了for循环,如果你这样认为的话,那你就错了,刚开始的时候我也是这样认为的,其实在sum>1000时,还继续着for循环,直到13个13相乘完才结束for循环。
还有就是我认为,你说的那两个方法代码都不够优化,尤其是第一个方法,本来一个简单的问题,你把它复杂化了。
以上是我的个人见解,不足之处,还请见谅!!!


回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马