2017-04-09 24 views
-2

我需要添加一個最大費用,並對如何做到這一點感到困惑,我添加了 常量十進制MAX_FEE = 20.00M;對代碼和嘗試了一些不同的方式,但他們沒有工作,比如IFS和else如果:(幫助請添加最大費用c#

static void Main(string[] args) 
    { 
     int[] hours = new int[31]; 
     const decimal HOURLY_RATE = 2.5M; 
     const decimal MAX_FEE = 20.00M; 
     decimal pay; 
     int counter = 0; 
     string line; 
     StreamReader fileSR = new StreamReader("hours.txt"); 
     line = fileSR.ReadLine(); 
     while (line != null) 
     { 
      hours[counter] = int.Parse(line); 
      counter = counter + 1; 
      line = fileSR.ReadLine(); 
     } 
     fileSR.Close(); 
     Console.WriteLine("hours  pay"); 
     for (int i = 0; i < hours.Length; i++) 
     { 
      pay = hours[i] * HOURLY_RATE; 
      Console.WriteLine("{0,4} {1,10}", hours[i], pay.ToString("C")); 
     } 
     Console.ReadKey(); 




    } 
} 

}

程序需要顯示在工資列中的20 $,如果它是10小時以上

+0

在while循環會發生什麼,如果你的文件有30個多行 –

+0

對不起我的壞,錯字文件是30?升它應該是31,它在列表底部顯示一個零,我也在努力計算它的平均值 – Simbeazy

+0

沒關係。我試圖得到的是假設文件總是有'x'行數:'int [31]'是不好的。如果你的文件有50行,你會得到一個異常。而不是數組,使用'List '。 –

回答

0

如果我理解正確的,你需要不超過20:

pay = Math.Min(hours[i] * HOURLY_RATE, MAX_FEE); 
+0

好吧修好了,現在感謝兄弟,祝我好運找到平均每天都有麻煩,謝謝你們:) – Simbeazy