6个回答
展开全部
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个4位自然数:");
if(scanner.hasNext("[1-9]\\d{3}?")){
int x = Integer.parseInt(scanner.next());
System.out.println(x/1000 + (x/100 % 10) + (x/10 %10) + (x %10));
} else {
System.err.println("去冲个冷水澡清醒一下吧!");
}
scanner.close();
System.out.println("请输入一个4位自然数:");
if(scanner.hasNext("[1-9]\\d{3}?")){
int x = Integer.parseInt(scanner.next());
System.out.println(x/1000 + (x/100 % 10) + (x/10 %10) + (x %10));
} else {
System.err.println("去冲个冷水澡清醒一下吧!");
}
scanner.close();
展开全部
方法一:
import java.util.Scanner;
public class Test {
public void algorithm() {
System.out.println("请输入一个四位整数:");
Scanner input = new Scanner(System.in);
if (input.hasNextInt()==true) {// 判断是否为整数
int num = input.nextInt();
int qianwei = num / 1000;// 千位
int baiwei = num / 100 % 10;// 百位
int shiwei = num / 10 % 10;// 十位
int gewei = num % 10;// 个位
int count = qianwei + baiwei + shiwei + gewei;//四位数总和
System.out.println(num + "的四位数之和是" + count);
} else {
System.out.println("您输入的不是整数,请重新输入");
algorithm();//递归
}
}
public static void main(String[] args) {
Test t = new Test();
t.algorithm();//方法调用
}
}
方法二:用String接受 一个个拆开转换再相加,逻辑性不强,比较麻烦
import java.util.Scanner;
public class Test {
public void algorithm() {
System.out.println("请输入一个四位整数:");
Scanner input = new Scanner(System.in);
if (input.hasNextInt()==true) {// 判断是否为整数
int num = input.nextInt();
int qianwei = num / 1000;// 千位
int baiwei = num / 100 % 10;// 百位
int shiwei = num / 10 % 10;// 十位
int gewei = num % 10;// 个位
int count = qianwei + baiwei + shiwei + gewei;//四位数总和
System.out.println(num + "的四位数之和是" + count);
} else {
System.out.println("您输入的不是整数,请重新输入");
algorithm();//递归
}
}
public static void main(String[] args) {
Test t = new Test();
t.algorithm();//方法调用
}
}
方法二:用String接受 一个个拆开转换再相加,逻辑性不强,比较麻烦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import java.util.Scanner;
public class Test {
public static void main(String args[]){
System.out.print("请输入四位整数:");
Scanner console=new Scanner(System.in);
int temp=console.nextInt();
if (temp > 999 && temp <= 9999 ){
String str=temp+"";
int one=Integer.parseInt(str.substring(0,1));
int two=Integer.parseInt(str.substring(1,2));
int three=Integer.parseInt(str.substring(2,3));
int four=Integer.parseInt(str.substring(3,4));
System.out.println("输入的四位数字的和为-->"+(one+two+three+four));
}else{
System.out.println("输入的不是四位整数。。。");
}
}
}
public class Test {
public static void main(String args[]){
System.out.print("请输入四位整数:");
Scanner console=new Scanner(System.in);
int temp=console.nextInt();
if (temp > 999 && temp <= 9999 ){
String str=temp+"";
int one=Integer.parseInt(str.substring(0,1));
int two=Integer.parseInt(str.substring(1,2));
int three=Integer.parseInt(str.substring(2,3));
int four=Integer.parseInt(str.substring(3,4));
System.out.println("输入的四位数字的和为-->"+(one+two+three+four));
}else{
System.out.println("输入的不是四位整数。。。");
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public class IntTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int i = sc.nextInt();
if(i<=9999&&i>=1000){
//1
String s = new Integer(i).toString();
int sum = 0;
for(int j = 0,k=s.length();j<k;j++){
sum+=Integer.parseInt(s.substring(j, j+1));
}
System.out.println("Input:"+s+",Output:"+sum);
//2
int a = i/1000;
int b = i/100%10;
int c = i/10%10;
int d = i%10;
System.out.println("Input:"+i+",Output:"+(a+b+c+d));
//end of input
sc.close();
}else{
System.out.println("The input is not correct!");
}
}
}
只想到了2种方法
复制到Eclipse,ctrl shift o ,然后就可以run了
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int i = sc.nextInt();
if(i<=9999&&i>=1000){
//1
String s = new Integer(i).toString();
int sum = 0;
for(int j = 0,k=s.length();j<k;j++){
sum+=Integer.parseInt(s.substring(j, j+1));
}
System.out.println("Input:"+s+",Output:"+sum);
//2
int a = i/1000;
int b = i/100%10;
int c = i/10%10;
int d = i%10;
System.out.println("Input:"+i+",Output:"+(a+b+c+d));
//end of input
sc.close();
}else{
System.out.println("The input is not correct!");
}
}
}
只想到了2种方法
复制到Eclipse,ctrl shift o ,然后就可以run了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int number=1516;
int a, b, c, d, sum;
a = number/1000;
b = number/100%10;
c = number/10%10;
d = number%10;
sum = a + b + c + d;
int a, b, c, d, sum;
a = number/1000;
b = number/100%10;
c = number/10%10;
d = number%10;
sum = a + b + c + d;
追问
麻烦你能给出完整代码吗?貌似四位整数需要有判断吧!(999<number<10000)这句难道不用吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询