宏程序相較固定G代碼程序有很多優越性:如數學中的設參 、計算,邏輯中的判斷、分支、與循環等。今天,本人分享個數學中的累加計算案例,還是那句:案例本身不是重點,重點是思想。
題目是: 寫段宏程序計算 1+2+3+4+5+……+99+100 的和
以下是我的編程思路,起個拋磚引玉這功用,當然,各位看官也許會有更好的方案。
1、設參替代:
此題如果用窮舉累加,計算量還是很大的,寫出來的程序也會成為懶婆娘的裹腳布,所以,你得設參替代,再用循環控制累加:
(1)、設定有個空籃子: #1 (#1=0.0)
(2)、每次放入蘋果數: #2 (#2=1.0)
(3)、計數放入次數: #3 (此題中此參數可設可不設,為了通用性我暫設定)
(因此例中,#3始終等於#2)
2、循環控制
用#3號參數作為計數器,進行循環控制,按題可知:每次放入蘋果數會增加1,放入後計數器加1。(如不設#3參數,可用#2參數代用)
3、程序案例
#1=0.0 (籃子裡蘋果數,事先為零)
#2=1.0 (第一次放入數為1、後每次增加1)
#3=1.0 (計數器,可設可不設)
WHILE[#3 LE 100] DO1
#1=#1+#2 (籃子裡蘋果數累加)
()
#2=#2+1.0 (放入蘋果數加1)
#3=#3+1.0 (計數器加1)
END1
()
至此,程序已完成,你可以再編寫段驗證程序用以檢測程序正確性(注意,CIMCO驗證是不準確的,需把LE改成LT)。
現在,大家再編編以下題目,看看是否真已理解上述思路:
(1)、 1+3+5+7+9+……..+97+99 的和 (100內的奇數和)
(2)、下式的和
好,今天內容結束。
閱讀更多 ZHANGTECHENG 的文章