簡體   English   中英

我如何使用戶知道他們輸入的數字是負數還是正數

[英]How can I make my user aware of how many numbers they input whether it was negative or positive

到目前為止,我有這個程序,它已經非常接近我想要的了。 但是我試圖找出一種方法,在用戶輸入所有他/她的號碼后,他可以知道他是否輸入了3個負數和4個對數數字

假設他輸入了-7,-8,-3,2,3,4,2,表示您輸入了3個負數和4個正數

import java.util.*;
public class Testing2 {
    public static void main(String[] args) {

        int numbers;
        System.out.println("Input seven numbers");  
        for (int i = 1; i <8; i++){
            Scanner Nums = new Scanner(System.in);

            numbers = Nums.nextInt ();
            if (numbers < 0){
                System.out.println("You have " + numbers + " numbers that are negative");
            } else {
                System.out.println("You have "+ numbers + " numbers that are postive");
            }
        }
    }
}

資源泄漏:nums永遠不會關閉

我正在使用Eclipse,這顯示了什么。 有人知道為什么嗎?

嘗試這個:

import java.util.*;
public class Testing2 {
public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in); // Don't need to close as System.in
        int numNegative = 0, numPositive = 0;
        System.out.println("Input seven numbers");  
        for (int i = 1; i < 8; i++){

            int number = scanner.nextInt();
            if (number >= 0){ // Is the number positive or 0
                numPositive++;
            } else { // Otherwise
                numNegative++;
            }
        }
        System.out.println("You have " + numPositive + " numbers that are positive");
        System.out.println("You have " + numNegative + " numbers that are negative");
    }
}

一種方法是使用數組來跟蹤您的七個數字,並使用兩個變量來跟蹤正數或負數(例如pos_numbers和neg_numbers),

這樣,每次您從用戶那里收到輸入時,if else語句都會測試數字是正數還是負數,如果它是正數,則它將pos_numbers變量加1,如果它是負數,則它將增加neg_numbers變量。一個。 用戶輸入完數字后,程序將顯示pos_numbers和neg_numbers的值,以顯示用戶分別輸入了多少個正數和負數。

另外,將行放置在創建for Scan循環之前的Scanner對象的位置也是一個好主意,因為這只需要執行一次,而不必執行多次。

這是代碼:

    import java.util.*;
    class Testing2 {
        public static void main(String[] args) {

            int[] numbers = new int[7];
            int pos_numbers = 0;
            int neg_numbers = 0;
            Scanner Nums = new Scanner(System.in);

            System.out.println("Input seven numbers");  
            for (int i = 0; i <7; i++) {
                numbers[i] = Nums.nextInt();

                if (numbers[i] < 0) neg_numbers++;
                else pos_numbers++;
            }

            System.out.println("You have " + neg_numbers + " numbers that are negative");
            System.out.println("You have "+ pos_numbers + " numbers that are postive");
        }
    }

暫無
暫無

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

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