2012-11-16 123 views
-3

我正在嘗試爲課程做一個任務,並且在解決如何獲得婚姻狀態以進入數學公式時遇到一些麻煩。請記住我需要保持代碼簡單,並且必須使用if else語句,因爲這是我在課堂上的第三週。在此先感謝遇到了IF ELSE語句的問題

這裏是任務,所以你可以更好地看到我正在嘗試做什麼。

您將需要設計一個應用程序,以提示用戶支付他或她的小時工資,工作時間,以及他或她是單身,已婚,離異還是喪偶。然後它會計算用戶的總收入和淨收入。如果用戶工作時間超過40小時,加班時間按常規費用的1.5倍計算,並單獨顯示。如果用戶已婚,則使用15%的固定稅率。如果用戶是單一的,使用22%,如果離婚,使用23%,而如果喪偶,使用13%(我知道這些都不是很現實的)

這裏是我到目前爲止的代碼:

double hourlyRate; 
int hoursWorked; 
string marriageStatus; 
double Percent; 

Console.WriteLine("Enter your Pay Rate"); 
Convert.ToDouble(Console.ReadLine()); 

Console.WriteLine("Enter the hours you worked this week"); 
Convert.ToInt16(Console.ReadLine()); 

Console.WriteLine("Enter your Marital status: M for married, S for single, D for divorced and W for widow"); 

if (marriageStatus == M) 
    percent = .15 
+0

什麼是你的問題先生?你不覺得你需要將變量中的控制檯保存下來嗎? – gdoron

+0

你肯定會遇到編譯器錯誤。你應該發佈它們。 –

回答

1

您沒有根據用戶輸入設置marriageStatus變量。

所以,你需要:

marriageStatus = Console.ReadLine(); 

if(!String.IsNullOrEmpty(marriageStatus)) { 
marriageStatus = marriageStatus.ToUpper(); 
if (marriageStatus == "M") { 
    //do married stuff 
} else if (marriageStatus =="W") { 
    //do widowed stuff 
} else if (marriageStatus == "S") { 
    // do Single Stuff 
} else if (marriageStatus == "D") { 
    // do divorced stuff 
} else { 
    // invalid input - error handling 
} 
} 
0

幾個問題:

  1. 你從控制檯讀取 - 但不存儲任何地方輸入。你需要把你讀的東西放入一個變量中。
  2. 在您的if語句中,您將變量mariageStatus與變量M進行比較,但不存在M。你想在這裏使用的是將其與"M"這是完全不同的。
0

這將用戶輸入存儲到一個字符串

string input = Console.ReadLine(); 

那麼你可以去

if(input == "m" || input == "M") 
{ percentage = 0.15;} 
else if (input == "s" || input == "S") 
{ percentage = .50; } 
else if (input = "w" || input == "W") 
{percentage = .90; } 
else 
{ 
//there was an error 
percentage = 0.0; 
}