快乐8算法
/// </summary>
/// <param name="numbers"></param>
/// <returns></returns>
public static int GetKL8Result(int[] numbers)
{
int result = 0;
foreach (var number in numbers) {
if (number > 10) { //只算个位数字,十位数字舍去 例如11 只算 1 不算 11,因此最大只能是80(8+0) 不能超过80.
result += number % 10; //取出个位数字相加.
} else { //超过80的情况就把十位数字和个位数字相加。例如81 则 8+1=9 . 所以最大也就是90 (9+0)了。 这里有一个问题是90怎么办呢?我们其实也很好处理,把 90 看成 09 就行了。 比如说 80 + 9 = 89 , 89%10 = 9 , 80/10 + 9 = 17 , 17%10=7 , 7+9=16 , 16%10=6 . 这样子就表示了 90 的和值.
result += number / 10 + number % 10; //取出十位数字和个位数字相加。
}
}
return result % 10; //最后的总和除以10的余数就是快乐8的开奖结果.
}
}
创作工场
免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。
点击这里>>使用🔥专业版,更聪明、更完整、更原创!