標題:
C# 7 405 星座
[打印本頁]
作者:
may
時間:
2024-1-8 22:28
標題:
C# 7 405 星座
TQC+ 物件導向程式語言
最新一次更新時間:2024-01-05 14:58:54
1. 題目說明:
請新增一個主控台應用程式,加入C:\ANS.CSF\CS04資料夾中的CSD04.cs進行編寫。依下列題意進行作答:輸入一個日期,再輸出此日期的所屬星座,使輸出值符合題意要求。檔案名稱請另存新檔為CSA04.cs,儲存於C:\ANS.CSF\CS04資料夾,再進行評分。
2. 設計說明:
請撰寫程式,讓使用者輸入一個8位數的整數作為日期,輸出該日期所屬星座的英文名稱。若輸入文字或無法轉換,請輸出【error】。
星座日期對照表:
星座 日期 星座 日期
Aquarius水瓶座 1/20-2/18 Pisces雙魚座 2/19-3/20
Aries牡羊座 3/21-4/19 Taurus金牛座 4/20-5/20
Gemini雙子座 5/21-6/20 Cancer巨蟹座 6/21-7/22
Leo獅子座 7/23-8/22 Virgo處女座 8/23-9/22
Libra天秤座 9/23-10/22 Scorpio天蠍座 10/23-11/21
Sagittarius射手座 11/22-12/21 Capricorn摩羯座 12/22-1/19
3. 輸入輸出:
輸入說明
一個8位數的整數作為日期
輸出說明
所屬星座的英文名稱(輸出最後一行後不自動換行)
範例輸入1
19570416
範例輸出1
Aries
範例輸入2
2/25
範例輸出2
error
4. 評分項目:
(1) 符合設計說明輸出正確格式 配分20
作者:
may
時間:
2024-1-9 09:35
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CSA04
{
class CSA04
{
static void Main(string[] args)
{
try
{
string[] names = { "Aquarius", "Pisces", "Aries", "Taurus", "Gemini", "Cancer", "Leo", "Virgo", "Libra", "Scorpio", "Sagittarius", "Capricorn" };
string[] dates = { "1/20", "2/19", "3/21", "4/20", "5/21", "6/21", "7/23", "8/23", "9/23", "10/23", "11/22", "12/22" };
DateTime dt = DateTime.ParseExact(Console.ReadLine(), "yyyyMMdd", null);
string name = "";
for (int i = 0; i <= dates.Length - 1; i++)
{
DateTime startDate;
DateTime endDate;
startDate = Convert.ToDateTime(dt.Year + "/" + dates[i].ToString());
if (i == dates.Length - 1)
{
endDate = Convert.ToDateTime((dt.Year + 1) + "/01/19");
}
else
{
endDate = Convert.ToDateTime(dt.Year + "/" + dates[i + 1].ToString()).AddDays(-1);
}
if (DateTime.Compare(startDate, dt) <= 0 && DateTime.Compare(endDate, dt) >= 0)
{
name = names[i];
break;
}
}
if (name == "") { name = "Capricorn"; }
Console.Write(name);
}
catch
{
Console.Write("error");
}
Console.ReadKey();
}
}
}
複製代碼
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/)
Powered by Discuz! 7.2