如何得到一个随机数之间的最小和最大?最小值和最大值也是随机的



当您按下按钮时,它生成两个随机数字为min和max。我需要把数字在一个列表,并选择一个随机数显示在一个标签。if语句不会打印错误消息,它会给我一个错误"输入字符串没有输入正确的格式"。我也试着把随机数在一个列表,我只是不能得到它弄清楚。如果能给点提示或建议,我将不胜感激。谢谢你

    private void GoButton_Click(object sender, EventArgs e)
    {
        Random r = new Random();
        int min = r.Next();
        int max = r.Next();
        MinLabel.Text = min.ToString();
        MaxLabel.Text = max.ToString();
        RandomValueLabel.Text = (MinOrMax(min, max)).ToString();
        Between(min, max);
        ListValueLabel.Text = Between(min, max).ToString();
    }
    private int MinOrMax(int min, int max)
    {
        if (min > max)
        {
            string message;
            message = Convert.ToInt32("Min is greater than Max. Please press go again");
            return message;
        }
        else
        {
            int answer;
            answer = min * max;
            return answer;
        }
    }
    private int Between(int min, int max)
    {
        List<int> BetweenList = new List<int>(max);
        for (int i = min; i < max; i++)
        {
            var swap = randomnum.Next(i - 1);
            BetweenList.Add(BetweenList[swap]);
            BetweenList[swap] = i;
        }
        //return integer
    }

不能将字符串"Min is greater than Max. Please press go again"转换为int

由于您希望该方法的结果最终是字符串,因此只需返回string而不是int

private string MinOrMax(int min, int max)
{
    if (min > max)
    {
        string message;
        message = "Min is greater than Max. Please press go again";
        return message;
    }
    else
    {
        int answer;
        answer = min * max;
        return answer.ToString();
    }
}

如果您想要一个错误消息,如果您的条件不匹配,您可以抛出一个Exception,就像这样。顺便说一句,我不会评论返回值的逻辑。

private int MinOrMax(int min, int max)
{
    if (min > max)
    {
        throw new Exception ("Min is greater than Max. Please press go again");
    }
    else
    {
        int answer;
        answer = min * max;
        return answer;
    }
}

如何使用

private void YourFunction()
{
    // your code
    try
    {
        int getMinOrMax = MinOrMax(yourmin, yourmax);
        // do your stuff
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.Message);
    }
    // your code
}

理想情况下,您可以编写自己的Exception,但为了本示例的缘故。我将使用Exception类

最新更新