在一个项目上工作,我想我已经完成了大部分工作。问题是,虽然我可以得到输出,但它不是完整的输出。
基本上,目标是制作一个具有两个文本框的GUI,用户可以在其中输入1到50的数字(num1表示min,num2表示最大值),然后从四个不同的框中选择信息。第一个框显示素数,第二个是显示偶数,第三个是显示素数,第四个是显示在顶行用数字排列的乘法表,乘法结果下降。
我认为我有所有正确的方程式和循环,问题是我无法得到正确的输出。每当选择一个选项时,我只能得到一个数字。它在适当的范围内,但我需要显示范围内的所有数字。
这是我编码的内容(复选框4在开始时因为我现在无法将其从那个位置移动而不会弄乱程序,显然)。真的想弄清楚我错过了什么步骤。
public partial class Form1 : Form
{
private bool isPrime;
public Form1()
{
InitializeComponent();
}
private void checkBox4_CheckedChanged(object sender, EventArgs e)
{
int num1 = Convert.ToInt32(textBox1.Text);
int num2 = Convert.ToInt32(textBox2.Text);
for (int i = num1; i <= num2; i++)
{
for (int j = num1; j <= num2; j++)
{
int res = i * j;
textBox3.Text = res.ToString();
}
}
}
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
int num1 = Convert.ToInt32(textBox1.Text);
int num2 = Convert.ToInt32(textBox2.Text);
for (int i = num1; i <= num2; i++)
{
for (int j = num1; j <= num2; j++)
{
if (i != j && i % j == 0)
{
isPrime = false;
break;
}
}
if (isPrime)
{
textBox3.Text = i.ToString();
}
isPrime = true;
}
}
private void checkBox2_CheckedChanged(object sender, EventArgs e)
{
int num1 = Convert.ToInt32(textBox1.Text);
int num2 = Convert.ToInt32(textBox2.Text);
for(int i = num1; i <= num2; i++)
{
if (i % 2 == 0)
{
textBox3.Text = i.ToString();
}
}
}
private void checkBox3_CheckedChanged(object sender, EventArgs e)
{
int num1 = Convert.ToInt32(textBox1.Text);
int num2 = Convert.ToInt32(textBox2.Text);
for (int j = num1; j <= num2; j++)
{
if (j % 2 != 0)
{
textBox3.Text = j.ToString();
}
}
}
private void textBox3_TextChanged(object sender, EventArgs e)
{
}
}
答案 0 :(得分:0)
尝试将textBox3设置为多行
然后试试这个:
private void checkBox4_CheckedChanged(object sender, EventArgs e)
{
int num1 = Convert.ToInt32(textBox1.Text);
int num2 = Convert.ToInt32(textBox2.Text);
string result="";
for (int i = num1; i <= num2; i++)
{
for (int j = num1; j <= num2; j++)
{
int res = i * j;
result=string.format("{0}\n{1}",result,res.ToString());
}
}
textBox3.Text=result;
}
答案 1 :(得分:0)
private void checkBox4_CheckedChanged(object sender, EventArgs e)
{
int num1 = Convert.ToInt32(textBox1.Text);
int num2 = Convert.ToInt32(textBox2.Text);
for (int i = num1; i <= num2; i++)
{
for (int j = num1; j <= num2; j++)
{
int res = i * j;
textBox3.Text += res.ToString() + " ";
}
}
}