標題:
程式設計的 三個基本結構
[打印本頁]
作者:
sjgau
時間:
2013-10-23 11:49
標題:
程式設計的 三個基本結構
一 順序
以 兩個變數的值交換作為 範例
二 判斷
以 y= a*(x^2) + b*x + c = 0 求根為例子
三 迴圈
以 加總為 範例
作者:
sunnyso
時間:
2013-10-23 21:49
回復
1#
sjgau
有例子嗎? 附件參考? 謝謝
作者:
sjgau
時間:
2013-10-27 04:30
' SEQUENTIAL 程式設計結構的 範例
Sub test()
Dim a As Integer, b As Integer, c As Integer
Randomize
' 設定亂數的 種子數
a = Int(Rnd * 6 + 1)
b = Int(Rnd * 6 + 1)
' show a, b
MsgBox ("a= " & a & ", b= " & b)
' swap a, b
c = a
a = b
b = c
MsgBox ("a= " & a & ", b= " & b)
End Sub
作者:
sjgau
時間:
2013-10-27 04:32
回復
3#
sjgau
Randomize 陳述式
請參閱 範例 特性
初始化亂數產生器。
語法
Randomize [number]
選擇性引數 number 可以是一型態為 Variant 的值或任何數值運算式。
請注意
Randomize 使用 number 的值當成新的亂數種子來起始亂數產生器,若要得到一亂數值,則可呼叫 Rnd 函數。如果省略 number,則會以作業系統現在時間來當做新的亂數種子。
如果沒有呼叫 Randomize 來起始亂數產生器,Rnd 函數(沒有引數)則使用上次呼叫 Rnd 函數所得的亂數值當做新的亂數種子。
附註 若想得到重覆的亂數序列,可以在呼叫 Randomize 之前先呼叫 Rnd 並且傳入一小於 0 的引數值。光是用同樣的亂數種子呼叫 Randomize 兩次的話,並不會得到兩次相同的亂數序列。
作者:
sjgau
時間:
2013-10-27 04:33
Rnd 函數
請參閱 範例 特性
傳回一型態為 Single 的值,其內容為一亂數值。
語法
Rnd[(number)]
選擇性引數 number 可以是一型態為 Single 的值,或任何數值運算式。
傳回值
作者:
sjgau
時間:
2013-10-28 06:28
看到 RND 傳回 SINGLE, 就很洩氣。
因為 SINGLE的變化,只有 2^24
大約是 10^7, 實在是 不夠用
所以,如果自己寫 RND, 可以有 2^31 的變化,
才比較像是 亂數
作者:
sjgau
時間:
2013-10-28 10:53
Sub test1016()
Randomize
Dim a As Single, b As Single, c As Single
a = Rnd * 90 + 10
b = Rnd * 90 + 10
' show a, b
MsgBox (" a= " & a & ", b= " & b)
' 我們 希望 a <= b
If (a > b) Then
' 如何把 a, b 的值交換
c = a
a = b
b = c
MsgBox ("*** 交換以後 a= " & a & ", b= " & b)
End If
End Sub
複製代碼
回復
7#
sjgau
作者:
sjgau
時間:
2013-10-28 11:22
Sub test1016()
Dim no As Integer, sum As Integer, i As Integer
Dim chk As Double
no = 100
sum = 0
For i = 1 To no
sum = sum + i
Next i
' 驗算
chk = (1# + no) * (no - 1# + 1#) / 2#
MsgBox ("no= " & no & ", sum= " & sum & ", check= " & chk)
End Sub
複製代碼
回復
8#
sjgau
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)