我正在尝试创建一个随机数生成器,范围从 1 到 1000 100 次,以在控制台应用程序和弹出式 Windows 消息框 (MessageBox.Show) 上以这种格式实现以下结果:
- 100个随机数,按从小到大的顺序
- 生成的偶数数量
- 生成的最小数
- 产生的最大数量
- 数字范围
我很困惑创建数组来存储值并获取我在这里生成的偶数的数量,例如我的数组名称将是“array”并使用“n”存储数字
string [] array = {item};
string output = string.Join("\n", array);
MessageBox.Show(output)
这是我的代码,我该如何添加呢?
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
namespace NumberGenerator
{
class Program
{
static void Main(string[] args)
{
Random number = new Random();
int min = int.MaxValue,
max = int.MinValue;
for (int counter = 0; counter < 100; counter++)
{
int n = number.Next(0, 999);
Console.WriteLine(n);
if (n < min)
min = n;
if (n > max)
max = n;
}
int range = min - max + 1;
string[] array = { "Minimum number is (min)" };
string output = string.Join("\n", array);
Console.WriteLine("Minimum number = {0}, Maximum number = {1}, Range = {2}", min, max, range);
MessageBox.Show(output);
}
}
}
最佳答案
这是一种方法。 代码应该是自解释的
static void Main(string[] args)
{
Random number = new Random();
int rangeFrom = 0;
int rangeTo = 999;
List<int> generatedNumbers = new List<int>();
for (int counter = 0; counter < 100; counter++)
{
generatedNumbers.Add(number.Next(rangeFrom, rangeTo));
}
generatedNumbers.Sort();
string output = "generated numbers: {0} \r\n\rmin: {1}\r\n\r\nmax: {2}\r\n\r\nrange: {3}-{4}";
output = string.Format(output,
string.Join(", ", generatedNumbers.ToArray()),
generatedNumbers.Min(),
generatedNumbers.Max(),
rangeFrom,
rangeTo);
MessageBox.Show(output);
}
总结:
我使用 List 来更轻松地处理数据,并使用了 Linq(确保您在应用中使用了 using System.Linq;
)。
关于C#随机数生成器,显示在MessageBox中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42395209/