fornext回圈结构.doc.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
迴圈結構for ... next (一)用處 : 用於重複執行之程式區塊,進行某一區間數值之反覆運算,例如累加、累 (二)語法for?? 計數變數 = 起始值?? ?to?? 終止值???? [ step?? 計數變數增量 ]? (敘述區) next?? [ 計數變數 ] (1) 當變數值介於初值和終值之間時,會執行迴圈內的敘述,每執行一次迴圈後(即每執行一次Next指令)便加一次增值(增值可能為正或負數),直到變數值超過終值時跳出迴圈。 (2)迴圈執行完畢後,計數變數值為 (終值+增值),非終值。 (2) 增加量為1 時,Step 可以省略。 (3) Next 後之控制變數可以省略。 (4) 若中途要跳出迴圈,可用Exit For 指令,讓程式執行Next 之後的敘述。 範例: Private Sub Form_Activate( ) For I=2 To 6 Step 2 Print I; Next I Print Print 迴圈結束後I 值為 ;I End Sub 執行結果: 2 4 6 迴圈結束後I 值為 8 說明: 若將第2 列改為For I=5 To -5 Step -3 則執行結果為 5 2 -1 -4 迴圈結束後I 值為 -7。 (三)程式範例 程式範例(1):? 輸入n值? , 求 1 + 2 +3 +.....+n [1] 設計方式(a): 遞增相加 sub command1_click( ) n = val(text1.text) sum = 0 for? i? =? 1?? to? n ?step? 1?????? step? 1 增量1可以省略 sum = sum + i next i label1=sum end sub   [2] 設計方式(b): 遞減相加 sub command1_click( ) n = val(text1.text) sum = 0 for? i? =? n?? to? 1? step? -1???? sum = sum + i next i label1=sum end sub   程式範例(2):? 輸入n值? , 求 1 + 3 +5 +7+9+.....+nsub command1_click( ) n = val(text1.text) sum = 0 for? i? =? 1?? to? n? step? 2????? sum = sum + i next i label1=sum end sub   程式範例(3):? 輸入n值? , 求 n! = 1* 2* 3* .....*n sub command1_click( ) n = val(text1.text) sum = 1 for? i? =? 1?? to? n? step 1???????? ??? step? 1 增量1可以省略 sum = sum * i next i label1=sum end sub   程式範例(4):? 輸入n值? , 求 1^2? + 2^2 + 3^2 + .....+ n^2?? (1~n每數值平方相加) sub command1_click( ) n = val(text1.text) sum = 0 for? i? =? 1?? to? n? ?? sum = sum + i^2 next i label1=sum end sub 程式範例(5):? 輸入n值? , 判斷是質數或非質數 質數的定義:除了自己及1之外,沒有任何一數 值可以整除它。 即 拿2、3、4、5…….、(n-1) ?來除? n 若 整除 , 則 為 ??“ 非質數 “ ? 否則 為 “ 質數 “    (三) sub command1_click( ) flag = true????????????????????????????? 設定flag變數為邏輯值true n= val(text1.text) for? j? =? 2?? to? n-1? ?????????????? if (n? mod? j ) = 0 then?????? a除以j的餘數,是否為0 flag = false???????????? 更改flag變數為邏輯值 exit?? for??????????????????? 跳出for...next 迴圈 endif next? j if?? flag = true?? then label1=質數 else label1=非質數 endif end sub 例: 01 Private Sub Form_Activate( ) 02 S=0 03 For I=1 To

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档