简体   繁体   English

如何显示“无效号码”?

[英]How to display "Invalid Number"?

import java.util.Scanner;

public class SumofEven1 { ``private static Scanner sc;公共 class SumofEven1 { ``私有 static 扫描仪 sc; public static void main(String[] args) { int number, i, evenSum = 0;公共 static void main(String[] args) { int number, i, evenSum = 0; sc = new Scanner(System.in); sc = 新扫描仪(System.in);

    System.out.print("Please input a positive integer :  ");
    number = sc.nextInt();                  
    System.out.print("Even numbers : ");
            for(i = 1; i <= number; i++)
    {
        
        if(i % 2 == 0)
        {
            evenSum = evenSum + i; 
                            System.out.print(i + " ");
        }
                    
    }
    System.out.println("\nSum of even numbers : " + evenSum);
         
}

} }

I would want for the code to show an invalid number if the user inputs a number < 0如果用户输入的数字 < 0,我希望代码显示无效数字

Here is some updated code:这是一些更新的代码:

private static Scanner sc; 
  public static void main(String[] args) { 
    int number, i, evenSum = 0; 
    sc = new Scanner(System.in);
    number = -1;
    while(number < 0){
      System.out.print("Please input a positive integer :  ");
      number = sc.nextInt();
    }
    System.out.print("Even numbers : ");
    for(i = 1; i <= number; i++){
        if(i % 2 == 0){
            evenSum = evenSum + i; 
            System.out.print(i + " ");
        }      
    }
    System.out.println("\nSum of even numbers : " + evenSum);
         
  }

Here, I used a while loop to make the user keep inputting values until one matches the criteria of being nonnegative.在这里,我使用了一个 while 循环来让用户不断输入值,直到一个匹配非负的标准。 Alternatively, you may just want to not run the rest of the program if the user inputs a negative number:或者,如果用户输入负数,您可能只想不运行程序的 rest:

private私人的

static Scanner sc; 
  public static void main(String[] args) { 
    int number, i, evenSum = 0; 
    sc = new Scanner(System.in);
    System.out.print("Please input a positive integer :  ");
    number = sc.nextInt();
    if(number >= 0){
      System.out.print("Even numbers : ");
      for(i = 1; i <= number; i++){
          if(i % 2 == 0){
              evenSum = evenSum + i; 
              System.out.print(i + " ");
          }      
      }
      System.out.println("\nSum of even numbers : " + evenSum);
    }
    else{
      System.out.println("Invalid Number");
    }
  }

In this program, the rest of the code will only run if number is nonnegative.在这个程序中,代码的 rest 只有在 number 为非负数时才会运行。 In general though, we should use a while loop so that we will eventually get a response from the user that will allow the program to run.不过一般来说,我们应该使用一个while循环,这样我们最终会从用户那里得到一个允许程序运行的响应。

I hope this helped.我希望这会有所帮助。 Let me know if you have any other questions/clarifications.如果您有任何其他问题/说明,请告诉我。

After taking the input, just check the number if it meets the criteria to be invalid number or not.输入后,只需检查号码是否符合无效号码的条件。 after this line number = sc.nextInt();在此行number = sc.nextInt(); write:写:

 if(number<0)
      System.out.print("Invalid number");
    else 
       {
   System.out.print("Even numbers : ");
                for(i = 1; i <= number; i++)
        {
            
            if(i % 2 == 0)
            {
                evenSum = evenSum + i; 
                                System.out.print(i + " ");
            }
                        
        }
        System.out.println("\nSum of even numbers : " + evenSum);
}

After taking input from the user, you can add an "if" statement to check whether the number is > 0 or not and in the else statement, you can give the message of an "invalid number".获取用户输入后,您可以添加“if”语句来检查数字是否> 0,并且在 else 语句中,您可以给出“无效数字”的消息。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM