2016-10-10 9 views
1

プロジェクトで作業していて、ほとんどの骨が動いていると思います。問題は、私が出力を得ることができる間に、それは完全な出力ではないということです。GUIプログラムで複数の数値を出力する - C#

基本的には、2つのテキストボックスを持つGUIを作成し、ユーザーが1〜50の数字を入力できるようにします(最小の場合はnum1、最大の場合はnum2)。第1のボックスは素数を示し、第2は偶数を示し、第3はショー素数を示し、そして、第4図は一番上に数字が配置された乗算テーブルを示し、下降する乗算結果を示す。

私はすべての正しい方程式とループを持っていると思いますが、問題は正しい出力を得ることができないことです。私は、オプションが選択されるたびに1つの番号しか得ることができません。適切な範囲内ですが、範囲内のすべての数値が表示される必要があります。

ここにコード化されているものがあります(チェックボックス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
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() + " "; 
     } 

    } 
} 
+1

を。 – Berkay

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; 
} 
関連する問題