java编程水仙花数(水仙花数java编程实现)
java求水仙花数
按照你的要求编写的求N位水仙花数的程序如下
import?java.util.Scanner;
public?class?CCC?{
?public?static?void?main(String[]?args)?{
??System.out.print("请输入正整数N(3=N=7):");
??Scanner?sc=new?Scanner(System.in);
??int?N=sc.nextInt();
??if(N3?||?N7){
???System.out.println("N3?或者?N7");
???return;
??}
??int?min=(int)Math.pow(10,?N-1);
??int?max=(int)Math.pow(10,?N);
??for(int?i=min;imax;i++){
???int?tmp=i;
???int?j=0;
???int?a[]=new?int[N];
???while(tmp!=0){
????a[j]=tmp%10;
????tmp=tmp/10;
????j++;
???}
???int?sum=0;
???for(int?k=0;kN;k++){
????sum=sum+(int)Math.pow(a[k],N);
???}
???if(sum==i){
????System.out.println(i);
???}
??}
?}
}
运行结果
请输入正整数N(3=N=7):4
1634
8208
9474
java中for循环怎样打印出所有的"水仙花数"?
先写一个函数计算一个数字的立方为多少。命名为cube()
private static int cube(int n) {
return n * n * n;
}
判断这个数是不是水仙花数,求每一位数上的数的立方和是否为原数字本身即可。
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
JDK(Java Development Kit)称为Java开发包或Java开发工具,是一个编写Java的Applet小程序和应用程序的程序开发环境。JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一些Java工具和Java的核心类库(Java API)。不论什么Java应用服务器实质都是内置了某个版本的JDK。
java编程学习水仙花数问题?
你的程序主要是每个数前,sum变量没有置0
改正后的水仙花数的Java程序如下(改动的地方见注释)
public class a99{
public static void main(String[] arge){
int sum=0,t=0;
for(int i=100;i1000;i++){
t=i;
sum=0;//这里加一句,每个数字都要初始化sum=0
while(t!=0){
sum += ((t%10)*(t%10)*(t%10));
t /= 10;
}
if(sum==i)
System.out.println(i+"是水仙花数");//这里printf改成println
}
}//这里加大括号
}//这里加大括号
