簡體   English   中英

Java 程序從用戶那里讀取不定數量的數字,直到輸入正數

[英]Java program reading indefinite amount of numbers from a user till a positive is entered

我需要編寫一個 java 程序讀取不確定數量的數字並將它們保存到數字集合中,直到用戶輸入一個(偶數)。 我嘗試了一個while循環,當在其中找到一個正數時它會停止。 但它並沒有真正起作用。 這是我嘗試過的代碼:

公共 static 無效主(字符串 [] 參數){

    int programInteger = 1;
    int inputtedInteger;
    
    while (programInteger < 2) {
    System.out.println("Enter a number: "); //Asks user to input a number
    Scanner in = new Scanner(System.in);
    inputtedInteger = Scanner(in.nextLine);
    
    if (inputtedInteger != 0) {
        System.out.println("The number "+ inputtedInteger +" that you inputted is not an even number, try again: ");
        inputtedInteger=in.nextInt();
    }
    else if (inputtedInteger % 2 == 0){ 
        programInteger =+1;
        System.out.println("The number "+inputtedInteger+" that you entered is an even number!");
    }
    
}
    
}
/*  if(inputtedInteger % 2 == 0) {
        System.out.println("The number "+ inmatatTal +" you entered is an even number!");
    }
        else {
            System.out.println("Enter a number?! ");
            inputtedInteger = in.nextInt();
        
        }

修復循環邏輯中的一些事情應該可以工作:

int inputtedInteger = 0;
Scanner in = new Scanner(System.in);
    
while (inputtedInteger < 1) {
    System.out.println("Enter a number: "); //Asks user to input a number
    inputtedInteger = in.nextInt();
    
    if (inputtedInteger % 2 != 0) {
        System.out.println("The number "+ inputtedInteger +" that you inputted is not an even number, try again: ");
    }
    else if (inputtedInteger % 2 == 0){ 
        System.out.println("The number "+inputtedInteger+" that you entered is an even number!");
    }
    
}

我會為這樣的代碼設置一個大綱:

setup Scanner, create collection
while true:
   userInput = scanner.nextInt()
   if userInput > 0: break
   collection.add(userInput)
print('user entered', collection.length(), 'numbers.')

希望有幫助。 我將讓您使用實際的 Java 語法來填寫此內容。 我在 OP 上寫了一篇評論,說明為什么您的結構無法解決手頭的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM