package javaTest;
import java.util.Scanner;
public class Test2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n,i;
System.out.println("请输入数组a[]的元素个数");
try {
n = scanner.nextInt();
int[] a = new int[n];
for(i = 0; i < n; i++) {
System.out.println("请输入数组a[" + i + "]");
a[i] = scanner.nextInt();
}
scanner.close();
}
catch(Exception e) {
e.printStackTrace();
}
}
}
这个是在控制台里面输入数组,求问输入完后要判断里面哪些是水仙花数怎么写
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
int arr[]=new int[7];
System.out.println("请输入7个三位数:");
for(int i=0;i<arr.length;i++){
arr[i]=in.nextInt();
}
System.out.println("数组中的水花仙数为:");
for(int i=0;i<arr.length;i++){
int x =arr[i]/100;
int y =arr[i]/10%10;
int z =arr[i]%10;
if(arr[i]=x*x*x+y*y*y+z*z*z)
System.out.println(arr[i]);
}
}
}
有没有规定输入的数字是几位数呢?比如3位数153
a = 153/100; //百位
b = 153/10%10; //十位
c = 153% 10; //个位
if(a*a*a + b*b*b+c*c*c == 153) {
System.out.println("153是水仙花");
}
package javaTest;
import java.util.Scanner;
public class Test2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n,i;
System.out.println("请输入数组a[]的元素个数");
try {
n = scanner.nextInt();
int[] a = new int[n];
for(i = 0; i < n; i++) {
System.out.println("请输入数组a[" + i + "]");
a[i] = scanner.nextInt();
if (a[i] > 99 && a[i] < 1000) {
int a1 = a[i] / 100;// 百
int b = a[i] / 10 % 10;// 十
int c = a[i] % 10;// 个
int result = (int) Math.pow(a1, 3) + (int) Math.pow(b, 3) + (int) Math.pow(c, 3);
if (result == a[i]) {
System.out.println(a[i]+"是水仙花数");
}
}
}
scanner.close();
}
catch(Exception e) {
e.printStackTrace();
}
}
}
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632