標題:
C# 7 608 航空包裏運費計算
[打印本頁]
作者:
may
時間:
2024-1-8 22:54
標題:
C# 7 608 航空包裏運費計算
TQC+ 物件導向程式語言
最新一次更新時間:2024-01-05 17:51:30
1. 題目說明:
請新增一個主控台應用程式,加入C:\ANS.CSF\CS06資料夾中的CSD06.cs進行編寫。依下列題意進行作答:建立可以計算航空包裏運費的類別,再計算所有包裏的總運費,使輸出值符合題意要求。檔案名稱請另存新檔為CSA06.cs,儲存於C:\ANS.CSF\CS06資料夾,再進行評分。
請使用正斜線(/)作為檔案路徑的分隔符號。
2. 設計說明:
專案已內含名為bag類別,類別內含receiptdate,freight、unitcost及weight變數,分別代表收件日期、運費、(每小時的)單位運費及重量。
請建立air類別繼承bag類別,內含deliveryhours變數,表示運送包裏的時數,再建立計算運費的computeFreight方法,公式為「單位運費(unitcost) × 運送時數(deliveryhours)」。
請於Main()中撰寫程式,讀取read.txt檔案,內含五筆貨物運送記錄,每一筆紀錄有三個欄位,分別是收件日期(月/日)、重量及運送時數,資料如:1/1,1.5,10。
讓使用者輸入一個正整數,代表單位運費,請將此單位運費代入公式,計算這五筆的運費後加總輸出。若輸入文字或非正整數,請輸出【error】。
3. 輸入輸出:
輸入說明
正整數
輸出說明
計算五筆總運費(輸出最後一行後不自動換行)
範例輸入1
10
範例輸出1
410
範例輸入2
-11
範例輸出2
error
4. 評分項目:
(1) 符合設計說明輸出正確格式 配分20
作者:
may
時間:
2024-1-9 09:54
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Threading;
namespace CSA06
{
class CSA06
{
static void Main(string[] args)
{
try
{
int c = Convert.ToInt32(Console.ReadLine());
if (c <= 0) { throw new Exception(); }
int total = 0;
using (StreamReader sr = new StreamReader(AppDomain.CurrentDomain.BaseDirectory + "/read.txt", Encoding.UTF8))
{
while (!sr.EndOfStream)
{
string line = sr.ReadLine();
string[] data = line.Split(',');
air a = new air(data[0].ToString(), Convert.ToInt32(data[2].ToString()), Convert.ToDouble(data[1].ToString()));
a.setcost(c);
a.setfreight();
total += a.freight;
}
}
Console.Write(total);
}
catch
{
Console.Write("error");
}
Console.ReadKey();
}
public class bag
{
public string receiptdate = "";
public int freight = 0;
public int unitcost = 0;
public double weight = 0.0;
}
public class air : bag
{
public int deliveryhours = 0;
public air(string rd,int h,double w)
{
this.receiptdate = rd;
this.deliveryhours = h;
this.weight = w;
}
public void setcost(int c)
{
this.unitcost = c;
}
public void setfreight()
{
this.freight = this.unitcost * deliveryhours;
}
}
}
}
複製代碼
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/)
Powered by Discuz! 7.2