一、什么是程序流程圖
“程序流程圖”常簡稱為“流程圖”,是一種傳統的算法表示法,程序流程圖是人們對解決問題的方法、思路或算法的一種描述。它利用圖形化的符號框來代表各種不同性質的操作,並用流程線來連接這些操作。在程序的設計(在編碼之前)階段,通過畫流程圖,可以幫助我們理清程序思路。下圖是一個簡單的流程圖,描述求兩個數的最大公約數的算法(輾轉相除法)。
流程圖中常用的符號見圖,在前述求最大公約數的流程圖中找出對應的部分。
二、三種控制結構的流程圖表示
三、練習題目(各部分分別至少選兩個畫一畫,注意用一張質量好一些紙,書寫整齊,確保越畫越高興)
1、熱身
(1)將英尺轉換為米
(2)輸入兩個點的坐標,求兩點之間的距離並輸出
2、分支程序
(1)描述一下今晚的計划:如果下雪,校園內玩雪;否則,在103上機(懷念)
(2)丟硬幣決定今晚:正面,K歌;反面:逛街;立起來,學C++
(3)求函數值:
(4)輸入一元二次方程ax^2+bx+c=0的各項系數,並根據各系數的值的情況,分別進行求解(考慮對系數的各種可能太復雜時,給自己降低些難度,先從不考慮系統直接求解開始)
(5)輸入個人月收入總額,計算出他本月應繳稅款和稅后收入(稅率等參考第9周任務)
3、循環結構
(1)求1+2+3+...+100(三種循環結構都畫一畫)
(2)輸出1/3-3/5+5/7-7/9…+19/21的結果
(3)一個數如果恰好等於它的因子之和,這個數就稱為“完數”。找出1000內的所有完數。
(4)輸出1000以內的所有回文數
(5)雞翁一,值錢五,雞母一,值錢三,雞雛三,值錢一,百錢買百雞,如何買?
4、復雜結構的程序
在解決問題中,利用函數可以讓我們利用更“有序”的思維去想問題,“自頂向下,逐步求精”,真理。例:下面的流程圖用於輸出星號圖,體現的是這種思維,右邊的圖可以嵌入到左邊中,替代“輸出第i行”的框子,也可以指導我們專門編成一個函數。
任務:
(1)輸出10000以內的所有回文素數。將判斷回文和判斷素數分別單獨畫,對應將這兩個功能用函數實現的方法。
(2)畫出銀行系統的流程圖(各具體業務點到為止,不必全畫)