gpt4 book ai didi

Java 匹配计数器和伪匹配计数器

转载 作者:行者123 更新时间:2023-12-01 05:03:33 24 4
gpt4 key购买 nike

我正在尝试制作两种方法,其他方法运行良好。问题是伪匹配计数器,其中输入应该是随机数,例如 5 4 3 2,用户猜测输入,例如 5 3 6 1,输出将是:伪匹配:1 和匹配:2。我不明白我的伪匹配方法出了问题。

public int match(int[] guess) //Counts the number of matches
{
int count = 0;

for(int i = 0; i<3; i++)
{
if (lotteryNumbers[i] == guess[i])
{
count++;
}

}
return count;
}
//First add psuedo counter for current program
//Then modify for multiple variables.

//Single slot to Single slot.
public int psuedoMatch(int[] guess)
{
boolean arraysEqual = true;
int psuedoCount = 0;

//Determine same size:
if (lotteryNumbers.length != guess.length)
{
arraysEqual = false;
}

//Determine if elements contain same data:

while (arraysEqual && psuedoCount < 3) // guess.length
{
if (lotteryNumbers[psuedoCount] != guess[psuedoCount] )
{
arraysEqual = false;
}
psuedoCount++;
}

return psuedoCount;
}

最佳答案

我猜你正在尝试查找这两个数组的匹配数,但相等元素的相对索引应该不同,以便我们可以将它们添加到伪计数器机制中。那么看看这个方法并尝试一下:

public int psuedoMatch(int[] guess)
{
int psuedoCount = 0;

if (lotteryNumbers.length != guess.length)
return 0;

int size = lotteryNumbers.length;

// Determine if elements contain same data, but at different indexes!

for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {
// Denote the inequality check i != j
if (lotteryNumbers[i] == guess[j] && i != j)
psuedoCount++;
}
}

return psuedoCount;
}

关于Java 匹配计数器和伪匹配计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13042351/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com