三国情

 找回密码
 注册入口
3月份发帖大赛
小技巧:关键词之间加空格 例如:稀缺 热门 原创 压制 教育 学习
查看: 1163|回复: 13

[询技术/其他] 哪位大神有ChatGPT,让它帮我用C# NET6写一个窗体万年历。价格可以加

[复制链接]

主题
1697
战斗力
18065
美誉度
480
铜钱
6376
注册时间
2022-3-27
最后登录
2024-3-29
在线时间
170 小时

阳光心情动漫达人摸金校尉荣誉会员优秀会员普通精华

发表于 2023-3-9 17:42:53 | 显示全部楼层 |阅读模式
为防止发生不必要的纠纷,可以先私信或者回复1集或者部分楼主验证资源正确后再发全部!
300铜钱
哪位大神有ChatGPT,让它帮我用C# NET6写一个窗体万年历。

可查时间越大越好,要有阳历,阴历,农历,天干地支,星座,宜忌。

这个窗体是要与别一个C# NET6写一个窗体整合到一起用的,用于八字测算。

最佳答案

查看完整内容

你自己写需求。我可以让chatgpt生成。 按次收费,每次300铜钱,需要先结贴再给你程序。
免责申明 - 论坛版权1、本站所有资源均来自会员分享或网络收集整理,仅供会员交流学习,禁用商业用途或盈利,下载后请在24小时之内删除;
2、本站(www.975w.com)支持正版,本资源版权归版权方所有,观看或阅读请到相应机构购买正版资源;
3、本站资源均来源于网络,本站不参与录制、上传,如本帖侵犯到任何版权问题,请立即告知本站(laopanyou#qq.com(#=@)),本站将及时予与删除并致以最深的歉意;
楼主热贴
唵嘛呢叭咪吽
回复

拉黑 使用道具 举报

主题
326
战斗力
2470
美誉度
318
铜钱
12848
注册时间
2022-5-24
最后登录
2024-3-29
在线时间
189 小时
发表于 2023-3-9 17:42:54 | 显示全部楼层
你自己写需求。我可以让chatgpt生成。
按次收费,每次300铜钱,需要先结贴再给你程序。
三国情论坛(975w.com)典藏你的美好回忆。年代虽久远,好剧永流传!只要人人都献出一部剧,论坛将变成美好的回忆!
回复

拉黑 使用道具 举报

主题
1697
战斗力
18065
美誉度
480
铜钱
6376
注册时间
2022-3-27
最后登录
2024-3-29
在线时间
170 小时

阳光心情动漫达人摸金校尉荣誉会员优秀会员普通精华

 楼主| 发表于 2023-3-10 09:33:07 | 显示全部楼层
tiger008 发表于 2023-3-9 20:57
你自己写需求。我可以让chatgpt生成。
按次收费,每次300铜钱,需要先结贴再给你程序。
...

我上面已经写好要求了,chatgpt可以识别中文吧?
唵嘛呢叭咪吽
回复

拉黑 使用道具 举报

主题
1697
战斗力
18065
美誉度
480
铜钱
6376
注册时间
2022-3-27
最后登录
2024-3-29
在线时间
170 小时

阳光心情动漫达人摸金校尉荣誉会员优秀会员普通精华

 楼主| 发表于 2023-3-10 09:34:05 | 显示全部楼层
杜净隆 发表于 2023-3-10 09:33
我上面已经写好要求了,chatgpt可以识别中文吧?

我要可以直接用的源代码
唵嘛呢叭咪吽
回复

拉黑 使用道具 举报

主题
326
战斗力
2470
美誉度
318
铜钱
12848
注册时间
2022-5-24
最后登录
2024-3-29
在线时间
189 小时
发表于 2023-3-10 09:37:14 | 显示全部楼层
本帖最后由 tiger008 于 2023-3-10 09:48 编辑
杜净隆 发表于 2023-3-10 09:33
我上面已经写好要求了,chatgpt可以识别中文吧?


好的,那我把顶楼的以下的话原样不动发给chatgpt, 然后把反馈发给你。chatgpt可以识别中文。不满意的话,你修改文字,我再下第2单。


帮我用C# NET6写一个窗体万年历。
可查时间越大越好,要有阳历,阴历,农历,天干地支,星座,宜忌。
这个窗体是要与别一个C# NET6写一个窗体整合到一起用的,用于八字测算。
三国情论坛(975w.com)典藏你的美好回忆。年代虽久远,好剧永流传!只要人人都献出一部剧,论坛将变成美好的回忆!
回复

拉黑 使用道具 举报

主题
326
战斗力
2470
美誉度
318
铜钱
12848
注册时间
2022-5-24
最后登录
2024-3-29
在线时间
189 小时
发表于 2023-3-10 09:52:38 | 显示全部楼层
本帖最后由 tiger008 于 2023-3-10 10:21 编辑

帮我用C# NET6写一个窗体万年历。
可查时间越大越好,要有阳历,阴历,农历,天干地支,星座,宜忌。
这个窗体是要与别一个C# NET6写一个窗体整合到一起用的,用于八字测算。

好的,以下是一个简单的 C# .NET 6 窗体万年历示例,它包括阳历、阴历、农历、天干地支、星座、宜忌等信息:

csharp
Copy code
using System;
using System.Windows.Forms;
using System.Globalization;
using System.Collections.Generic;

n**espace CalendarApp
{
    public partial class FormCalendar : Form
    {
        private DateTime currentDate;
        private ChineseLunisolarCalendar chineseCalendar;
        private string[] gan = {"甲", "乙", "丙", "丁", "戊", "己", "庚", "辛", "壬", "癸"};
        private string[] zhi = {"子", "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥"};
        private string[] sheng**** = {"鼠", "牛", "虎", "兔", "龙", "蛇", "马", "羊", "猴", "鸡", "狗", "猪"};
        private Dictionary<int, string> yi = new Dictionary<int, string>()
        {
            {1, "祭祀"},
            {2, "祈福"},
            {3, "开市"},
            {4, "求财"},
            {5, "订婚"},
            {6, "纳采"},
            {7, "嫁娶"},
            {8, "入宅"},
            {9, "搬家"},
            {10, "安葬"},
            {11, "破土"},
            {12, "修造"},
            {13, "立券"},
            {14, "开光"},
            {15, "出行"},
            {16, "安床"},
            {17, "交易"},
            {18, "造船"},
            {19, "订盟"},
            {20, "裁衣"},
            {21, "伐木"},
            {22, "拆卸"},
            {23, "安门"},
            {24, "栽种"},
            {25, "立刻"},
            {26, "赴任"},
            {27, "开仓"},
            {28, "作灶"},
            {29, "入学"},
            {30, "捕捉"},
            {31, "分居"},
        };
        private Dictionary<int, string> ji = new Dictionary<int, string>()
        {
            {1, "祭祀"},
            {2, "祈福"},
            {3, "安床"},
            {4, "安葬"},
            {5, "出行"},
            {6, "开市"},
            {7, "破土"},
            {8, "上梁"},
            {9, "修造"},
            {10, "订盟"},
            {11, "求嗣"},
            {12, "嫁娶"},
            {13, "立券"},
            {14, "造车器"},
            {15, "造船"},
            {16, "造畜椆栖"},
            {17, "造屋"},
            {18, "




继续
// 定义一个八字结构体
public struct EightCharacters
{
public string yearGan;
public string yearZhi;
public string monthGan;
public string monthZhi;
public string dayGan;
public string dayZhi;
public string hourGan;
public string hourZhi;
}

csharp
Copy code
    public FormCalendar()
    {
        InitializeComponent();

        // 获取当前日期
        currentDate = DateTime.Now;

        // 创建中国农历日历对象
        chineseCalendar = new ChineseLunisolarCalendar();

        // 显示当前日期信息
        ShowDateInfo();
    }

    // 显示日期信息
    private void ShowDateInfo()
    {
        // 显示阳历日期
        labelSolarDate.Text = currentDate.ToString("yyyy年M月d日 dddd", new CultureInfo("zh-CN"));

        // 显示阴历日期
        int year = chineseCalendar.GetYear(currentDate);
        int month = chineseCalendar.GetMonth(currentDate);
        int day = chineseCalendar.GetDayOfMonth(currentDate);
        bool isLeapMonth = chineseCalendar.IsLeapMonth(year, month);
        string lunarMonth = isLeapMonth ? "闰" : "";
        lunarMonth += chineseCalendar.GetMonthN**e(year, month);
        string lunarDay = chineseCalendar.GetDayN**e(year, month, day);
        labelLunarDate.Text = $"{lunarMonth}{lunarDay}";

        // 显示农历日期
        int[] lunarYearInfo = GetLunarYearInfo(year);
        labelChineseDate.Text = $"{gan[lunarYearInfo[0]]}{zhi[lunarYearInfo[1]]}年{lunarMonth}{lunarDay}";

        // 显示天干地支和**
        labelGanZhi.Text = $"{gan[chineseCalendar.GetCelestialStem(year) - 1]}{zhi[chineseCalendar.GetTerrestrialBranch(year) - 1]}";
        int sheng****Index = (year - 4) % 12;
        labelSheng****.Text = sheng****[sheng****Index];

        // 显示当前日期的宜忌
        int dayOfWeek = (int)currentDate.DayOfWeek;
        if (dayOfWeek == 0)
        {
            dayOfWeek = 7;
        }
        int yiIndex = day * dayOfWeek % 31;
        int jiIndex = (day + month) % 31;
        string yiStr = yi.ContainsKey(yiIndex) ? yi[yiIndex] : "无";
        string jiStr = ji.ContainsKey(jiIndex) ? ji[jiIndex] : "无";
        labelYiJi.Text = $"宜:{yiStr}\n忌:{jiStr}";

        // 显示八字信息
        EightCharacters bazi = GetEightCharacters(currentDate);
        labelYearGanZhi.Text = $"{bazi.yearGan}{bazi.yearZhi}";
        labelMonthGanZhi.Text = $"{bazi.monthGan}{bazi.monthZhi}";
        labelDayGanZhi.Text = $"{bazi.dayGan}{bazi.dayZhi}";
        labelHourGanZhi.Text = $"{bazi.hourGan}{bazi.hourZhi}";
    }

    // 获取农历年份信息
    private int[] GetLunarYearInfo(int year)
    {
        int[] info = new int[2];
        int ganIndex = (year - 4) % 10;
        int zhiIndex = (year - 4) % 12




继续
scss
Copy code
        info[0] = ganIndex;
        info[1] = zhiIndex;
        return info;
    }

    // 获取八字信息
    private EightCharacters GetEightCharacters(DateTime date)
    {
        EightCharacters bazi = new EightCharacters();
        int year = chineseCalendar.GetYear(date);
        int month = chineseCalendar.GetMonth(date);
        int day = chineseCalendar.GetDayOfMonth(date);
        int hour = date.Hour;

        // 获取年柱
        int[] yearInfo = GetLunarYearInfo(year);
        bazi.yearGan = gan[yearInfo[0] % 5];
        bazi.yearZhi = zhi[yearInfo[1]];

        // 获取月柱
        DateTime startOfMonth = new DateTime(year, month, 1);
        int days = chineseCalendar.GetDaysInMonth(year, month);
        int endDayGanIndex = chineseCalendar.GetCelestialStem(startOfMonth.AddDays(days)) - 1;
        int monthGanIndex = endDayGanIndex * 2 - yearInfo[0] % 5 - (isLeapYear(year) && month == chineseCalendar.GetLeapMonth(year) ? 1 : 0);
        if (monthGanIndex < 0)
        {
            monthGanIndex += 10;
        }
        bazi.monthGan = gan[monthGanIndex % 10];
        bazi.monthZhi = zhi[(month + 1) % 12];

        // 获取日柱
        int dayGanIndex = (yearInfo[1] % 5) * 2 + chineseCalendar.GetDayOfYear(date) - 1;
        bazi.dayGan = gan[dayGanIndex % 10];
        bazi.dayZhi = zhi[day % 12];

        // 获取时柱
        int hourGanIndex = (dayGanIndex % 10) * 12 + hour / 2;
        bazi.hourGan = gan[hourGanIndex % 10];
        bazi.hourZhi = zhi[hour % 12];

        return bazi;
    }

    // 判断是否为闰年
    private bool isLeapYear(int year)
    {
        return (year % 4 == 0 && year % 100 != 0) || year % 400 == 0;
    }

    // 前一天
    private void buttonPrevDay_Click(object sender, EventArgs e)
    {
        currentDate = currentDate.AddDays(-1);
        ShowDateInfo();
    }

    // 后一天
    private void buttonNextDay_Click(object sender, EventArgs e)
    {
        currentDate = currentDate.AddDays(1);
        ShowDateInfo();
    }

    // 转到今天
    private void buttonToday_Click(object sender, EventArgs e)
    {
        currentDate = DateTime.Now;
        ShowDateInfo();
    }
}
}

// 宜忌字典
private static readonly Dictionary<int, string> yi = new Dictionary<int, string>
{
{1, "祭祀.入殓.安葬.修坟.立碑.开光.嫁娶.捕捉.纳畜.牧养.理发.理发"},
{2, "祈福.求嗣.结婚.开市.交易.安床.问名.纳采.订盟.竖柱.上梁.会亲友"},
{3,





继续
"开工.动土.出行.移徙.入宅.修造.上梁.安门.安碓硙.筑堤.造桥"},
{4, "订盟.纳采.会亲友.安床.作灶.造畜椆栖"},
{5, "祭祀.祈福.求嗣.入学.开光.出行.起基.定磉.放水.交易.立券.纳财"},
{6, "祭祀.求医.治病.破土.安葬"},
{7, "修造.动土.起基.安门.安床.造庙.祭祀.会亲友.造畜椆栖.牧养"},
{8, "祈福.斋醮.出行.嫁娶.订盟.纳采.入殓.移柩.破土.安葬.立碑.结网.捕捉.畋猎"},
{9, "祭祀.入殓.移柩.启攒.安葬.立碑.开市.交易.立券.纳财.造仓"},
{10, "祭祀.祈福.求嗣.入殓.移柩.立碑.开光.理发"},
{11, "沐浴.破屋.坏垣.余事勿取"},
{12, "祭祀.求医.治病.破土.安葬"}
};

// 宜忌字典
private static readonly Dictionary<int, string> ji = new Dictionary<int, string>
{
{1, "入宅.动土.开仓.出货财.安葬.行丧.伐木.纳畜"},
{2, "祭祀.嫁娶.安床.开市.入学.探病.出火.纳畜.补垣.塞*"},
{3, "动土.伐木.作梁.行丧.安葬.开生坟"},
{4, "嫁娶.纳采.订盟.开市.造仓.作梁.祭祀.修造.动土.竖柱.上梁"},
{5, "安床.出行.嫁娶.移徙.入宅.修造.动土.竖柱.放水.会亲友"},
{6, "开光.出行.嫁娶.进人口.入宅.移徙.动土.安门.上梁.修造.纳财"},
{7, "入宅.上梁.修造.动土.安门.造车器.祭祀.会亲友.





继续
{8, "嫁娶.开市.动土.安床.入宅.上梁.修造.安门.祈福.祭祀.造仓"},
{9, "出行.移徙.入宅.动土.安葬.破土.祭祀.会亲友.安香.启攒"},
{10, "开市.动土.安床.开仓.上梁.修造.入殓.安葬.修坟.立碑.启攒"},
{11, "嫁娶.纳采.订盟.开市.出行.会亲友.牧养.安葬.入殓"},
{12, "祭祀.出行.成服.除服.沐浴.入殓"}
};

// 二十四节气
private static readonly string[] solarTerms =
{
"小寒", "大寒", "立春", "雨水", "惊蛰", "春分", "清明", "谷雨",
"立夏", "小满", "芒种", "夏至", "小暑", "大暑", "立秋", "处暑",
"白露", "秋分", "寒露", "霜降", "立冬", "小雪", "大雪", "冬至"
};

// **
private static readonly string[] zodiac =
{
"鼠", "牛", "虎", "兔", "龙", "蛇", "马", "羊", "猴", "鸡", "狗", "猪"
};

// 天干
private static readonly string[] heavenlyStems =
{
"甲", "乙", "丙", "丁", "戊", "己", "庚", "辛", "壬", "癸"
};

// 地支
private static readonly string[] earthlyBranches =
{
"子", "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥"
};

// 二十八星宿
private static readonly string[] lunarMansion =
{
"角木蛟", "亢金龙", "氐土貉", "房日兔", "心月狐", "尾火虎", "箕水豹", "斗木獬",
"牛金牛", "女土蝠", "虚日鼠", "危月燕", "室火猪", "壁水獝", "奎木狼", "娄金狗",
"胃土雉", "昴日鸡", "毕月乌", "觜火猴", "参水猿", "井木犴", "鬼金羊", "柳土獐",
"星日





继续
// 判断是否闰年
private static bool IsLeapYear(int year)
{
return (year % 4 == 0 && year % 100 != 0) || year % 400 == 0;
}

// 计算阳历年月日对应的星座
private static string GetZodiacSign(DateTime date)
{
int month = date.Month;
int day = date.Day;
switch (month)
{
case 1:
return day <= 20 ? "摩羯座" : "水瓶座";
case 2:
return day <= 19 ? "水瓶座" : "双鱼座";
case 3:
return day <= 20 ? "双鱼座" : "白羊座";
case 4:
return day <= 20 ? "白羊座" : "金牛座";
case 5:
return day <= 21 ? "金牛座" : "双子座";
case 6:
return day <= 21 ? "双子座" : "巨蟹座";
case 7:
return day <= 22 ? "巨蟹座" : "狮子座";
case 8:
return day <= 23 ? "狮子座" : "**座";
case 9:
return day <= 23 ? "**座" : "天秤座";
case 10:
return day <= 23 ? "天秤座" : "天蝎座";
case 11:
return day <= 22 ? "天蝎座" : "射手座";
default:
return day <= 21 ? "射手座" : "摩羯座";
}
}

// 计算指定日期对应的天干地支
private static string GetHeavenlyStemEarthlyBranch(DateTime date)
{
// 以甲子年为起点,获取指定年份的天干地支
int year = date.Year;
int offset = year - 4; // 甲子年为4年周期
int heavenlyStemIndex = (offset % 10) - 1;
if (heavenlyStemIndex < 0) heavenlyStemIndex = 9;
int earthlyBranchIndex = (offset % 12) - 1;
if (earthlyBranchIndex < 0) earthlyBranchIndex = 11;
return heavenlyStems[heavenlyStemIndex] + earthlyBranches[earthlyBranchIndex];
}

// 计算指定日期对应的农历年月日
private static string GetLunarDate(DateTime date)
{
int year = date.Year;
int month = date.Month;
int day = date.Day;
int leapMonth = GetLeapMonth(year); // 获取该年的闰月

scss
Copy code
// 计算1900年到指定年份的总天数
int daysCount = 0;
for (int y = 1900; y < year; y++)
{
    daysCount += IsLeapYear(y) ? 366 : 365;
}

// 计算指定年份1月1日到指定日期的天数




继续
java
Copy code
int daysInMonth = 0;
for (int m = 1; m <= month; m++)
{
    daysInMonth = GetDaysInLunarMonth(year, m, leapMonth);
    if (m == leapMonth + 1 && IsLeapMonth(year, leapMonth))
    {
        daysCount += daysInMonth;  // 如果该年有闰月,并且指定月份是闰月,天数要加上闰月天数
    }
    else
    {
        daysCount += daysInMonth;
    }
}

// 获取指定日期的农历月份和日子
int lunarMonth = 0, lunarDay = 0;
for (int i = 1; i <= 12; i++)
{
    int days = GetDaysInLunarMonth(year, i, leapMonth);
    if (daysCount > days)
    {
        daysCount -= days;
    }
    else
    {
        lunarMonth = i;
        lunarDay = daysCount;
        break;
    }
}

// 返回农历日期的字符串表示
return lunarMonth + "月" + GetLunarDay(lunarDay);
}

// 获取指定农历月份的天数
private static int GetDaysInLunarMonth(int year, int month, int leapMonth)
{
int monthCode = GetLunarMonthCode(year, month, leapMonth);
return monthCode >> 16 == 1 ? 30 : 29;
}

// 获取指定年份的闰月
private static int GetLeapMonth(int year)
{
return lunarInfo[year - lunarStartYear] & 0xf;
}

// 判断指定月份是否是闰月
private static bool IsLeapMonth(int year, int leapMonth)
{
return GetLeapMonth(year) == leapMonth;
}

// 获取指定农历日期的字符串表示
private static string GetLunarDay(int day)
{
string result = "";
if (day == 10)
{
result = "初十";
}
else
{
int d1 = day / 10;
int d2 = day % 10;
if (d1 > 0) result += lunarNumbers[d1];
result += lunarNumbers[d2];
}
return result;
}

// 获取指定农历月份的天干地支编码
private static int GetLunarMonthCode(int year, int month, int leapMonth)
{
int monthCode = (lunarInfo[year - lunarStartYear] & (0x10000 >> month)) != 0 ? 1 : 0;
if (month == leapMonth)
{
monthCode |= (lunarInfo[year - lunarStartYear] & 0x1000) != 0 ? 0x10000 : 0;
}
return monthCode;
}

// 天干数组
private static readonly string[] heavenlyStems = { "甲", "乙", "丙", "丁", "戊", "己", "庚", "辛", "壬", "癸" };
// 地支数组
private static readonly string[] earthlyBranches = { "子", "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥" };
// 农历数字数组
private static readonly string[]





继续
lunarNumbers = {"零", "一", "二", "三", "四", "五", "六", "七", "八", "九", "十", "十一", "十二", "十三", "十四", "十五", "十六", "十七", "十八", "十九", "二十", "廿一", "廿二", "廿三", "廿四", "廿五", "廿六", "廿七", "廿八", "廿九", "三十"};

// 天干地支纪年法起点年份
private static readonly int ganZhiStartYear = 1864;
// 天干地支纪年法起点月份
private static readonly int ganZhiStartMonth = 11;
// 天干地支纪年法起点日子
private static readonly int ganZhiStartDay = 15;

// 获取指定日期的天干地支
public static string GetGanZhi(DateTime date)
{
int offset = GetDaysOffset(date, new DateTime(ganZhiStartYear, ganZhiStartMonth, ganZhiStartDay));
return heavenlyStems[offset % 10] + earthlyBranches[offset % 12];
}

// 获取两个日期间相差的天数
private static int GetDaysOffset(DateTime date1, DateTime date2)
{
return (date1 - date2).Days;
}

// 获取指定日期的星座
public static string GetZodiac(DateTime date)
{
int month = date.Month;
int day = date.Day;
switch (month)
{
case 1:
return day <= 19 ? "摩羯座" : "水瓶座";
case 2:
return day <= 18 ? "水瓶座" : "双鱼座";
case 3:
return day <= 20 ? "双鱼座" : "白羊座";
case 4:
return day <= 19 ? "白羊座" : "金牛座";
case 5:
return day <= 20 ? "金牛座" : "双子座";
case 6:
return day <= 21 ? "双子座" : "巨蟹座";
case 7:
return day <= 22 ? "巨蟹座" : "狮子座";
case 8:
return day <= 22 ? "狮子座" : "**座";
case 9:
return day <= 22 ? "**座" : "天秤座";
case 10:
return day <= 23 ? "天秤座" : "天蝎座";
case 11:
return day <= 22 ? "天蝎座" : "射手座";
case 12:
return day <= 21 ? "射手座" : "摩羯座";
default:
return "";
}
}

// 获取指定日期的节气
public static string GetSolarTerm(DateTime date)
{
int year = date.Year;
int month = date.Month;
int





继续
int day = date.Day;

sql
Copy code
// 计算两个相邻节气之间的天数
double[] solarTermDays = new double[24] { 6.11, 21.06, 5.20, 21.21, 6.06, 22.12, 7.07, 23.07, 8.08, 23.23, 7.08, 23.23, 8.23, 23.08, 7.23, 23.08, 7.23, 22.23, 6.23, 22.07, 5.22, 21.06, 5.21, 21.22, 6.07 };
int startYear = 1900;
int offset = 0;
for (int i = 0; i < 24; i++)
{
    double termDays = 365.2422 * (startYear - 1900) + solarTermDays;
    DateTime termDate = new DateTime(startYear, 1, 1).AddDays(termDays - 1);
    if (termDate.Month == month && termDate.Day == day)
    {
        return solarTerms;
    }
    else if (termDate.Month > month || (termDate.Month == month && termDate.Day > day))
    {
        offset = i - 1;
        break;
    }
}
return solarTerms[offset % 24];
}

// 获取指定日期的阴历日期
public static string GetLunarDate(DateTime date)
{
int year = date.Year;
int month = date.Month;
int day = date.Day;

java
Copy code
LunarDate lunarDate = LunarHelper.SolarToLunar(year, month, day);

// 阳历年份
string solarYear = year.ToString();
// 阴历月份
string lunarMonth = lunarNumbers[lunarDate.Month];
// 阴历日期
string lunarDay = lunarNumbers[lunarDate.Day];

string lunarDateString = lunarMonth + "月" + lunarDay;

// 判断是否为闰月
if (lunarDate.IsLeapMonth)
{
    lunarDateString = "闰" + lunarMonth + "月" + lunarDay;
}

return lunarDateString;
}

// 获取指定日期的宜忌
public static string GetSuitableAndUnsuitable(DateTime date)
{
int year = date.Year;
int month = date.Month;
int day = date.Day;

java
Copy code
string zodiac = GetZodiac(date);
string lunarDate = GetLunarDate(date);
string ganZhi = GetGanZhi(date);

StringBuilder ** = new StringBuilder();

// 宜
**.Append("宜:");
switch (zodiac)
{
    case "鼠":
        **.Append("出行,交友,学习");
        break;
    case "牛":
        **.Append("谈判,理财,投资");
        break;
    case "虎":
        **.Append("旅游,运动,参加社交活动");
        break;
    case "兔":
        **.Append("研究,思考,学习");
        break;
    case "龙":
        **.Append("创业,运动,养生");
        break;
    case "蛇":
        **.Append("旅游,健康,文学");
        break;
    case




继续
kotlin
Copy code
    case "马":
        **.Append("出游,交友,约会");
        break;
    case "羊":
        **.Append("学习,读书,考试");
        break;
    case "猴":
        **.Append("健身,旅游,理财");
        break;
    case "鸡":
        **.Append("参加活动,交友,出游");
        break;
    case "狗":
        **.Append("约会,出游,谈判");
        break;
    case "猪":
        **.Append("办公,学习,理财");
        break;
    default:
        break;
}
**.Append("\n");

// 忌
**.Append("忌:");
switch (ganZhi)
{
    case "甲子":
    case "乙丑":
    case "丙午":
    case "丁巳":
    case "戊辰":
    case "己辰":
    case "庚寅":
    case "辛卯":
    case "壬戌":
    case "癸亥":
        **.Append("开业,入宅,纳财,安葬");
        break;
    case "甲戌":
    case "乙亥":
    case "丙辰":
    case "丁巳":
    case "戊午":
    case "己午":
    case "庚子":
    case "辛丑":
    case "壬申":
    case "癸酉":
        **.Append("嫁娶,订婚,出行,开工");
        break;
    default:
        break;
}

return **.ToString();
}

// 获取指定日期的八字信息
public static string GetBazi(DateTime date)
{
int year = date.Year;
int month = date.Month;
int day = date.Day;

vbnet
Copy code
LunarDate lunarDate = LunarHelper.SolarToLunar(year, month, day);

int solarTermIndex = GetSolarTermIndex(date);
string solarTerm = solarTerms[solarTermIndex];
string zodiac = GetZodiac(date);
string lunarDateStr = GetLunarDate(date);
string ganZhi = GetGanZhi(date);

StringBuilder ** = new StringBuilder();
**.Append("阳历:" + date.ToString("yyyy年MM月dd日") + "\n");
**.Append("阴历:" + lunarNumbers[lunarDate.Month] + "月" + lunarNumbers[lunarDate.Day] + "\n");
if (lunarDate.IsLeapMonth)
{
    **.Append("(闰)");
}
**.Append("**:" + zodiac + "\n");
**.Append("节气:" + solarTerm + "\n");
**.Append("干支:" + ganZhi + "\n");
**.Append(GetSuitableAndUnsuitable(date) + "\n");

return **.ToString();
}

// 测试
static void Main(string[] args)
{
DateTime date = new DateTime(2023, 3, 10);
Console.WriteLine(GetBazi(date));
}
三国情论坛(975w.com)典藏你的美好回忆。年代虽久远,好剧永流传!只要人人都献出一部剧,论坛将变成美好的回忆!
回复

拉黑 使用道具 举报

主题
326
战斗力
2470
美誉度
318
铜钱
12848
注册时间
2022-5-24
最后登录
2024-3-29
在线时间
189 小时
发表于 2023-3-10 09:56:27 | 显示全部楼层
它每次只能输出一小段。
我让它一直继续,你可以把中间的继续字样删除,就是一个大程序。
如果没有完全达到你的要求的话,你可以修改提问内内容,写得更详细一些。
或者拆成几个小功能来问,比如让它给你写一批功能小函数之类的。
有需求的话,请继续悬赏
三国情论坛(975w.com)典藏你的美好回忆。年代虽久远,好剧永流传!只要人人都献出一部剧,论坛将变成美好的回忆!
回复

拉黑 使用道具 举报

主题
1697
战斗力
18065
美誉度
480
铜钱
6376
注册时间
2022-3-27
最后登录
2024-3-29
在线时间
170 小时

阳光心情动漫达人摸金校尉荣誉会员优秀会员普通精华

 楼主| 发表于 2023-3-10 10:27:08 | 显示全部楼层
tiger008 发表于 2023-3-10 09:56
它每次只能输出一小段。
我让它一直继续,你可以把中间的继续字样删除,就是一个大程序。
如果没有完全达到 ...

好的谢谢,我先消化一下它。
唵嘛呢叭咪吽
回复

拉黑 使用道具 举报

主题
1697
战斗力
18065
美誉度
480
铜钱
6376
注册时间
2022-3-27
最后登录
2024-3-29
在线时间
170 小时

阳光心情动漫达人摸金校尉荣誉会员优秀会员普通精华

 楼主| 发表于 2023-3-10 11:16:27 | 显示全部楼层
tiger008 发表于 2023-3-10 09:56
它每次只能输出一小段。
我让它一直继续,你可以把中间的继续字样删除,就是一个大程序。
如果没有完全达到 ...

你看看是不是少了什么,我**进去一片红(报错) 11-13-43.jpg
唵嘛呢叭咪吽
回复

拉黑 使用道具 举报

主题
326
战斗力
2470
美誉度
318
铜钱
12848
注册时间
2022-5-24
最后登录
2024-3-29
在线时间
189 小时
发表于 2023-3-10 11:22:37 | 显示全部楼层
本帖最后由 tiger008 于 2023-3-10 11:26 编辑

它生成的都发给你了。
如果某个功能函数有问题的话,可以让它再生成一下。
chatGPT每次生成的东西都不一样,你需要的话,可以再悬赏一次,
我给你从头再生成一版。


三国情论坛(975w.com)典藏你的美好回忆。年代虽久远,好剧永流传!只要人人都献出一部剧,论坛将变成美好的回忆!
回复

拉黑 使用道具 举报

主题
1697
战斗力
18065
美誉度
480
铜钱
6376
注册时间
2022-3-27
最后登录
2024-3-29
在线时间
170 小时

阳光心情动漫达人摸金校尉荣誉会员优秀会员普通精华

 楼主| 发表于 2023-3-10 11:46:49 | 显示全部楼层
tiger008 发表于 2023-3-10 11:22
它生成的都发给你了。
如果某个功能函数有问题的话,可以让它再生成一下。
chatGPT每次生成的东西都不一样 ...

https://www.975w.com/thread-430000-1-1.html
唵嘛呢叭咪吽
回复

拉黑 使用道具 举报

主题
326
战斗力
2470
美誉度
318
铜钱
12848
注册时间
2022-5-24
最后登录
2024-3-29
在线时间
189 小时
发表于 2023-3-10 11:51:33 | 显示全部楼层
杜净隆 发表于 2023-3-10 11:46
https://www.975w.com/thread-430000-1-1.html

回复了,你先结贴吧
三国情论坛(975w.com)典藏你的美好回忆。年代虽久远,好剧永流传!只要人人都献出一部剧,论坛将变成美好的回忆!
回复

拉黑 使用道具 举报

主题
1697
战斗力
18065
美誉度
480
铜钱
6376
注册时间
2022-3-27
最后登录
2024-3-29
在线时间
170 小时

阳光心情动漫达人摸金校尉荣誉会员优秀会员普通精华

 楼主| 发表于 2023-3-10 11:51:42 | 显示全部楼层
tiger008 发表于 2023-3-10 11:22
它生成的都发给你了。
如果某个功能函数有问题的话,可以让它再生成一下。
chatGPT每次生成的东西都不一样 ...

兄弟,一定要**全,我是个命理师。
唵嘛呢叭咪吽
回复

拉黑 使用道具 举报

主题
326
战斗力
2470
美誉度
318
铜钱
12848
注册时间
2022-5-24
最后登录
2024-3-29
在线时间
189 小时
发表于 2023-3-10 12:00:38 | 显示全部楼层
杜净隆 发表于 2023-3-10 11:51
兄弟,一定要**全,我是个命理师。

我**全了。你先结贴吧。
三国情论坛(975w.com)典藏你的美好回忆。年代虽久远,好剧永流传!只要人人都献出一部剧,论坛将变成美好的回忆!
回复

拉黑 使用道具 举报

严禁灌水、讽刺、挖苦、辱骂分享者行为。回复前请详读:点击进入 理性回复,以免永久封禁。
您需要登录后才可以回帖 登录 | 注册入口

本版积分规则

免责声明:本站所有资源均收集自互联网,没有提供影片资源存储,也未参与录制、上传。若本站收录的资源涉及您的版权或知识产权或其他利益,请附上版权证明邮件告知,在收到邮件后24小时内删除。

Copyright © 2021 [三国情] 管理员邮箱:97889527#qq.com(#=@)

三国情QQ交流群|剧情吧|sitemap|手机版|小黑屋|百度:三国情论坛|冀ICP备2022008602号-3|大赛排行|三国情 |网站地图

快速回复 返回顶部 返回列表