SKY外语计算机学习
标题:
Java水仙花数
[打印本页]
作者:
匿名
时间:
2013-1-5 19:44
标题:
Java水仙花数
本帖最后由 sky_yx 于 2015-12-30 14:10 编辑
利用Java数组的方式解出:
水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153)
作者:
Anthony
时间:
2013-3-16 23:44
本帖最后由 sky_yx 于 2015-12-30 14:10 编辑
import java.math.BigDecimal;
import java.util.Random;
/*
* 个人觉得 商业项目中数据较大,为了找到更多的水仙数
* 采用数据类型BigDecimal
* 随机生成100位内的自然数,并且通过字符串与数组之间的转化
* 循环判断
*
* 但有个问题就是,说不准计算机会等很长一段时间才有结果,想想啊100位是什么概念
*
*/
public class Mycode {
private static int num=100;
public static BigDecimal cubic (BigDecimal n){
return n.pow(3);
}
public static void main(String[] args) {
BigDecimal big=new BigDecimal(10);
BigDecimal big2=new BigDecimal(1);
Random random =new Random();
int n =random.nextInt(num)+1;
BigDecimal newOne=big.pow(n);
BigDecimal i=big.pow(n-1);
{
String str=i.toString();
char[] ch=str.toCharArray();
{
BigDecimal sum =new BigDecimal(0);
sum=sum.add(cubic(j));
System.out.println(sum.toString());
}
}
}
}考验你的计算机时候到了
欢迎光临 SKY外语计算机学习 (http://skywj.com/)
Powered by Discuz! X2.5