196 views
<h4 class="" id="回到-Webduino-GPT 使用手冊"><a class="anchor hidden-xs" href="#回到-Webduino-GPT 使用手冊" title="回到-Webduino-GPT 使用手冊" smoothhashscroll=""><i class="fa fa-link"></i></a>回到 <a href="https://md.webduino.io/s/Fzh6vAPjY" target="_self" rel="noopener"><code>Webduino-GPT 使用手冊</code></a></h4> 線上點餐系統 === ## 題目 這是小明速食店的菜單: **菜單** 漢堡 60 元、薯條 40 元、可樂 20 元、柳橙汁 25 元。消費滿 200 元可折 10 元。 最近外送正夯,請幫小明設計一個訂餐系統,讓顧客線上查看菜單並點餐。顧客輸入「送出」後,系統會自動統計餐點數量和總金額。 ![](/uploads/upload_52f0542e21f66863f0d0056778bd4150.gif) ## 怎麼讓 AI 知道我想要什麼? ### 1. 拆解需求,釐清問題 首先,我們需要將問題分解成更小的子問題,以便更容易理解和解決。以下是我們可以考慮的子問題: * 讓電腦知道菜單內容並顯示菜單 * 接收顧客的點餐 * 判斷顧客有沒有輸入「送出」 * 統計餐點數量和總金額 * 根據總金額計算折扣 * 顯示餐點數量和最終金額 除了功能的正面描述,我們也可以思考有沒有題目沒有明白說出,但應該被處理的問題?例如: * 判斷顧客輸入的品項存不存在 * 判斷顧客輸入的數量是否為整數 ### 2. 比對經驗,找出相似 我們可以參考已經存在的訂餐系統的介面和功能,例如美食外送平台、網路訂餐系統等。觀察他們怎麼設計點餐的流程。 ### 3. 提取核心,化繁為簡 接著要找出訂餐系統的規則,並且去除不必要的細節。例如: * 設計系統時,可以先忽略美觀性,而專注於正確接收顧客的點餐資訊,以及正確計算折扣後的金額。 * 題目說顧客輸入「送出」後才統計總金額,也就是說這裡存在一個條件判斷,「如果輸入送出,則統計金額;否則允許顧客繼續輸入」。 * 同理,「消費滿 200 元可折 10 元」也是一個條件判斷,意思是「如果總金額大於或等於 200,則減 10 元;否則維持為金額」。 * 因為顧客在輸入「送出」前,都可以重複點餐,所以我們可以建立一個購物清單,每次顧客點了新的品項,就更新清單的內容。最後只要結算購物清單的品項和數量,就能得到總金額的數字。 ### 4. 精準表達,轉譯需求 最後,我們需要將需求翻譯成 AI 比較好理解的語言,以下是其中一種表達方式: :::info #### **我們可以告訴 ChatGPT 這樣做** - 菜單:漢堡 60 元、薯條 40 元、可樂 20 元、柳橙汁 25 元。 - 創建一個空的購物清單 - 顯示菜單給顧客參考 - 當顧客輸入餐點和數量時,將其添加到購物清單 - 如果輸入的餐點不存在或不符合格式,請顧客重新輸入 - 當顧客輸入[送出]時,計算購物車中的餐點數量和總金額 - 如果總金額大於或等於 200,折扣 10 元 - 顯示餐點數量和總金額給顧客 ::: ### [使用範例 >>](https://chat.webduino.io/test/index.html?prompt=%E8%8F%9C%E5%96%AE%EF%BC%9A%E6%BC%A2%E5%A0%A1%2060%20%E5%85%83%E3%80%81%E8%96%AF%E6%A2%9D%2040%20%E5%85%83%E3%80%81%E5%8F%AF%E6%A8%82%2020%20%E5%85%83%E3%80%81%E6%9F%B3%E6%A9%99%E6%B1%81%2025%20%E5%85%83%E3%80%82%0A%E5%89%B5%E5%BB%BA%E4%B8%80%E5%80%8B%E7%A9%BA%E7%9A%84%E8%B3%BC%E7%89%A9%E6%B8%85%E5%96%AE%0A%E9%A1%AF%E7%A4%BA%E8%8F%9C%E5%96%AE%E7%B5%A6%E9%A1%A7%E5%AE%A2%E5%8F%83%E8%80%83%0A%E7%95%B6%E9%A1%A7%E5%AE%A2%E8%BC%B8%E5%85%A5%E9%A4%90%E9%BB%9E%E5%92%8C%E6%95%B8%E9%87%8F%E6%99%82%EF%BC%8C%E5%B0%87%E5%85%B6%E6%B7%BB%E5%8A%A0%E5%88%B0%E8%B3%BC%E7%89%A9%E6%B8%85%E5%96%AE%0A%E5%A6%82%E6%9E%9C%E8%BC%B8%E5%85%A5%E7%9A%84%E9%A4%90%E9%BB%9E%E4%B8%8D%E5%AD%98%E5%9C%A8%E6%88%96%E4%B8%8D%E7%AC%A6%E5%90%88%E6%A0%BC%E5%BC%8F%EF%BC%8C%E8%AB%8B%E9%A1%A7%E5%AE%A2%E9%87%8D%E6%96%B0%E8%BC%B8%E5%85%A5%0A%E7%95%B6%E9%A1%A7%E5%AE%A2%E8%BC%B8%E5%85%A5%5B%E9%80%81%E5%87%BA%5D%E6%99%82%EF%BC%8C%E8%A8%88%E7%AE%97%E8%B3%BC%E7%89%A9%E8%BB%8A%E4%B8%AD%E7%9A%84%E9%A4%90%E9%BB%9E%E6%95%B8%E9%87%8F%E5%92%8C%E7%B8%BD%E9%87%91%E9%A1%8D%0A%E5%A6%82%E6%9E%9C%E7%B8%BD%E9%87%91%E9%A1%8D%E5%A4%A7%E6%96%BC%E6%88%96%E7%AD%89%E6%96%BC%20200%EF%BC%8C%E6%8A%98%E6%89%A3%2010%20%E5%85%83%0A%E9%A1%AF%E7%A4%BA%E9%A4%90%E9%BB%9E%E6%95%B8%E9%87%8F%E5%92%8C%E7%B8%BD%E9%87%91%E9%A1%8D%E7%B5%A6%E9%A1%A7%E5%AE%A2&actor=python) 產生程式碼後,點擊畫面右上方的「執行」,就能開始點餐囉! ![](/uploads/upload_52f0542e21f66863f0d0056778bd4150.gif) ## 延伸思考 1. 如果想要累積折扣金額,滿 200 折 10 元,滿 400 折 20 元,可以怎麼調整提問?