簡體   English   中英

使用JOptionPane生成隨機數並對奇數和偶數進行排序

[英]Generate a random number and sort odd and even numbers using JOptionPane

我的第一個問題在這里。 我的任務是生成1到10之間的隨機數,即20次。 之后,我應該以某種方式將數字寫入奇數和偶數的兩個單獨的字符串中。 我們還應該計算每組數字有多少總數。 到目前為止,這是我所需要的,我需要有關如何顯示分隔數字的幫助。 我也想使用JOptionPane,但我們會提供任何幫助!

package lab5arudy;

import javax.swing.JOptionPane;

public class Lab5ARudy
{

public static void main(String[] args) 
{
   int randomNumber = 0;
   int evenNumbers = 0;
   int oddNumbers = 0;  

   String evenNums;
   String oddNums;


 for (int i = 0; i < 20; i++)
   {
       randomNumber = 1 + (int) (Math.random() * 10);

        if (randomNumber % 2 ==0)
               {                 
                  evenNumbers++;               
               }
            else
                oddNumbers++;       

    }


          JOptionPane.showMessageDialog(null,"Even Numbers: " + evenNumbers);
          JOptionPane.showMessageDialog(null,"Even Numbers: " + oddNumbers );


      }

}        

聽起來好像您只需要將所有隨機數添加到列表中即可在以后進行打印。 類似於以下內容:

Random rand = new Random();
List<Integer> odds = new ArrayList<>();
List<Integer> evens = new ArrayList<>();
for (int i = 0; i < 20; i++) {
    int next = rand.nextInt(10) + 1;
    if (next % 2 == 0)
        evens.add(next);
    else
        odds.add(next);
}
showMessageDialog("Even :" + evens + " (" + evens.size() + ")");
showMessageDialog("Odds :" + odds + " (" + odds.size() + ")");

您可以這樣做。

public static void main(String[] args) {

    int randomNumber;

    int evenNumbers = 0;
    int oddNumbers = 0;

    String evenNums = "";//initialize empty strings
    String oddNums = "";//initialize empty strings

    for (int i = 0; i < 20; i++) {
        randomNumber = 1 + (int) (Math.random() * 10);
        if (randomNumber % 2 == 0) {
            evenNumbers++;
            if (evenNums.equals("")) {//if the evenNums is empty, append the number
                evenNums = evenNums + randomNumber;
            } else {
                evenNums = evenNums + "," + randomNumber;//if the evenNums is not empty, append the number with a , in between
            }
        } else {
            oddNumbers++;
            if (oddNums.equals("")) {
                oddNums = oddNums + randomNumber;//if the oddNums is empty, append the number
            } else {
                oddNums = oddNums + "," + randomNumber;//if the oddNums is not empty, append the number with a , in between
            }
        }
    }
    JOptionPane.showMessageDialog(null, "Even Numbers: " + evenNumbers+"\n"+evenNums);//Show the even numbers
    JOptionPane.showMessageDialog(null, "Odd Numbers: " + oddNumbers+"\n"+oddNums);//Show the odd numbers
}

暫無
暫無

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

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