编写一个程序,该程序用正的两位数随机数填充一个15字节的数组。在每个数字中,两位数之和等于9。
这是我到目前为止所做的:
int one = 0;
int two = 0;
int[] arr = new int[15];
Random rnd = new Random();
for (int i = 0; i < arr.Length; i++)
{
arr[i] = rnd.Next(10, 99);
one = arr[0] % 10;
two = arr[0] / 10;
if (arr[i] % 2 == 0 && one + two == 9)
Console.WriteLine(arr[i]);
}
答案 0 :(得分:0)
解决方案的问题是BroadcastQueue: Permission Denial: broadcasting Intent { flg=0x400010 cmp=com.example.hunted/com.google.firebase.iid.FirebaseInstanceIdReceiver (has extras) } from null (pid=32279, uid=2000) requires com.google.android.c2dm.permission.SEND due to receiver com.example.hunted/com.google.firebase.iid.FirebaseInstanceIdReceiver
不会总是产生具有所需属性的数字。您应该编写始终有效的代码。
我们知道一个数字的总和应为9。如果我们假设两位数字为rnd.Next(10, 99)
,其中a*10+b
和a
是数字,而{{1} },我们可以从1到9随机生成b
。
然后我们可以计算其他数字a + b = 9
。
因此,我们的最终结果将是a
,它将简化为b = 9 - a
,其中a*10 + 9 - a
是从1到9的随机数,这是两个示例。
a*9 + 9
请注意,a
处于a=7 then 7 * 9 + 9 = 72, 7 + 2 = 9
a=3 then 3 * 9 + 9 = 36, 3 + 6 = 9
范围内