111年中學生線上程式解題暨Python研習


111年中學生線上程式解題暨Python研習實施計畫

一、依 據:高雄市110至111年數位學習推動計畫。 二、目 的:加強輔導中等學校程式教育發展,提高中學生對資訊問題研究興趣,激發其思考與創造能力,強化運算思維和程式邏輯能力,藉以鼓勵學生間與校際間互相觀摩,擴大學習領域及數位科技環境視野,並兼顧教育與競賽功能,提升資訊教育品質。 三、主辦單位:高雄市政府教育局。 四、承辦單位:高雄市佛光山普門中學。 五、參加對象:本市公私立國民中學、完全中學、高級中學、高級職業學校、綜合高中(學術學程)及國立高雄師範大學附屬高級中學、國立中山大學附屬國光高中各年級學生(歡迎全國各國高中學校鼓勵學生參加)。 六、參加方式:參賽的成員都必須(申請帳號)登入”飆程式網”,每人以在”飆程式網”解題題數得分總和評定成績高低。
七、獎勵方式如下:
第一名:1名,每名禮券1,500元,獎狀1紙。
第二名:2名,每名禮券1,000元,獎狀1紙。
第三名:3名,每名禮券800元,獎狀1紙。
佳 作:取報名人數至多四分之一,獎狀1紙。
優勝學生及指導教師1位,由主辦單位(高雄市政府教育局)頒發獎狀;指導老師之敘獎由各校依據「高雄市立各級學校及幼兒園教職員工獎懲標準補充規定」辦理,另,外縣市優勝學生僅頒發獎狀,且不佔本市優勝學生名額。
八、報名日期: 即日起至活動報名網站(https://forms.gle/1ppTQnK1z6vexfim8) 採線上報名,即日起到111年9月1日(星期四)下午5時前,完成線上報名。 九、線上解題活動: 1、公布題目:111年8月1日在”飆程式網”網站(https://tinyurl.com/111-KH-code-com)。 2、繳題(繳交)時間:111年8月1日至9月30日。 3、公布成績:111年10月20日。
2
十、飆程式網解題操作說明(影音) 1、http://kh-coding.blogspot.tw/2015/12/blog-post.html 2、https://www.facebook.com/groups/khcode/permalink/415711532110279/ 十一、相關網址: 1、飆程式網網址:https://tinyurl.com/111-KH-code-com 2、程式邏輯發展(VB程式範例)網頁: http://kh-coding.blogspot.tw/2015/12/vb.html 3、本計畫官網:http://kh-coding.blogspot.tw/ 4、FB訊息交流網址:https://www.facebook.com/groups/khcode/ 5、FB群組:https://www.facebook.com/groups/khcode/
十二、若有疑問請洽詢普門中學圖書館南鳳瑋主任,電話:(07)656-2676分機216。
十三、經費預算:由教育部110至111年數位學習推動計畫-5G新科技學習示範學校計畫相關經費項下支應。
3
背景說明:

  1. 本計畫於 105、106、107、108 年均有辦理 http://kh-coding.blogspot.com/2019/03/108-10811531.html
  2. 本項比賽使用本局於104年發展之”飆程式網和“Zerojudge”全國率先辦理線上自動評閱比賽,唯一大創局,此一站台可以評閱: Python、C/C++、Java”VB 程式語言,於民國100年開發完成做為比賽專用。 網址:https://tinyurl.com/111-KH-code-com
    4
    Python程式設計課程表
    01.前言
    02.Python 程式發展工具
    03.Python程式執行的方式
    1.1 Python 的特色和優點
    1.2 運算思維的發展
    1.2.1 運算思維
    1.2.2 程式邏輯
    1.3 APCS 檢測
    1.4 本書閱讀建議
    2.1 Python 線上解譯器
    2.2 Python 離線編輯器(IDLE)
    2.2.1 互動式
    2.2.2 腳本式
    2.3 Jupyter 線上解譯器
    2.3.1 安裝 Jupyter 離線編輯器
    2.3.2 JDoodle 線上解譯器
    3.1 互動對談式
    3.1.1. 第一次接觸互動對談式
    3.1.2. 指令熟悉度練習
    3.2 腳本式 – 整合開發環境 (IDLE)
    3.2.1 程式執行
    3.2.2 第一個 Python 程式
    3.2.3 程式熟悉度練習
    04.認識Python基本語法
    05.資料型態
    06.運算
    4.1 輸出入指令
    4.1.1 print 輸出指令
    4.1.2 跳脫字元 ( Escape)
    4.1.3 格式化輸出及%用法
    4.2 Python 程式內涵淺介
    4.2.1 數
    4.2.2 字
    4.2.3 邏輯
    4.2.4 運算
    4.2.5 運算的種類
    4.2.6 指令
    4.2.7 資料型別
    4.2.8 函數
    4.3 語法規則
    4.3.1 程式編寫環境
    4.3.2 語法規則
    5.1 數值型態(Numeric type) 5.2 字串類別(String class) 5.3 布林類別 (Boolean class) 5.4 日期型態 (Date/Time type)
    6.1 算術運算子
    6.2 字串運算子
    6.3 比較運算子
    6.4 邏輯運算
    6.5 位元運算子
    6.6 其它運算的意義
    5
    07.指令
    08.函數
    09.初學五題
    7.1 設定/運算
    7.1.1.設定數值
    7.1.2.交換數值
    7.2 判斷/決策
    7.3 迴圈/重複
    7.3.1 For 迴圈
    7.3.2 while 迴圈指令
    7.3.3 break 敘述使用時機
    7.3.4 continue 敘述使用時機
    8.1 內定函數
    8.2 自訂函數
    8.3 外部函數(套件、模組)
    8.4 程序
    8.5 區域變數和全域變數
    9.1 九九乘法表
    9.2 費氏數列
    9.3 猜數字遊戲
    9.4 最大公因數 (GCD)
    9.5 數制轉換(十進制轉二進制、八進制、十六進制)
    10.陣列-容器類型資料
    11.列印文字圖形程式練習
    12.程式邏輯發展練習
    10.1 串列 (List)
    10.1.1 串列宣告
    10.1.2 空串列
    10.1.3 一維串列
    10.1.4 二維串列
    10.1.5 串列搜尋 index()
    10.1.6 串列計算 count()
    10.1.7 插入串列元素要用insert() 指令
    10.1.8 移除元素 remove()
    10.1.9 串列排序
    10.1.10 串列反轉排序
    10.2 元組 (Tuple)
    10.3 字典 (Dictionary)
    10.4 集合 (Set)
    11.1 題目總覽
    11.2 題解程式
    12.1語言熟悉題型:第一次接觸 Python
    12.2基本題型: 運用語言指令發展程式邏輯
    12.3入門題型: 剛開始學習程式語言會碰到的思考問題 12.4 進階題型: 必須用到簡單演算法解題
    12.5特殊題型: Python 語言特殊應用指令
    6
    13.演算法
    14.APCS 試題分析
    附錄
    13.1 運算 – 七進制加法運算
    13.2 串列 – 巴斯卡三角形
    13.3 陣列 – 魔方陣(二維陣列)
    13.4 級數 – 計算圓周率
    13.5 暴力法 –文字排列
    13.6 堆疊、佇列 – 模擬 Stack 和 Queue
    13.7 排列 – 文字的排列組合
    13.8 排列組合 – 1-9 不重複找 6666
    13.9 排序 – 氣泡排序
    13.10 遞迴 – 河內塔
    13.11 函數 – 五角形面積
    13.12 動態規劃 – 背包問題
    13.13 二元樹 – 四則運算
    13.14 圖論 – 最短路徑
    14.1 概念9題
    14.2 實作題
    附錄一:習題解答
    附錄二:ASCII 字元 字碼 對照表
    附錄三:內建函數列表
    附錄四:整理 Python 的內建函數功能
    附錄五:在解題系統使用 Python 解題讀入測試資料
    附錄六:Python 禪念