使用C#窗口形式上的方法计算值的平方根

使用C#窗口形式上的方法计算值的平方根,c#,winforms,C#,Winforms,我在C#window form上被分配了一个任务,我从用户那里计算一个输入文本框,用户想要输入一个值,然后按下一个单选按钮(平方根),然后单击一个普通按钮以获得结果。是否可以在文本框(而不是标签)中获得结果?如果是这样,我如何使用“方法”(将方法链接到按钮\单击一个)来实现这一点?另外,为什么我需要返回方法的参数值?它不允许我不返回就执行/ { public partial class Form1 : Form { public Form1() {

我在C#window form上被分配了一个任务,我从用户那里计算一个输入文本框,用户想要输入一个值,然后按下一个单选按钮(平方根),然后单击一个普通按钮以获得结果。是否可以在文本框(而不是标签)中获得结果?如果是这样,我如何使用“方法”(将方法链接到按钮\单击一个)来实现这一点?另外,为什么我需要返回方法的参数值?它不允许我不返回就执行/

{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }



        private int square(int A)
        {
            if (rbSquare.Checked)
            {
                Math.Sqrt(A);
                return Convert.ToInt32(Math.Sqrt(A));
            }
            else
            {
                return A;
            }

        }
        private void btncalculate_Click(object sender, EventArgs e)
        {
            int firstNum = Convert.ToInt32(tbinput.Text);
            int squareRoot = square(firstNum);
            tbResult.Text = "" + squareRoot;

        }
    }
}
是否可以在文本框(而不是标签)中获得结果

当然。设置文本框的文本属性,就像设置标签的标签文本一样

为什么我需要从一个方法返回一个值


您说过,
square
总是返回一个int,但只有选中复选框,您才会返回一个int。编译器提醒您,为了履行承诺的合同,您需要始终返回int。如果未选中该复选框,您应该返回什么值?

是的,逻辑上平方根通常为您提供一个整数,您将其自身相乘,然后将该数字平方根。如果我没有选中radiobutton而不是复选框,那么我就不会得到结果。如果我没有选中radiobutton,它会自己给我输入的值,而不是平方根。我知道了答案,但我仍然不明白为什么return只接受双数值,而不接受双数值integers@Oso例如我不明白你的问题。您的方法被键入为returning
int
,因此您必须返回一个
int
,而不是
double
@Oso:平方根不能给您一个整数;他们给你一个分数。如果你问2的平方根,你会得到1.414。。。不是1或2!您应该使用
(int)Math.Sqrt(A)而不是
转换.ToInt32
;在C#中使用cast更为惯用。为什么要调用平方根函数两次?