2013-10-09 2 views
0

피자를 주문할 프로그램을 만드는 임무가 있습니다. 필자는 크기 (6 $, X-Large $ 12)와 토핑 수 (1, 2, 3, 4)를위한 네 개의 라디오 버튼을 선택할 수있는 두 개의 라디오 버튼을 사용자에게 제공했습니다. 세금 포함 비용 (C = 1.13 (0.75 (x-1) +1) + S, x는 토핑이고 S는 크기 임)을 계산하는 등식을 생각해 냈습니다.C# 수학 식에서 할당되지 않은 변수 사용

내 문제는 일단 방정식을 코딩하려고하면 할당되지 않은 변수 사용 numbToppings 및 두 번째 마지막 줄의 크기에 오류가 있다는 것입니다.

왜 이런 일이 일어나고 있으며 어떻게 수정해야하는지에 대한 아이디어.

 const double taxes = 1.13; 
     const double toppings = 0.75; 
     double size; 
     double numToppings; 
     double costInitial; 
     double costTotal; 

     if (radLarge.Checked == true) 
     { 
      size = 6; 
     } 

     else if (radXLarge.Checked == true) 
     { 
      size = 12; 
     } 

     if (rad1.Checked == true) 
     { 
      numToppings = 1; 
     } 

     else if (rad2.Checked == true) 
     { 
      numToppings = 2; 
     } 

     else if (rad3.Checked == true) 
     { 
      numToppings = 3; 
     } 

     else if (rad4.Checked == true) 
     { 
      numToppings = 4; 
     } 

     costInitial = ((toppings * numToppings - 1) + 1) + size; 
     costTotal = taxes * costInitial; 

답변

0

간단한 0으로이

double numToppings = 0; 

설정 해.

이유 : numToppings에 대한 일부 계산을 수행하고 있으며 컴파일러가 가능한 모든 조건을 처리했는지 확인하기에 지능형이 아니며 numToppings이 초기화됩니다.

자세한 내용은 Strange behaviour of switch case with boolean value을 참조하십시오.

관련 문제