You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#遍历两个骰子数组统计元素和为10的配对数实现方法

解决方案

适配性说明

foreach 遍历完全适配当前场景,实现逻辑简单直观,不容易出错。

遍历实现逻辑

你只需要嵌套两层foreach循环即可:

  • 外层遍历第一个骰子的所有可能点数
  • 内层遍历第二个骰子的所有可能点数
  • 每次判断两个点数之和是否为10,符合条件就将计数变量tenPairs加1

补全后的完整代码

{
    // 存储和为10的配对总数
    int tenPairs = 0;

    // 生成两个骰子的点数数组,num1、num2为对应骰子的面数
    int[] die1 = Enumerable.Range(1, num1).ToArray(); 
    int[] die2 = Enumerable.Range(1, num2).ToArray();

    // 嵌套foreach遍历所有配对组合
    foreach (int d1 in die1)
    {
        foreach (int d2 in die2)
        {
            if (d1 + d2 == 10)
            {
                tenPairs++;
            }
        }
    }

    // 返回结果字符串
    string resultMsg = "There are " + tenPairs +" total ways to make 10.";
    return resultMsg ;
}

可选简化方案(LINQ写法)

如果你不想手写循环,可以直接用LINQ的内置方法一行完成统计,效果和嵌套循环完全一致:

tenPairs = die1.Sum(d1 => die2.Count(d2 => d1 + d2 == 10));

内容的提问来源于stack exchange,提问作者DylanB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 11:00:01