2016-05-02 15 views
-2

この部分では、ウエストが60より小さく、高さが120より大きい場合、結果ボックスが表示されます。しかし、ウエストが60より大きく、高さが120よりも小さい場合、結果は表示されません。最初の状況をどのようにブロックするかは、結果が表示されることになります。まだ私に結果が表示されている

  if (this.Male.Checked) { 
      if (waist < 60) { 
       MessageBox.Show("Your waist is too low to calculate, please enter a higer numer"); 
      } 

      if (height < 120) { 
       MessageBox.Show("Your height is too low to calculate, please enter a higer numer"); 
      } 
      else{ 

       if (ratio < Male_Risk) { 
        MessageBox.Show("Your ratio is: " + ratio + "\n" + "your raito is at low risk, please be careful"); 

       } 
       else { 
        MessageBox.Show("Your ratio is: " + ratio + "\n" + "Warning : your raito is at high risk, please save yourself!"); 

       } 

      } 
     } 
+0

2つのiを結ぶ「else」ステートメントがないため彼らは独立して働くべきです。もっと説明してアプリケーションをデバッグしようとしてください。 –

+0

if(height <120) –

+0

しかし、私の2つの値が両方とも制限よりも低いと、それは1つのメッセージしか表示しません。ウエストが低い – Donald

答えて

1

ifウエストと身長をチェックする声明はリンクされていません。したがって、患者のウエストが60より大きいが、身長が120未満の場合、2番目のif文が上記のif文とリンクされていないため、結果は表示されません。それを超える120

イスト高さがちょうどこのようelse if(height < 120)

if(height < 120)を変更した場合、他の部分のみが示されることを意味します。

if (this.Male.Checked) 
{ 
    if (waist < 60) 
    { 
     MessageBox.Show("Your waist is too low to calculate, please enter a higer numer"); 
    } 

    else if (height < 120) 
    { 
     MessageBox.Show("Your height is too low to calculate, please enter a higer numer"); 
    } 
    else 
    { 
     if (ratio < Male_Risk) 
     { 
      MessageBox.Show("Your ratio is: " + ratio + "\n" + "your raito is at low risk, please be careful"); 
     } 
     else 
     { 
      MessageBox.Show("Your ratio is: " + ratio + "\n" + "Warning : your raito is at high risk, please save yourself!"); 
     } 
    } 
} 

あなたは両方のMessageBox年代を表示したい場合は、ウエストと身長チェックを次のように区切ってifに入れておく必要があります。

if(waist < 60 || height < 120) 
{ 
    if (waist < 60) 
    { 
     MessageBox.Show("Your waist is too low to calculate, please enter a higer numer"); 
    } 
    if (height < 120) 
    { 
     MessageBox.Show("Your height is too low to calculate, please enter a higer numer"); 
    } 
} 
else 
{ 
    // Put your ratio results here... 
} 
+0

両方の値が限られている場合、1つのメッセージボックスしか表示されません。 – Donald

+0

もちろんあります。今、彼らは一緒につながっているからです。両方のメッセージボックスを表示したい場合は、私の答えが – brothers28

+0

に更新されるのを待ちます。 – Donald

関連する問題