嘿,我需要在vb.net中制作一个程序,要求用户的生日。该计划应该给出该人出生的星期几和他们的占星术星座。有谁能够帮助我??请!确定星座和出生日期
回答
Private Function Zodiac(ByVal Birthday As Date) As String
Dim year As Integer = Birthday.Year
Dim zodiacs = {
New With {.From = New Date(year, 1, 1), .[To] = New Date(year, 1, 19), .Zodiac = "Capricorn"},
New With {.From = New Date(year, 1, 20), .[To] = New Date(year, 2, 18), .Zodiac = "Aquarius"},
New With {.From = New Date(year, 2, 19), .[To] = New Date(year, 3, 20), .Zodiac = "Pisces"},
New With {.From = New Date(year, 3, 21), .[To] = New Date(year, 4, 19), .Zodiac = "Aries"},
New With {.From = New Date(year, 4, 20), .[To] = New Date(year, 5, 20), .Zodiac = "Taurus"},
New With {.From = New Date(year, 5, 21), .[To] = New Date(year, 6, 20), .Zodiac = "Gemini"},
New With {.From = New Date(year, 6, 21), .[To] = New Date(year, 7, 22), .Zodiac = "Cancer"},
New With {.From = New Date(year, 7, 23), .[To] = New Date(year, 8, 22), .Zodiac = "Leo"},
New With {.From = New Date(year, 8, 23), .[To] = New Date(year, 9, 22), .Zodiac = "Virgo"},
New With {.From = New Date(year, 9, 23), .[To] = New Date(year, 10, 22), .Zodiac = "Libra"},
New With {.From = New Date(year, 10, 23), .[To] = New Date(year, 11, 21), .Zodiac = "Scorpio"},
New With {.From = New Date(year, 11, 22), .[To] = New Date(year, 12, 21), .Zodiac = "Sagittarius"},
New With {.From = New Date(year, 12, 22), .[To] = New Date(year, 12, 31), .Zodiac = "Capricorn"}}
Return (From z In zodiacs Where (z.From <= Birthday And Birthday <= z.[To])).Single.Zodiac
End Function
第一,蹩脚的尝试:
Private Function Zodiac(ByVal Birthday As Date) As String
Dim year As Integer = Birthday.Year
Dim sodiacCapricorn() As DateTime = {New DateTime(year, 12, 22), New DateTime(year, 1, 19)}
Dim sodiacAquarius() As DateTime = {New DateTime(year, 1, 20), New DateTime(year, 2, 18)}
Dim sodiacPisces() As DateTime = {New DateTime(year, 2, 19), New DateTime(year, 3, 20)}
Dim sodiacAries() As DateTime = {New DateTime(year, 3, 21), New DateTime(year, 4, 19)}
Dim sodiacTaurus() As DateTime = {New DateTime(year, 4, 20), New DateTime(year, 5, 20)}
Dim sodiacGemini() As DateTime = {New DateTime(year, 5, 21), New DateTime(year, 6, 20)}
Dim sodiacCancer() As DateTime = {New DateTime(year, 6, 21), New DateTime(year, 7, 22)}
Dim sodiacLeo() As DateTime = {New DateTime(year, 7, 23), New DateTime(year, 8, 22)}
Dim sodiacVirgo() As DateTime = {New DateTime(year, 8, 23), New DateTime(year, 9, 22)}
Dim sodiacLibra() As DateTime = {New DateTime(year, 9, 23), New DateTime(year, 10, 22)}
Dim sodiacScorpio() As DateTime = {New DateTime(year, 10, 23), New DateTime(year, 11, 21)}
Dim sodiacSagittarius() As DateTime = {New DateTime(year, 11, 22), New DateTime(year, 12, 21)}
Select Case Birthday.DayOfYear
Case 1 To sodiacCapricorn(1).DayOfYear, sodiacCapricorn(0).DayOfYear To 366
Return "Capricorn"
Case sodiacAquarius(0).DayOfYear To sodiacAquarius(1).DayOfYear
Return "Aquarius"
Case sodiacPisces(0).DayOfYear To sodiacPisces(1).DayOfYear
Return "Pisces"
Case sodiacAries(0).DayOfYear To sodiacAries(1).DayOfYear
Return "Aries"
Case sodiacTaurus(0).DayOfYear To sodiacTaurus(1).DayOfYear
Return "Taurus"
Case sodiacGemini(0).DayOfYear To sodiacGemini(1).DayOfYear
Return "Gemini"
Case sodiacCancer(0).DayOfYear To sodiacCancer(1).DayOfYear
Return "Cancer"
Case sodiacLeo(0).DayOfYear To sodiacLeo(1).DayOfYear
Return "Leo"
Case sodiacVirgo(0).DayOfYear To sodiacVirgo(1).DayOfYear
Return "Virgo"
Case sodiacLibra(0).DayOfYear To sodiacLibra(1).DayOfYear
Return "Libra"
Case sodiacScorpio(0).DayOfYear To sodiacScorpio(1).DayOfYear
Return "Scorpio"
Case sodiacSagittarius(0).DayOfYear To sodiacSagittarius(1).DayOfYear
Return "Sagittarius"
Case Else
Return "?"
End Select
End Function
使用annomous类型和一个整洁的LINQ说法是方式更具有可读性恕我直言。
我的眼睛!!!!使用select case语句不是更容易吗? – 2011-02-28 09:55:45
我做到了!那是我的第一次尝试,而且这样更加可怕。让我重新添加它... – 2011-02-28 10:06:53
我想这可能是最好使用一个const的日期,因为他们实际上是幻数。如果它们在函数外部定义,它也会整理一些东西。不要试图过度挑剔,抱歉,如果它出现这种情况,只是试图帮助! – 2011-02-28 10:13:32
- 1. 我如何从Python中的生日确定星座/星座星座?
- 2. jquery日期 - 确定一个星期日?
- 3. 如何明确星期日和星期六的日期数?
- 4. 从出生日期确定年龄
- 5. PHP,在字符串中确定日期和星期几
- 6. 使用JavaScript确定“周期”和星期
- 7. Bootstrap - datesDisabled数组日期和星期日和星期六
- 8. 列出所有星期六和星期日
- 9. 忽略星期六和星期日
- 10. 获取从给定日期星期一到星期五的星期日期
- 11. PHP:如何获得星期日和星期六给定日期输入?
- 12. PHP星期一星期一和星期六日期问题
- 13. 获取基于给定日期的星期一至星期日
- 14. 获取指定日期的星期日
- 15. ,如何排除星期六和星期天,当我生成日期
- 16. jQuery datepicker禁用星期日和特定数组日期
- 17. 年龄检查由出生日期到确切日期,为jquery.validate
- 18. 在列表视图中显示剩余的出生日期和星期几
- 19. 星期数的确定
- 20. Rails - 确定星期几
- 21. 确定的星期几
- 22. Python2:在指定日期范围内检索星期日 - 星期六星期开始/结束日期
- 23. 确定日期
- 24. 如何确定日期是否在当前星期日期之间?
- 25. 不要在日历中显示星期六和星期日javascript
- 26. 星期六和星期日禁用的日历
- 27. TSQL从“种子”日期确定每隔一个星期五
- 28. 如何根据日期确定星期几?
- 29. 如何确定日历季度周期内的星期数VB6
- 30. 确定一个日期是星期六或使用JavaScript
到目前为止您尝试过什么?当您尝试解决您想要询问的问题时,是否遇到过一些问题? – 2011-02-28 07:19:12
我不知道从哪里开始。我知道我必须得到用户输入的当前日期和日期,但在那里我卡住了 – Peter 2011-02-28 07:23:34
VB.NET DateTime类有DayOfWeek。星号,你只需要在每个符号的日期范围内编码。这不是全部吗? – Rup 2011-02-28 07:26:36