---
# System prepended metadata

title: AC Case Study

---

# AC Case Study

這個是洪立璿的作業

## Case Exercise 1

### 學生小明

#### Rank
> Good

#### Review

做得很好，但是似乎有些可以多想想的地方：

**參數輸入部分**
- 可是似乎只能擋一次，第二次超過就失敗了，可以**想想用迴圈來想怎麼多次詢問**
- 假如我輸入非數字的話，好像會出錯，是不是可以**用什麼方式先檢查是否為數字呢**？

**判斷邏輯部分**
- 有考慮到不要讓電腦猜超過 51 次很好，但是有沒有可能 51 次都猜不到呢？既然數字範圍從 1~100 是不是最多猜 100 次一定會猜到呢？
- 題目有說電腦可以猜到飽，可以從兩個方面想想
    - 設計一個演算法，最後一定會猜到，例如從 1 算到 100，總會有算到的一天吧
    - 如果真的怕因為自己哪邊寫錯造成無窮迴圈爆掉，你的迴圈限制可以再開大一點。例如上面的做法就是最多 100 次，那到達 101 次可能就是有問題發生了。

**其他**
- **縮排很重要!!** **縮排很重要!!** **縮排很重要!!** 這可能是你有沒辦法 get offer 的最大原因，請在心中默念十次，常保平安。

### 學生小華

#### Rank
> Excellent

#### Review
你做得很好，變數命名、縮排以及 `do while` 的使用都非常適切！

**參數輸入**
- 有考慮到循環輸入到合理的數字不錯，但假如我輸入非數字好像會壞掉，可以**想想有什麼辦法先檢查輸入是不是數字呢**？

**判斷邏輯部分**
- 很好，有想辦法讓每次猜的數字都在合理的範圍內！

## Case Exercise 2

### 作業一

批改指標
- **Try Harder**
    - [ ] 破版或無法正確讀取 css style file
    - [ ] 無法撰寫合法的 CSS 語法
    - [ ] 沒辦法以樹狀結構規劃 html tag，並將內容放置在對應的區塊內
- **Good**
    - 符合題目規定的各個區塊大小、間距
    - 正確的使用 box model 
        - [ ] 可以正確的設定寬高
        - [ ] 有沒有設定 box-sizing 並且會使用 pading / margin
    - 正確的使用 position 屬性
        - [ ] 在 header 的區塊正確的使用 `fix`
        - [ ] 在排版中使用 absolute，並且有正確的依據父層設定相對位置
    - 是否能正確的操作 float
        - [ ]能使用 float 正確的排版，並且注意是否有 `clearfix`
- **Excellent**
    - 考慮是否正確的使用 html tag
        - [ ] 有沒有在正確的地方使用適當的 html tag，例如`<header>` `<section>` `<h1>` 等等的，而不是只使用 div 搭配 css 來排版
    - 優化 css
        - [ ] 結構性地將共用屬性寫在 body 或 html 上
        - [ ] 能在 UI 上更近一步的優化，例如使用 hover 搭配樣式變化，或者使用 `transition` 做轉場的優化
        
        

### 作業二
- **Try Harder**
    - 無法執行 test suite
        - [ ] test file 沒放在正確的位置，或無法載入待側的程式碼
- **Good**
    - 能正確的執行測試（全為綠燈）
    - 是否有測到該側的項目
        - [ ] 有沒有測到 3 的倍數
        - [ ] 有沒有測到 5 的倍數
        - [ ] 有沒有測到同為 3 和五的倍數 
- **Excellent**
    - 撰寫清楚的測試案例
        - [ ] 能在測試案例中看得出 fizzbuzz 的定義(spec)
        - [ ] 在 `it` 中有清楚的描述測試項目
    - 有測試到 edge case
        - [ ] 例如非數字的案例
        