Java彩票游戏 - 数组

时间:2016-02-20 06:02:59

标签: java arrays

您将获得一个5位数的彩票号码,并将其与中奖彩票号码进行比较。

如果输入的彩票号码有一定数量正确,您将告诉用户他们赢了多少。

您应该按照以下步骤操作:

1.Declare 2 5个元素整数数组。 (a)一个应该是中奖彩票号码(硬编码为12,35, 34,2,5)。 (b)另一个应该是用户的彩票号码输入。

2.Declare一个整数来计算匹配的彩票号码。

2.Declare一个整数来计算匹配的彩票号码。

3.提示用户使用for循环输入他们的5位数的彩票号码 他们在用户的彩票号码阵列中的号码。

4.使用for循环比较两个数组的元素并递增 当匹配时,上面声明的计数器变量。

使用计数器变量中保存的值,显示用户赢得的金额。

(a)0个匹配数字:$ 0

(b)1个匹配号码:$ 1

(c)2个匹配数字:$ 50

(d)3个匹配数字:$ 1,000

(e)4个匹配数字:$ 50,000

(f)5个匹配数字:$ 90,000,000

到目前为止,我有以下代码:

scope="public_profile,email"

然而,问题是硬编码的值不会打印和int UserInput [] = new int [5];必须是4,但我得到一个错误所以我必须输入5?

2 个答案:

答案 0 :(得分:0)

  

问题是硬编码的值不会打印

System.out.println("Lottery Numbers are: " + Arrays.toString(HardCoded));

否则HardCoded将打印它的地址。

  

int UserInput [] = new int [5];必须是4但我得到一个错误,所以我   必须投入5?

UserInput的大小为5,因此您可以输入从04个位置的项目。完全5个项目。这是正确的。数组索引从0开始。

你需要

int UserInput [] = new int[6];

05位置需要使用的内容。所以在数组中完全6项。

修改

for(int i = 0; i < UserInput.length; i++)
    {
        for(int j = 0; j < HardCoded.length; j++)
        {
            if(HardCoded[j] == UserInput[i])
            System.out.println(UserInput[i] + " Matched at: " + i);
        }
    }

答案 1 :(得分:-1)

每次打印出要求提供其他号码时,您也忘记清除输入行。

尝试在每次时间之后添加以下代码,获取用户输入并将其放入UserInput数组中。

input.nextLine();