English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

我要交一個關於星座查詢的程式...可是我不會...誰能幫幫我!!題目是說使用者輸入出生月、日後,找出其所屬星座及個性的特質請會的人幫幫我!!

2006-08-17 16:59:30 · 3 個解答 · 發問者 佩~ 4 in 電腦與網際網路 程式設計

ex.魔羯座 12/23~1/20 獨立自主、冷靜機警
輸入12/23~1/20中的其中一天就會出現
魔羯座 獨立自主、冷靜機警

請問要怎麼下條件啊?

2006-08-17 19:53:41 · update #1

3 個解答

程式難度不高,主要是處理資料與判斷日期部分
其中日期以"摩羯座"處理要稍加小心因此程式做成
ElseIf mStr >= "12.22" Or mStr <= "01.19" Then
資料部分直接設計函數取回即可
做法如下
1開啟一個Form
2將以下程式貼上即可


Private Sub Form_Load()
Dim m月份 As Integer
Dim m日期 As Integer
Dim m資料(12) As String
Dim mStr As String
Dim f As Integer

Do: m月份 = Val(InputBox("請輸入出生月份:"))
Loop Until m月份 > 0 And m月份 < 13
Do: m日期 = InputBox("請輸入出生日期:")
Loop Until m日期 > 0 And m日期 < 32

mStr = Right(Str(m月份 + 100), 2) & "." & Right(Str(m日期 + 100), 2)
If mStr >= "03.21" And mStr <= "04.20" Then
f = 1
ElseIf mStr >= "04.21" And mStr <= "05.20" Then
f = 2
ElseIf mStr >= "05.21" And mStr <= "06.21" Then
f = 3
ElseIf mStr >= "06.22" And mStr <= "07.22" Then
f = 4
ElseIf mStr >= "07.23" And mStr <= "08.22" Then
f = 5
ElseIf mStr >= "08.23" And mStr <= "09.22" Then
f = 6
ElseIf mStr >= "09.23" And mStr <= "10.22" Then
f = 7
ElseIf mStr >= "10.23" And mStr <= "11.21" Then
f = 8
ElseIf mStr >= "11.22" And mStr <= "12.21" Then
f = 9
ElseIf mStr >= "12.22" Or mStr <= "01.19" Then
f = 10
ElseIf mStr >= "01.20" And mStr <= "02.19" Then
f = 11
ElseIf mStr >= "02.20" And mStr <= "03.20" Then
f = 12
End If
mStr = f取回星座資料(f) & vbCrLf & f取回運算結果資料(f)
MsgBox mStr
End Sub

Function f取回星座資料(n As Integer)
Dim m星座(12) As String
m星座(1) = "牡羊座"
m星座(2) = "金牛座"
m星座(3) = "雙子座"
m星座(4) = "巨蟹座"
m星座(5) = "獅子座"
m星座(6) = "處女座"
m星座(7) = "天秤座"
m星座(8) = "天蠍座"
m星座(9) = "射手座"
m星座(10) = "摩羯座"
m星座(11) = "水瓶座"
m星座(12) = "雙魚座"
f取回星座資料 = m星座(n)
End Function


Function f取回運算結果資料(n As Integer)
Dim m資料(12) As String
m資料(1) = "牡羊座的性格,可用一句話–「堅強」來代表。"
m資料(2) = "金牛座的性格就像牛一般,態度穩定,處世相當慎重,但在另一方面也很頑固"
m資料(3) = "雙子座的人,在性格方面的最大特徵便是具有極敏銳的觀察力。"
m資料(4) = "巨蟹座的性格可用一句話來表示「充滿母愛」。"
m資料(5) = "獅子座的人,性格相當於百獸之王的獅子,堅強、可靠、驕傲、寬大。"
m資料(6) = "處女座的人,正是人如其名,具有純潔、潔癖及正義感。"
m資料(7) = "對於善惡兩極端的想法、保持著很平衡的狀態,這是天秤座的個性。"
m資料(8) = "天蠍座的人的性格,表面上看似十分靜,內心似乎充滿著用不完的充沛活動力。天蠍座的人擁有驚人的耐力,以及意志力。"
m資料(9) = "射手座的人是忠心的,愛國的,守法的,大方而無拘無束,精力充沛,好爭論,脾氣急躁,對權位有野心,對受磨難及壓迫的人有慈悲的心腸。"
m資料(10) = "魔羯座的人,具有很強的耐力,以及不屈不撓的奮鬥精神。"
m資料(11) = "水瓶座的人頗富知性,且具有銳利的觀察力、推測能力、以及富有冒險的開拓精神。"
m資料(12) = "人類因為有夢想而偉大,雙魚座因為有夢想才長大。你純真善良,又樂於助人,每當人家需要你幫助時,你不僅會伸出援手,還會附上大量的愛心!"
f取回運算結果資料 = m資料(n)
End Function




希望以上程式對你有所幫助

2006-08-17 20:41:38 · answer #1 · answered by ㄚ旺 5 · 0 0

請問為什麼我用了
他說mStr 在指派值之前已被使用,可能會在執行階段產生 null 參考例外狀況。

請問怎麼了

2012-01-05 05:55:43 · answer #2 · answered by ? 1 · 0 0

Private Sub Command1_Click()
Cls
W = "請輸入正確之日期"
d = DateSerial(Text1, Text2, Text3)
If d > Now Then MsgBox w , 16
ElseIf Text2 > 12 Then MsgBox w , 16
ElseIf Text2 = 1 And Text3 > 31 Then MsgBox w , 16
ElseIf Text2 = 3 And Text3 > 31 Then MsgBox w , 16
ElseIf Text2 = 5 And Text3 > 31 Then MsgBox w , 16
ElseIf Text2 = 7 And Text3 > 31 Then MsgBox w , 16
ElseIf Text2 = 8 And Text3 > 31 Then MsgBox w , 16
ElseIf Text2 = 10 And Text3 > 31 Then MsgBox w , 16
ElseIf Text2 = 12 And Text3 > 31 Then MsgBox w , 16
ElseIf Text2 = 4 And Text3 > 30 Then MsgBox w , 16
ElseIf Text2 = 6 And Text3 > 30 Then MsgBox w , 16
ElseIf Text2 = 9 And Text3 > 30 Then MsgBox w , 16
ElseIf Text2 = 11 And Text3 > 30 Then MsgBox w , 16
ElseIf Text2 = 2 And Text3 > 29 Then MsgBox w , 16
Else
a = DatePart("Y", d)
a1 = "◎本月份~略"
a2 = "◎改變一~略"
a3 = "◎本月份~略"
a4 = "◎本月份~略"
a41 = "◎戀愛運~略"
a42 = "◎財運方~略"
a51 = "◎戀愛運~略"
a52 = "◎財運方~略"
a6 = "◎戀愛運~略"
a61 = "◎財運方~略"
a7 = "◎戀愛運~略"
a8 = "◎戀愛運~略"
a9 = "◎戀愛運~略"
a10 = "◎愛情運~略"
a11 = "◎戀愛運~略"
a12 = "◎戀愛運~略"
Select Case a
Case 356 To 365, 1 To 19
Print "摩羯座" + Chr(13) + Chr(13); "本月運勢:" + a1
Case 20 To 50
Print "水瓶座" + Chr(13) + Chr(13); "本月運勢:" + Chr(13); "" + Chr(13) + a2
Case 51 To 79
Print "雙魚座" + Chr(13) + Chr(13); "本月運勢:" a3 + a31
Case 80 To 110
Print "牡羊座" + Chr(13) + Chr(13); "本月運勢:" a4 + a41 + a42
Case 111 To 140
Print "金牛座" + Chr(13) + Chr(13); "本月運勢:" + a5 + a51 + a52
Case 141 To 172
Print "雙子座" + Chr(13) + Chr(13); "本月運勢:"+ a6 + a61
Case 173 To 203
Print "巨蟹座" + Chr(13) + Chr(13); "本月運勢:" + a7
Case 204 To 234
Print "獅子座" + Chr(13) + Chr(13); "本月運勢:" + a8
Case 235 To 265
Print "處女座" + Chr(13) + Chr(13); "本月運勢:" + a9
Case 266 To 295
Print "天秤座" + Chr(13) + Chr(13); "本月運勢:" + a10
Case 296 To 325
Print "天蠍座" + Chr(13) + Chr(13); "本月運勢:" + a11
Case 326 To 355
Print "射手座" + Chr(13) + Chr(13); "本月運勢:" + a12
End Select
End If
End Sub

2006-08-19 02:31:33 補充:
Text1,輸入年 Text2,輸入月 Text3,輸入日
因為字數問題 所以省略了很多
其實這樣的作業 我也做過~而方式不限
看你要怎麼呈現,自己會比較習慣
如果有任何問題的話 可以密我 joan4590 ^^

2006-08-18 22:24:57 · answer #3 · answered by 佳君 5 · 0 0

fedest.com, questions and answers