算法分析:通常,我們按照下列過程計算1+2+……+100的值.
第1步,0+1=1. 第2步,1+2=3. 第3步,3+3=6. 第4步,6+4=10. …… 第100步,4 950+100=5 050. |
顯然,這個過程中包含重復操作的步驟,可以用循環結構表示.分析上述計算過程,可以發現每一步都可以表示為第(i-1)步的結果+i=第i步的結果.
為了方便、有效地表示上述過程,我們用一個累加變量S來表示第一步的計算結果,即把S+i的結果仍記為S,從而把第i步表示為S=S+i,
其中S的初始值為0,i依次取1,2,…,100,由于i同時記錄了循環的次數,所以也稱為計數變量.
解決這一問題的算法是:
第一步,令i=1,S=0.
第二步,若i≤100成立,則執行第三步;否則,輸出S,結束算法.
第三步,S=S+i.
第四步,i=i+1,返回第二步.
程序框圖如右:
上述程序框圖用的是當型循環結構,如果用直到型循環結構表示,則程序框圖如下:
點評:這是一個典型的用循環結構解決求和的問題,有典型的代表意義,可把它作為一個范例,仔細體會三種邏輯結構在程序框圖中的作用,學會畫程序框圖.
湖北省互聯網違法和不良信息舉報平臺 | 網上有害信息舉報專區 | 電信詐騙舉報專區 | 涉歷史虛無主義有害信息舉報專區 | 涉企侵權舉報專區
違法和不良信息舉報電話:027-86699610 舉報郵箱:58377363@163.com