Do While 迴圈 東海大學物理系‧資訊教育 施奇廷.

Slides:



Advertisements
Similar presentations
index 目次 ( 請按一下滑鼠,解答就會出現喔 !) 接續下頁解答 3-1 極限的概念.
Advertisements

第 1 章 公共基础知识 第 2 章 Visual Basic程序开发环境 第 3 章 对象及其操作 第 4 章 数据类型及其运算
第一節 創傷的定義與種類 第二節 出血與止血 第三節 一般創傷的急救原則與處理 第四節 特殊損傷與處理
2012年9月等级考试辅导 第二章 程序设计基础.
兒歌創作與實務 產學合作音樂教師  林麗青 99/11.
長期照護.
社區可持續發展工作室﹕ 婦女與青少年推動社區可持續發展計劃 可持續發展基金資助 香港婦女中心協會.
第4章 條件判斷與迴圈 Java 2 程式設計入門與應用.
迴圈 迴圈基本觀念 while迴圈 do 迴圈 for迴圈 巢狀迴圈 迴圈設計注意事項 其他控制指令 迴圈與選擇的組合.
美国教育心理学家吉诺特说:在历经了若干年的教师工作之后,我得到了一个令人惶恐的结论:教育的成功与失败,我是决定性的因素,我个人采用的方法和每天的情绪,是造成学习气氛和情景的的主要原因。身为教师,我具有极大的力量,能够让孩子们活得愉快或悲惨,我可以是制造痛苦的工具,也可能是启发灵感的媒介。无论在什么情况下,一场危机之恶化和化解,学生是否受到感化,全部决定于我。
授课人:柏加中学 陈彩萍.
控制结构程序设计 SPOC讨论.
地方機關組織編制及職務歸系法規與實務作業研習
C#程序设计案例教程 第3章 程 序 结 构.
第一章 C语言概述 计算机公共教学部.
Do it yourself 个性T恤 自己做 热转印 T恤店.
第4章 JavaScript脚本语言基础 4.1 JavaScript简介 4.2 JavaScript语法基础
和大樹做朋友 一起去探索兒童公園的動植物生態吧! 財源老師技術指導、詩韻老師整理製作.
營養講座系列- 健康飲食 VS 預防代謝症候群 永得有限公司 司徒蓁 營養師 主講.
孔子傳第三集: 興辦私學-禮學之美 生命教育工作坊.
第6章 程序设计与算法 计算机应用基础 数学与计算机工程学院.
你 今 天 累 吗 ? 坪山高级中学心理教师 张婧乔.
你的潜能是无限的 ——高三心理辅导.
第三章 控制结构.
初中獨立專題探究(文字模式) 課程規劃與教學經驗分享
编译原理与技术 中间代码生成 2018/9/17 《编译原理与技术》讲义.
程式設計實作.
循环结构又称为重复结构:用来处理需要重复处理的问题,它是程序中一种很重要的结构。
Class 2 流程控制-選擇敘述與迴圈.
C++Primer 3rd edition 中文版 Chap 5
第一次随堂作业(10.16) 请用扩展的 BNF 描述 C语言里语句的结构; 请用扩展的 BNF 描述 C++语言里类声明的结构;
C++中switch语句的BNF 否极泰来 ——《周易》.
C 程式設計— 控制敘述 台大資訊工程學系 資訊系統訓練班.
授课老师:龚涛 信息科学与技术学院 2018年3月 教材: 《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
第三單元 Control Structure II
新觀念的 VB6 教本 第七章 讓程式轉彎的控制敘述.
條件判斷指令 -if 指令 -switch 指令 迴圈指令 - for 迴圈 - while迴圈 - break、continue 指令
PHP 程式流程控制結構.
本章中將會更詳細地考慮有關重複的概念,並且會 介紹for和do…while等兩種用來控制重複的敘述 式。 也將會介紹switch多重選擇敘述式。 我們會討論直接和迅速離開某種控制敘述式的 break敘述式,以及用來跳過重複敘述式本體剩餘 部份的continue敘述式。 本章會討論用來組合控制條件的邏輯運算子,最後.
程序的三种基本结构 if条件分支语句 switch多路开关语句 循环语句 循环嵌套 break,continue和goto语句
陳維魁 博士 儒林圖書公司 第五章 控制結構 陳維魁 博士 儒林圖書公司.
授课老师:龚涛 信息科学与技术学院 2016年3月 教材:《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
第1章 概述 本章要点: C语言程序结构和特点 C语言程序的基本符号与关键字 C语言程序的编辑及运行 学习方法建议:
第4讲 C++程序控制结构(二) 4.1 循环结构 4.2 转向控制 4.3 综合案例分析.
第二章Java基本程序设计.
程式結構&語法.
第六章 迴圈與陣列.
第三章 C++的语句和简单的程序设计 主要内容:
談地上與天上的價值 太6:19-21 青年主日.
for 迴圈 while迴圈 do-while迴圈 break 與 continue goto 與 標籤 程式觀摩
C 语言程序设计 程序的循环结构 电大崇信县工作站 梁海亮.
第2章 算法与C语言程序 程序 (1)数据的描述:数据的类型和组织形式(数据结构) (2)操作的描述:操作步骤(算法) 沃思指出:
Instructor:Po-Yu Kuo 教師:郭柏佑
Power Point 簡易教學 蔡文能 2009/09/23.
代码优化.
第3章 JavaScript基本语句.
<编程达人入门课程> 本节内容 为什么要使用变量? 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ:
第二章 Java语法基础.
目标 流程控制 字符串处理 C# 的类和对象 C# 访问修饰符 C# 构造函数和析构函数.
程序设计基础.
#include <iostream.h>
第二章 Java基本语法 讲师:复凡.
PHP程式設計 五、程式流程控制結構 建國科技大學 資訊管理學系 饒瑞佶.
第2章 Java语言基础.
PHP5與MySQL5 入門學習指南 凱文瑞克 著 第 12 章 迴圈指令.
鄭士康 國立台灣大學 電機工程學系/電信工程研究所/ 資訊網路與多媒體研究所
C语言基本语句 判断循环.
第三章 流程控制 程序的运行流程 选择结构语句 循环结构语句 主讲:李祥 时间:2015年10月.
第二章 Java基本语法 讲师:复凡.
Fortran 实用编程 系列视频教程 Fortran Coder 研讨团队
Presentation transcript:

Do While 迴圈 東海大學物理系‧資訊教育 施奇廷

While: 條件式的迴圈 相對於for: 可計數式的迴圈,執行的次數是固定的;while 迴圈的執行次數不固定,只要指定的條件滿足就會一直執行 語法:

改寫等差級數之範例 條件算式 起始算式 控制算式

while: 語法解說 while:根據條件算式的真假, 來決定是否執行迴圈的動作。若為真, 則執行以大括號括住的動作; 若為假則跳過動作不執行, 也就是跳出迴圈。 條件算式:可以為任何算式、變數或數值。如果結果為非 0 的數值, 則表示為真; 否則為假。

預先條件算式迴圈:while 動作:可以為任何合法的程式語法。 while 的執行流程如下圖所示:

範例:求兩整數之最大公因數 要求兩個數的最大公因數, 可以用輾轉相除法。也就是兩個數先相除一次後, 用除數當新的被除數, 餘數當新的除數。如此不斷的除下去, 直到除數大於被除數為止, 除數即為最小公因數。由於要避免除以 0 的情況出現, 所以必須先判斷除數是否為 0 , 才能進行相除。針對程式此項需求, 我們可以使用 while 迴圈來完成。程式如課本 p.6-7 作業:請畫出此程式之流程圖

後設條件算式迴圈:do-while do-while 是後設判斷式的迴圈, 是先執行一次動作後, 再判斷迴圈控制的條件, 若條件成立時再回到前面執行 {} 內的動作, 如此重複直到條件算式的結果為假為止。格式如下: 流程圖如下:

流程圖

Summary: 三種迴圈的用法比較 For: 可數式的迴圈,通常預設了此迴圈被執行的次數,而且必定存在一個「整數」變數作為此迴圈的index While: 首先檢查條件算式是否滿足,如果滿足就進入迴圈執行命令,否則跳出。使用這種迴圈不需預設執行次數 Do while: 與 while 類似,不同點是「必定先執行一次」才開始檢查條件算式

While 的無窮迴圈

跳離迴圈的方法:break, continue, goto 這些指令會放在迴圈的 {動作} 部分內 continue: 會離開這一次的迴圈執行,進入下一次迴圈 break: 完全跳出迴圈,不再執行 goto: 直接跑到指定的程式位置,繼續執行

Continue:

break:

goto:

少用goto! goto 並不只限用於迴圈中, 在任何位置使用 goto, 都可以使程式的執行轉移到指定的位置。這是 goto 優點, 善用其優點, 可以增加撰寫程式的方便性。 但是, goto 的優點也是其缺點, 如果因為其方便性而濫用, 將會造成程式閱讀的困難, 甚至破壞整個程式的結構。所以建議讀者, 如果不是很熟悉 goto 的應用, 請盡量少用。

使用迴圈的注意事項 兩迴圈之間的範圍不可以交錯 條件算式的設定要合理 依照程式需求, 選擇使用特性適合的迴圈

兩迴圈之間的範圍不可以交錯 如果迴圈的動作敘述超過了一行, 就需要以大括號 {} 括住敘述的程式碼。當在同一程式中存在兩個以上的迴圈時, 兩迴圈以大括號 {} 括住敘述的程式碼不可以交錯:

兩迴圈之間的範圍不可以交錯 當兩迴圈範圍交錯時, 編譯器會將動作 2 錯認為迴圈 1 的範圍, 而迴圈 2 的效力無法影響到動作 2。如以一來, 所得到的結果絕對不是我們想要的答案。 若出現此種程式, 編譯時有時候會出現 "Compound statement missing }" 訊息, 也就是缺少標示右大括號的錯誤。

條件算式的設定要合理 不當的條件算式設定會產生無限迴圈, 或者根本未執行到迴圈的內容。所以在設定迴圈的條件式時, 請仔細檢查條件算式的推演結果, 以下是一些條件算式不合理的例子:

注意各種迴圈的使用時機 在介紹各種迴圈用法時, 已經討論過各種迴圈的適當使用時機, 在此作一整理, 當您的程式需要: 先判斷再決定是否執行時, 使用 while 迴圈 先執行一次再決定是否繼續時, 使用 do-while 迴圈 準確控制迴圈內容的執行次數, 使用 for 迴圈