/BookShoppingCart

書店購物單

Primary LanguageC#

BookShoppingCart

書店購物單

需求內容

哈利波特一到五冊熱潮正席捲全球,世界各地的孩子都為之瘋狂。 出版社為了慶祝TDD課程招生順利,決定訂出極大的優惠,來回饋給為了小孩四處奔波買書的父母親們。 定價的方式如下:

  1. 一到五集的哈利波特,每一本都是賣100元
  2. 如果你從這個系列買了兩本不同的書,則會有5%的折扣
  3. 如果你買了三本不同的書,則會有10%的折扣
  4. 如果是四本不同的書,則會有20%的折扣
  5. 如果你一次買了整套一到五集,恭喜你將享有25%的折扣
  6. 需要留意的是,如果你買了四本書,其中三本不同,第四本則是重複的, 那麼那三本將享有10%的折扣,但重複的那一本,則仍須100元。 你的任務是,設計一個哈利波特的購物車,能提供最便宜的價格給這些爸爸媽媽。

作業要求

使用 GitHub

先寫測試案例,得到一個紅燈之後,commit,請不要寫第二個紅燈,而是先用最少、最簡單、最直覺的 code, 只針對這個紅燈變綠燈來完成需求,跟眼前紅燈無關的,一行 prod code 都不多寫。變綠燈之後 commit,接著檢視是否需要重構,若需要,重構之後 commit。

至少要有八個測試案例

第二個綠燈,應該最多只有一個 if,而且不會出現 0.95 或 0.05 以外的數字。

請盡可能地讓程式碼可讀性高一點

這個作業你不需要用到任何 interface

請謹慎思考命名