【正文】
Form_Click() Dim sum As Integer, i As Integer n = Val(InputBox(請(qǐng)輸入累加的終值 n: )) sum = 0 39。累加器清零 For i = 1 To n sum = sum + i 39。累加 Next i Print 1+...+。 n。 =。 sum End Sub ?求 1~n之間所有的 偶數(shù) 之和 信息系 外院 38 例題:求 10! 程序代碼設(shè)計(jì): 累乘 Private Sub Form_Click () Dim x As Long x = 1 For i = 1 To 10 x = x * i Next i MsgBox 10!的值為: amp。 x End Sub 信息系 外院 39 求最大值或最小值問題 求班級(jí)學(xué)生某一門課成績的最高分 ?這就是一個(gè)求最大值的問題。先假設(shè)第一個(gè)成績就是班級(jí)最高分,然后從第二個(gè)成績開始依次與假設(shè)的最高分比較,若有高于它的,則更新最高分,否則繼續(xù)下一個(gè)成績的比較,直至最后一個(gè)成績 Private Sub form_Click() Dim grade As Single Max = 0 For i = 1 To 2 39。假設(shè)班級(jí)人數(shù)為 20人 grade = Val(InputBox(請(qǐng)輸入第 amp。 i amp。 個(gè)學(xué)生的成績: )) If grade Max Then Max = grade Next i Print Print 最高分為 。 Max End Sub 信息系 外院 40 迭代法 求多項(xiàng)式的值,直到最后一項(xiàng) 的絕對(duì)值小于 106 ?分析: 方案 2: 迭代法 ——通過找出 前后累加項(xiàng)之間的關(guān)聯(lián) ,在前一次累加項(xiàng)的基礎(chǔ)上遞推出后一個(gè)累加項(xiàng),從而實(shí)現(xiàn) t的構(gòu)造 ......!!!! 87654321 ???!211 ?t 4143132143 12 ****!!tt ??????nntnnnnnnnnt nn 2322121121212112212 1*)(*)(*))(()(*))!(())((!)(??????????????? ?nntt232 *)( ??? ?63653 54 365 23 ****!! tt ??????信息系 外院 41 迭代法 求多項(xiàng)式的值,直到最后一項(xiàng) 的絕對(duì)值小于 106 Private Sub Form_Click() n = 1: t = 1 / 2: Sum = t 39。累加器等變量設(shè)置初始值 Do Until Abs(t) 10 ^ (6) 39。累加到最后一項(xiàng)的絕對(duì)值小于 106 n = n + 1 39。第 n個(gè)累加項(xiàng) t = t / (2 * n 3) / (2 * n) 39。根據(jù)前一累加項(xiàng)構(gòu)造 t Sum = Sum + t 39。累加 Loop End Sub ......!!!! 87654321 ???nntt232 *)( ???迭代法:信息系 外院 42 素?cái)?shù)問題 素?cái)?shù) 就是大家在數(shù)學(xué)中熟知的質(zhì)數(shù),即 一個(gè)大于 1且只能被1和它本身整除的整數(shù) 輸入一個(gè)正整數(shù),判斷該正整數(shù)是否為素?cái)?shù) ?分析: 從素?cái)?shù)的定義出發(fā):既然素?cái)?shù)除了 1和它本身之外,不能被任何數(shù)整除,那么就把待判斷的數(shù) X依次與除了 1和它本身之外的其他所有的數(shù)進(jìn)行除,看是否有整除的情況;若有,表示 X不是素?cái)?shù),否則就是素?cái)?shù)。除數(shù)的范圍 i從 2開始到 X1(因?yàn)橐粋€(gè)數(shù)不可能能整除比它自身大的數(shù) ),由于要對(duì)這個(gè)范圍內(nèi)的每一個(gè)數(shù)都進(jìn)行相同的重復(fù)除操作,所以使用循環(huán) 信息系 外院 43 素?cái)?shù)問題 輸入一個(gè)正整數(shù),判斷該正整數(shù)是否為素?cái)?shù) Private Sub Form_Click() Dim x As Integer x = Val(InputBox(請(qǐng)輸入一個(gè)正整數(shù) :)) For i = 2 To Sqr(x) 39。如果能被某個(gè)數(shù)據(jù)整除, x就不是素?cái)?shù),直接提前結(jié)束循環(huán) If x Mod i = 0 Then Exit For Next i If i = Sqr(x) Then 39。若 i=Sqr(x)循環(huán)非正常結(jié)束 ,說明 x不是素?cái)?shù) MsgBox CStr(x) amp。 不是素?cái)?shù) Else 39。如果 x不能被 [2, Sqr(x)]整除 ,則循環(huán)正常結(jié)束, iSqr(x),即說明 x是素?cái)?shù) MsgBox CStr(x) amp。 是素?cái)?shù) End If End Sub 信息系 外院 44 窮舉法 編寫 “ 百元買百雞 ” 的程序:雞翁一值錢五;雞母一值錢三;雞雛三值錢一。百錢買百雞。請(qǐng)問雞翁、雞母、雞雛各多少只? Private Sub Form_Click() Print 雞翁 , 雞母 , 雞雛 For i = 1 To 100 For j = 1 To 100 k = 100 i j If 5 * i + 3 * j + k / 3 = 100 Then Print i, j, k End If Next j Next I End Sub