[英]c# even number and factorial
所以我有问题...我需要使用C#Windows窗体构建程序,并使用texbox1和textbox2阶乘进行计算,并在richtextbox中显示偶数,并使用FOR循环,我已经构建了此解决方案,但它只给我一个数字。 ...是介意**** ....如果你知道我的意思...有任何gest悔吗?
private void button1_Click(object sender, EventArgs e)
{
int x = Convert.ToInt32(textBox1.Text);
int y = Convert.ToInt32(textBox2.Text);
int fact = 1;
for (int i = x; i<=y; i++)
{
fact = fact * y;
}
richTextBox1.Text = fact.ToString();
}
好吧,我也已经构建了这个,您对此有何看法? 而且maby有人可以告诉我如何使用它?
for (int i = X; i <= Y; i++)
if (i % 2 == 0)
{
fakt = 1;
for (int j = i; j > 0; j--)
fakt = fakt * j;
}
让我们从定义阶乘函数开始。 您说它必须是 for循环 ,所以:
private int Factorial(int n) {
int result = 1;
for (int i = 2; i <= n; i++)
result *= i;
return result;
}
现在,您说您希望文本框具有以下格式:
X = 1; Y = 4;
=======================|Number|Factorial|====================
=======================|2|2|=================================
=======================|4|24|================================
让我们从制作一个将打印列标题的函数开始:
private void PrintHeaders(int x, int y) {
StringBuilder builder = new StringBuilder();
builder.AppendFormat("X = {0}; Y = {1}", x, y);
builder.AppendLine();
builder.AppendLine("===============|Number|Factorial|=============");
richTextBox1.Text = builder.ToString();
}
最后,我们的click事件处理程序 :
private void button1_Click(object sender, EventArgs e) {
int x = Convert.ToInt32(textBox1.Text);
int y = Convert.ToInt32(textBox2.Text);
PrintHeaders(x, y);
for(int i = x; i <= y; i++) {
if(i % 2 == 0) {
int result = Factorial(i);
richTextBox1.Text += "==========|" + i + "|" + result + "|=============";
richTextBox1.Text += Environment.NewLine;
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.