如何在n个骰子数量中找到最高的一对(两个骰子)。c代码

如何在n个骰子数量中找到最高的一对(两个骰子)。c代码,c,c89,C,C89,如果我以角色5为例,用值2 4 5 2掷骰子,代码将弹出“你得分:4” 如何在骰子中得到最高的一对 这是代码的一部分 void Pairs(int n, char* Lower_score1, int* dies) { int i, j; printf("Pairs:\t"); roll_multiple_dies(n, dies); for ( i = 0; i < n; i++) { for ( j = 0; j < n; j+

如果我以角色5为例,用值2 4 5 2掷骰子,代码将弹出“你得分:4”

如何在骰子中得到最高的一对

这是代码的一部分

void Pairs(int n, char* Lower_score1, int* dies)
{
  int i, j;

  printf("Pairs:\t");

  roll_multiple_dies(n, dies);
  for ( i = 0; i < n; i++)
  {
    for ( j = 0; j < n; j++)
    {
      if (dies[i] == dies[j] && j != i)
        Lower_score1[0] += dies[i] && dies[j];
    }
  }
  printf(" You scored: %d\n", Lower_score1[0]);
} 
void对(int n,char*Lower_score1,int*dies)
{
int i,j;
printf(“成对:\t”);
辊式多个模具(n个模具);
对于(i=0;i
我假设
滚动多个模具(n个模具)
将用
n
卷填充数组。然后做一些类似的事情:

roll_multiple_dies(n, dies);
int cnt_arr[7] = { 0 };
for(i=0; i<n; ++i)
{
    ++cnt_arr[dies[i]];  // Count the number of times each roll result appear
}

我假设
滚动多个模具(n个模具)
将用
n
卷填充数组。然后做一些类似的事情:

roll_multiple_dies(n, dies);
int cnt_arr[7] = { 0 };
for(i=0; i<n; ++i)
{
    ++cnt_arr[dies[i]];  // Count the number of times each roll result appear
}

对于值2 4 5 2-这些值是什么以及它们如何产生
4
?您可以使用两个
循环和六元素数组。我不确定这一点,但如果骰子数量小于6且大于4,则分数将为4或2。当有两对时,它通常是4,如果只有一对,它通常是2。我不明白这一点。标题谈到一对,但你只打印一个值。老师不想让我得到的一对成为分数。如果骰子显示2 3 4 4 5,我希望它取四个,比如4+4=8,并在最后一次打印中写出。比如“You scored:8”,如果骰子显示2 2 4 5 5,我希望它取最高的一对,用值2 4 5 2写出“You scored:10”-这些值是什么,以及它们如何产生
4
?你可以使用两个
循环和一个六元素数组。我不确定,但如果骰子数量低于6,超过4,则分数为4或2。当有两对时,它通常是4,如果只有一对,它通常是2。我不明白这一点。标题谈到一对,但你只打印一个值。老师不想让我得到的一对成为分数。如果骰子显示2 3 4 4 5,我希望它取四个,比如4+4=8,并在最后一次打印中写出。比如“你得分:8”,如果骰子显示2 2 4 5 5,我希望它取最高的一对,并写出“你得分:10”。如果你有时间,你能回答为什么在数组中使用7个元素吗?谢谢你的帮助,它帮助我解决了我生活中的其他问题program@Radiset我预计骰子将掷出数字1、2、3、4、5和6。所以我需要一个可以允许索引6的数组,即
arr[6]
。因此,数组必须有7个元素(其中索引0处的元素未使用)。另一种方法:
intcnt_arr[6]={0};对于(i=0;ii如果你有时间,你能回答为什么在数组中使用7个元素吗?谢谢你的帮助,它帮助我解决了我的问题中的其他问题program@Radiset我预计骰子将掷数字1、2、3、4、5和6。因此我需要一个允许索引6的数组,即
arr[6]
。因此数组必须有7个元素(其中索引0处的元素未使用)。另一种方法:
int cnt_arr[6]={0};for(i=0;i)