問題解決與流程圖 高慧君 台北市立南港高中 2006年12月22日.

Slides:



Advertisements
Similar presentations
輔導處八月份主管會報 報告人 : 洪自強. 輔導組本月工作 【行政文書】 建置 100 學年度工作資料夾 擬訂 100 學年度第一學期行事曆 【認輔工作】 匯整 100 學年度續接個案資料 輔導教師持續關心責任班級高關懷個案 統整國小轉銜個案資料 (3 位 ) 【通報案件】 通報性騷擾案件 1 件.
Advertisements

第二节 交通运输布局变化的影响 北京市第十一中学 张芊丽 2008年1月.
3.2 农业区位因素与农业地域类型.
第五十章 旅外华人现代汉语文学 回目录.
区位因素分析专题.
文题: (1)请以“从此,我(他/她)不再________”为题,写一篇不少于600字的记叙文。 (2)以“做人从_____开始” 为题,写一篇不少于600字的文章。 (3)请以“你还会____吗”为题写一篇600字以上的文章,文体不限,诗歌除外。
第八章   股利分配 本章主要介绍了影响股利政策的因素、主要的股利政策、股利支付的程序及方式、 股票分割及股票回购等问题。通过本章的学习,要求掌握不同股利政策的具体做法,掌握股票股利的作用,了解股票分割和股票回购的涵义及影响。
导入新课 俄罗斯首任总统叶利钦.
1Z 会计基础与财务管理 1Z 会计的职能与核算方法 …2011 会计的职能(熟悉) 一、会计的概念
2011年10月31日是一个令人警醒的日子,世界在10月31日迎来第70亿人口。当日凌晨,成为象征性的全球第70亿名成员之一的婴儿在菲律宾降生。 ?
第4章 條件判斷與迴圈 Java 2 程式設計入門與應用.
国王赏麦的故事.
初级会计实务 第八章 产品成本核算 主讲人:杨菠.
2011年高考复习数学考纲分析 克拉玛依市高级中学 冯祥杰.
第10章 注册会计师职业规范体系 2学时 《审计学》武汉理工大学2013.
Access数据库程序设计 总复习.
中考阅读 复习备考交流 西安铁一中分校 向连吾.
交通事故處置 當事人責任與損害賠償 屏東縣政府警察局交通隊.
第四章 借贷记账法 在制造业中的应用.
我国的宗教政策 第七课第三框.
中央广播电视大学开放教育 成本会计(补修)期末复习
人教版义务教育课程标准实验教科书 小学数学四年级上册第七单元《数学广角》 合理安排时间 248.
上課囉 職場甘苦談 小資男孩向錢衝 育碁數位科技 呂宗益/副理.
致亲爱的同学们 天空的幸福是穿一身蓝 森林的幸福是披一身绿 阳光的幸福是如钻石般耀眼 老师的幸福是因为认识了你们 愿你们努力进取,永不言败.
你 今 天 累 吗 ? 坪山高级中学心理教师 张婧乔.
第十二单元 第28讲 第28讲 古代中国的科技和文艺   知识诠释  思维发散.
中考语文积累 永宁县教研室 步正军 2015.9.
空間向量 朱泰吉 蔡宇翔 張力夫 莊孟霏.
小学数学知识讲座 应用题.
倒装句之其他句式.
高中算法与程 序设计 教学建议 ---循环结构部分
三、课后练习1: p.24练习第一题程序 程序: INPUT “F= ”;F C=(F-32)*5/9 PRINT “C= ”;C END
高点定位 精准发力 扎实推进优质均衡再上新台阶 ——全县初中教学工作会议讲话
第 22 课 孙中山的民主追求 1 .近代变法救国主张的失败教训: “师夷之长技以制 夷”“中体西用”、兴办洋务、变法维新等的失败,使孙中山
陳維魁 博士 儒林圖書公司 第七章 參數的傳遞 陳維魁 博士 儒林圖書公司.
MIS原理与应用 第七讲 系统需求分析之 逻辑模型
第4章 程序控制结构与算法基础.
新觀念的 VB6 教本 第七章 讓程式轉彎的控制敘述.
数学3(必修)—— 算 法 ALGORITHM 苏州大学数学科学学院 徐稼红
流程控制、陣列 台南市聖功女子高級中學 毛全良.
6-1 For…Next迴圈敘述 6-2 While…End While迴圈敘述 6-3 Do…Loop迴圈敘述 6-4 巢狀迴圈敘述
丙級電腦軟設-VB程式設計 資料來源:林文恭研究室 整理:張福生.
第5章 Visual Basic控制结构 之 常用算法举例
電腦解題─流程圖簡介 臺北市立大同高中 蔡志敏老師.
計數式重複敘述 for 迴圈 P
VB程序设计语言 主讲教师:王 杨.
VB程序设计语言 主讲教师:王 杨.
陳維魁 博士 儒林圖書公司 第五章 控制結構 陳維魁 博士 儒林圖書公司.
排列组合 1. 两个基本原理 分类加法计数原理 分步乘法计数原理.
最大公约数 ——解题报告 作者:宋含章 七(12)班 1.
For x = 0 To 9 For y = 0 To 9 z = *x + 10*y …… Next y
江西财经大学信息管理学院 《数据库应用》课程组2007
小结 郭清溥.
现代信息技术 微电子技术 计算机技术 传感技术 通信技术 处理、存储信息的技术 传感、采集技术 传递信息的技术
第三节 常见天气系统.
第一章 程序设计和C语言 主讲人:高晓娟 计算机学院.
第二章、第三章错题分析.
第2章 算法与C语言程序 程序 (1)数据的描述:数据的类型和组织形式(数据结构) (2)操作的描述:操作步骤(算法) 沃思指出:
本节内容 Lua基本语法.
1、过程概述 2、函数过程 3、子过程 4、过程的使用 5、传递参数 6、过程的嵌套
遞迴 Recursion.
數學遊戲二 大象轉彎.
美丽的旋转.
顺序查找与二分查找复习.
畢氏定理(百牛大祭)的故事 張美玲 製作 資料來源:探索數學的故事(凡異出版社).
1.2.3 循环语句.
解题报告 七(5)班 严崟杰 03:20.
102年人事預算編列說明 邁向頂尖大學辦公室製作.
Presentation transcript:

問題解決與流程圖 高慧君 台北市立南港高中 2006年12月22日

什麼是演算法 解決問題的方法就是演算法 簡單的問題,我們可以憑直覺就解決 例如:兩個數字相加 對於熟悉算術的人來說,根本不是問題。 十進位相加:126 + 56 = 182 但對沒有學過數字及加法運算的人,就是一個問題。 二進位相加:10012 + 11102 =

什麼是流程圖 演算法的表達 標準流程圖 為了清晰地表達演算法,可以將解決問題的過程整理成流程圖。 美國國家標準學會(ANSI)於1970年制定標準的流程圖符號,以利於流通與閱讀流程圖。

常用的流程圖符號 符號 意義 說明 開始/結束 流程圖的開始或結束位置。 處理 進行一項處理工作。 流程線 表示流程進行的方向。 輸入/輸出 進行資料的輸入或輸出工作。 決策 依條件比較結果進行不同的處理。 迴圈 表示迴圈變數初值與終值的描述 連接 連接點 副程式 表示一群程序步驟的組合。

基本邏輯結構 在解決問題的過程中,可以使用三種基本邏輯結構 (1) 循序結構: (2) 選擇結構: (3) 重複結構: 在解題過程中,有些步驟是具有順序性的。 (2) 選擇結構: 能演繹出不同的方式,依決策擇一進行解題。 (3) 重複結構: 能歸納出重複的部份,依次數或決策重複執行某些步驟。

循序結構 例題: 虛擬碼 敘述1 敘述 1 敘述 2 敘述 3 敘述2 敘述3

選擇結構 單向選擇結構 虛擬碼 條件不成立 條件判斷 If (條件判斷) then 敘述 End if 條件成立 敘述

選擇結構 雙向選擇結構 If (條件判斷) then 敘述 1 Else 敘述 2 End if 虛擬碼 條件判斷 敘述1 敘述2 條件不成立 條件判斷 If (條件判斷) then 敘述 1 Else 敘述 2 End if 條件成立 敘述1 敘述2

重覆結構 條件式:先行後測 虛擬碼 Do 敘述 Loop While (條件判斷) 敘述 條件判斷 條件成立 條件不成立

重覆結構 條件式:先測後行 虛擬碼 條件不成立 條件判斷 Do While (條件判斷) 敘述 Loop 條件成立 敘述

重覆結構 計次式 虛擬碼 次數判斷 For 迴圈變數 = 初值 to 終值 敘述 Next 敘述

重覆結構 遞迴式 Function (參數) If (終止條件判斷) 基本狀況 Else 遞迴步驟 End If End Function 開始 虛擬碼 Function (參數) If (終止條件判斷) 基本狀況 Else 遞迴步驟 End If End Function 條件成立 終止條件 條件不成立 基本狀況 遞迴步驟 結束

解題練習 (1) 循序結構 【類型】求平均值 【問題】求國、英、數三科成績的平均值 〔分析〕輸入:三科成績A, B, C 輸出:平均值

解題練習 (1) 解答 開始 結束 輸入A、B、C值 平均值=(A+B+C) / 3 輸出平均值

解題練習 (2) 循序結構 【類型】單位換算 【問題】將攝氏溫度轉為華氏溫度 〔分析〕輸入:攝氏溫度 處理:華氏溫度= (攝氏溫度+32 ) * (9/5 ) 輸出:華氏溫度

解題練習 (2) 解答 開始 結束 輸入攝氏溫度 華氏溫度=(攝氏溫度 + 32 ) * ( 9 / 5 ) 輸出華氏溫度

解題練習 (3) 選擇結構 【類型】判斷成績是否及格 【問題】輸入成績換算為成績,並判斷是否及格。 作業(40%)、測驗(40%)、平時表現(20%) 〔分析〕輸入:作業成績、測驗成績、平時表現成績 處理:學期=作業*0.4 +測驗*0.4 +平時表現* 0.2 判斷:學期≧60 則及格,學期<60 則不及格 輸出:學期成績是否及格

解題練習 (3) 解答 開始 計算學期成績 輸出成績 結束 輸入成績 學期成績< 60 條件成立 條件不成立 輸出不及格 輸出及格

解題練習 (4) 重覆結構 【類型】累加數字 【問題】計算1+2+3+…+10的值 〔分析〕輸入:無 處理:累加下一項 輸出:總和

解題練習 (4) 解答 開始 結束 輸出Sum Sum = 0 For i = 1 to 10 Sum = Sum + i

解題練習 (4) 解答(遞迴) N + S(9) Return 0 條件不成立 條件成立 開始 N = 0 結束 N = 10

解題練習 (5) 重覆結構 【類型】累加數字 【問題】計算1+2+…+N的值 〔分析〕輸入:無 處理:累加下一項 輸出:總和

解題練習 (5) 開始 結束 輸出Sum Sum = 0 For i = 1 to N Sum = Sum + i 輸入N 解答

解題練習 (5) 解答(遞迴) N + S(N-1) Return 0 條件不成立 條件成立 開始 N = 0 結束 N

解題練習 (6) 重覆結構 【類型】階乘數字 N! 【問題】計算 1*2*…*N 的值 〔分析〕輸入:N 處理:累乘下一項 輸出:總乘積

解題練習 (6) 開始 結束 輸出Mul Mul = 1 For i = 1 to N Mul = Mul * i 輸入N 解答

解題練習 (6) 解答(遞迴) N * M(N-1) Return 1 條件不成立 條件成立 開始 N = 0 結束 N S(N-1)

解題練習 (7) 重覆結構 【類型】銀行利率 【問題】本金1000元,年利率7%,複利,求10年後的資產。 〔分析〕輸入:無 處理:1年後 a 1 = 1000 * 1.07    2年後 a 2 = 1000 * (1.07)2    10年後 a 10 = 1000 * (1.07)10 輸出:a10

解題練習 (7) 解答 開始 結束 輸出 M M = 1000 For i = 1 to 10 M = M *1.07

解題練習 (7) 解答(遞迴) A(9) * 1.07 Return 1000 條件不成立 條件成立 開始 N = 0 結束 N=10

解題練習 (8) 重覆結構 【類型】銀行利率 【問題】本金 1000元,年利率7%,複利,求幾年後資產將增加一倍。 〔分析〕輸入:無 處理: 1年後 a 1 = 1000 * 1.07     2年後 a 2 = 1000 * (1.07)2     N年後 a N = 1000 * (1.07)N 輸出:a N

解題練習 (8) 解答 開始 M = 1000 N = 0 N = N + 1 條件不成立 M = M * 1.07 M > 2000 結束 輸出N M = 1000 N = N + 1 N = 0 M > 2000 M = M * 1.07 條件不成立 條件成立

解題練習 (9) 重覆結構 【類型】股票投資 【問題】本金10000元,A股票每天都漲停7%,若固定每個營業日將資金的 50%繼續投資A股票,問經過10個營業日後的資金有多少錢? 〔分析〕輸入:無 處理:a0 = 10000   1天後資金 a 1 = a0 * 0.5 * 1.07 + a0 * 0.5   2天後資金 a 2 = a1 * 0.5 * 1.07 + a1 * 0.5   N天後資金 a n = a n-1 * 0.5 * 1.07 + a n-1 * 0.5 輸出:a 10

解題練習 (9) 開始 結束 輸出M M = 10000 For i = 1 to 10 M = M*0.5*1.07 + M*0.5 解答

解題練習 (9) 解答(遞迴) N = 9 開始 N = 0 A(8) 條件成立 條件不成立 Return 1000 A(8) * 0.5* 1.07 + A(8) * 0.5 N = 10 N = 0 條件成立 條件不成立 A(9) Return 1000 A(9) * 0.5* 1.07 + A(9) * 0.5 N = 9 A(9) N = 0 結束 條件成立 條件不成立 Return 1000 A(8) * 0.5* 1.07 + A(8) * 0.5

解題練習 (10) 重覆結構 【問題】本金10000元,A股票每個營業日都漲停7%,B股票每個營業日都 跌停7%,若固定每個營業日將資金的70%繼續投資A股票,30% 繼續投資B股票,問10個營業日後的資金有多少錢? 〔分析〕輸入:無 處理:a0 = 10000   1天後資金 a 1 = a0 * 0.5 * 1.07 + a0 * 0.5   2天後資金 a 2 = a1 * 0.5 * 1.07 + a1 * 0.5   N天後資金 a n = a n-1 * 0.5 * 1.07 + a n-1 * 0.5 輸出:a 10

解題練習 (10) 解答 開始 M = 10000 For i = 1 to 10 M = M*0.7*1.07 + M*0.3*0.93 結束 輸出M M = 10000 For i = 1 to 10 M = M*0.7*1.07 + M*0.3*0.93 解答

解題練習 (10) 解答(遞迴) N = 9 開始 N = 0 條件成立 條件不成立 A(8) Return 10000 A(9) * 0.7* 1.07 + A(9) * 0.3* 0.93 N = 10 N = 0 條件成立 條件不成立 A(9) Return 10000 A(9) * 0.7* 1.07 + A(9) * 0.3* 0.93 N = 9 A(9) N = 0 結束 條件成立 條件不成立 A(8) Return 10000 A(9) * 0.7* 1.07 + A(9) * 0.3* 0.93

解題練習 (11) 重覆結構 【類型】費式數列 【問題】計算費式數列的第10項值。 〔分析〕輸入:無 處理: a0 = 1 a 1 = 1 a n = a n-1 + a n-2 輸出:a 10

解題練習 (11) 解答(遞迴) N = 9 開始 N = 0 or N = 1 條件成立 A(8) 條件不成立 Return 1 A(8) + A(7) N = 10 A(7) N = 0 or N = 1 條件成立 條件不成立 A(9) Return 1 A(9) + A(8) N = 8 A(8) N = 0 or N = 1 結束 條件成立 A(7) 條件不成立 Return 1 A(7) + A(6) A(6)

解題練習 (11) 解答(迴圈) For i = 1 to 10 開始 M0 = 1 M1 = 1 M2 = 0 M2 = M1 + M0 結束 輸出M2 M0 = 1 For i = 1 to 10 M1 = 1 M2 = 0 M2 = M1 + M0 M0 = M1 M1 = M2

解題練習 (12) 重覆結構 【類型】最大公因數 【問題】計算兩個正整數的最大公因數 〔分析〕輸入:兩個正整數:A=120、B=32 處理:求最大公因數 輸出:最大公因數

解題練習 (12) 解答(遞迴) 開始 A=120 A = 32 A = 24 B=32 B = 24 B = 8 (120 mod 32) = 0 (32 mod 24) = 0 (24 mod 8) = 0 條件成立 條件不成立 條件成立 條件不成立 條件成立 條件不成立 Return B GCD (32, 24) Return B GCD (24, 8) Return 8 GCD (8, 0) 結束

解題練習 (12) 解答 Begin 餘數 = 被除數 mod 除數 Do while (餘數 <> 0) 被除數 = 除數 除數 = 餘數 Loop Print 除數 End Function GCD(A, B) If (A mod B) = 0 Then Return B Else Return GCD(B, (A mod B)) End If End Function 遞迴 迴圈