“入伏”。伏是隐藏的意思,据《史记》文字记载,“伏者,隐伏避盛夏也”。“三伏”是指初伏、中伏和末伏的统称,大约在7月中旬到8月中旬这一段时间。古代创立的农历是用天干、地支排列年、月、日的,天干由:甲乙丙丁戊己庚辛壬癸十个字组成,地支由:子丑寅卯辰巳午未申酉戌亥十二个字组成。 按规定,从“夏至”日开始算起的第3个“庚日”为入伏,并作为“头伏”的第1天,第4个“庚日”定为“中伏”第一天;从“立秋”开始算起的第1个“庚日”为“末伏”的始日,第2个庚日定为出伏,即伏天结束。注:当夏至与立秋之间出现4个庚日时,中伏为10天,出现5个庚日时,中伏则为20天。 2012年夏至与立秋之间是4个庚日,所以“三伏天”是30天。2012年“夏至”是6月21日7时45分(农历5月3日),“夏至”后的第3个“庚日”出现在7月18日,即这一天入伏为头伏第一天。7月28日入“中伏”;“立秋”后第1个“庚日”为8月7日,这一天是“末伏”第一天。 具体时间是:2012年7月18日~7月27日为头伏10天2012年7月28日~8月6日为中伏10天2012年8月7日~8月16日为三伏10天(末伏)另:2012年阳历6月21日,农历5月3日。从这一天的凌晨7时45分开始,进入夏至节气。 这一天我们北半球白天时间最长,夜晚时间最短。。
阅读全文 >立秋固定为每年的8月7号(闰年)或8月8号,这不变的。你问的问题就是“伏”的问题了“三伏”是初伏、中伏和末伏的统称,是一年中最热的时节。每年出现在阳历7月中旬到8月中旬。其气候特点是气温高、气压低、湿度大、风速小。“伏”表示阴气受阳气所迫藏伏地下。按我国阴历(农历)气候规律,前人早有规定:“夏至后第三个庚日开始为头伏(初伏),第四个庚日为中伏(二伏),立秋后第一个庚日为末伏(三伏),每伏十天共三十天。”有的年份“中伏”为二十天,则共有四十天。显然,规定三伏在立秋左右,而不是你所记的二伏
压缩节气数据表:
根据规律可以得到四个数据表(每个阳历月有两个节气,每个节气需要两个数据表):
const unsigned char calendar_solar_term_table_01[12][33] = {
{7,6,6,6,6,6,6,6,6,5,6,6,6,5,5,6,6,5,5,5,5,5,5,5,5,4,5,5}, //month 1
{5,4,5,5,5,4,4,5,5,4,4,4,4,4,4,4,4,3,4,4,4,3,3,4,4,3,3,3}, //2
{6,6,6,7,6,6,6,6,5,6,6,6,5,5,6,6,5,5,5,6,5,5,5,5,4,5,5,5,5}, //3
{5,5,6,6,5,5,5,6,5,5,5,5,4,5,5,5,4,4,5,5,4,4,4,5,4,4,4,4,5}, //4
{6,6,6,7,6,6,6,6,5,6,6,6,5,5,6,6,5,5,5,6,5,5,5,5,4,5,5,5,5}, //5
{6,6,7,7,6,6,6,7,6,6,6,6,5,6,6,6,5,5,6,6,5,5,5,6,5,5,5,5,4,5,5,5,5}, //6
{7,8,8,8,7,7,8,8,7,7,7,8,7,7,7,7,6,7,7,7,6,6,7,7,6,6,6,7,7}, //7
{8,8,8,9,8,8,8,8,7,8,8,8,7,7,8,8,7,7,7,8,7,7,7,7,6,7,7,7,6,6,7,7,7}, //8
{8,8,8,9,8,8,8,8,7,8,8,8,7,7,8,8,7,7,7,8,7,7,7,7,6,7,7,7,7}, //9
{9,9,9,9,8,9,9,9,8,8,9,9,8,8,8,9,8,8,8,8,7,8,8,8,7,7,8,8,8}, //10
{8,8,8,8,7,8,8,8,7,7,8,8,7,7,7,8,7,7,7,7,6,7,7,7,6,6,7,7,7}, //11
{7,8,8,8,7,7,8,8,7,7,7,8,7,7,7,7,6,7,7,7,6,6,7,7,6,6,6,7,7}, //12
}; //这个数据表表示了每个月第一个节气出现的规律
const unsigned char calendar_solar_term_year_01[12][9] = {
{13,49,85,117,149,185,201,250,250}, //month 1
{13,45,81,117,149,185,201,250,250}, //2
{13,48,84,112,148,184,200,201,250}, //3
{13,45,76,108,140,172,200,201,250}, //4
{13,44,72,104,132,168,200,201,250}, //5
{5 ,33,68,96 ,124,152,188,200,201}, //6
{29,57,85,120,148,176,200,201,250}, //7
{13,48,76,104,132,168,196,200,201}, //8
{25,60,88,120,148,184,200,201,250}, //9
{16,44,76,108,144,172,200,201,250}, //10
{28,60,92,124,160,192,200,201,250}, //11
{17,53,85,124,156,188,200,201,250}, //12
}; //这个数据表表示了每个月第一个节气出现规律对应的阳历年份范围
const unsigned char calendar_solar_term_table_02[12][29] = {
{21,21,21,21,21,20,21,21,21,20,20,21,21,20,20,20,20,20,20,20,20,19,20,20,20,19
,1
9,20},
{20,19,19,20,20,19,19,19,19,19,19,19,19,18,19,19,19,18,18,19,19,18,18,18,18,18
,1
8,18},
{21,21,21,22,21,21,21,21,20,21,21,21,20,20,21,21,20,20,20,21,20,20,20,20,19,20
,2
0,20,20},
{20,21,21,21,20,20,21,21,20,20,20,21,20,20,20,20,19,20,20,20,19,19,20,20,19,19
,1
9,20,20},
{21,22,22,22,21,21,22,22,21,21,21,22,21,21,21,21,20,21,21,21,20,20,21,21,20,20
,2
0,21,21},
{22,22,22,22,21,22,22,22,21,21,22,22,21,21,21,22,21,21,21,21,20,21,21,21,20,20
,2
1,21,21},
{23,23,24,24,23,23,23,24,23,23,23,23,22,23,23,23,22,22,23,23,22,22,22,23,22,22
,2
2,22,23},
{23,24,24,24,23,23,24,24,23,23,23,24,23,23,23,23,22,23,23,23,22,22,23,23,22,22
,2
2,23,23},
{23,24,24,24,23,23,24,24,23,23,23,24,23,23,23,23,22,23,23,23,22,22,23,23,22,22
,2
2,23,23},
{24,24,24,24,23,24,24,24,23,23,24,24,23,23,23,24,23,23,23,23,22,23,23,23,22,22
,2
3,23,23},
{23,23,23,23,22,23,23,23,22,22,23,23,22,22,22,23,22,22,22,22,21,22,22,22,21,21
,2
2,22,22},
{22,22,23,23,22,22,22,23,22,22,22,22,21,22,22,22,21,21,22,22,21,21,21,22,21,21
,2
1,21,22},
}; //这个数据表表示了每个月第二个节气出现的规律
const unsigned char calendar_solar_term_year_02[12][8] = {
{13,45,81,113,149,185,201},{21,57,93,125,161,193,201},
{21,56,88,120,152,188,200,201},
{21,49,81,116,144,176,200,201},{17,49,77,112,140,168,200,201},
{28,60,88,116,148,180,200,201},{25,53,84,112,144,172,200,201},
{29,57,89,120,148,180,200,201},{17,45,73,108,140,168,200,201},
{28,60,92,124,160,192,200,201},{16,44,80,112,148,180,200,201},
{17,53,88,120,156,188,200,201},};
//这个数据表表示了每个月第二个节气出现规律对应的阳历年份范围
每个阳历月对应的两个农历节气出现的日期,可根据条件规律算法,分别由以下两个函数?
?
现:
unsigned char calendar_calculate_solar_term_1(void)
{
zpage unsigned char done_index;
zpage unsigned char solar_term;
done_index = 0;
while(gc_solar_calendar_year >= calendar_solar_term_year_01
[gc_solar_calendar_month - 1][done_index]) {done_index++;}
solar_term = calendar_solar_term_table_01[gc_solar_calendar_month - 1]
[4*done_index + gc_solar_calendar_year%4];
if((gc_solar_calendar_year == 121)&&(gc_solar_calendar_month == 4))solar_term
=
5;
if((gc_solar_calendar_year == 132)&&(gc_solar_calendar_month == 4))solar_term
=
5;
if((gc_solar_calendar_year == 194)&&(gc_solar_calendar_month == 6))solar_term
=
6;
return(solar_term);
} //计算阳历月对应的第一个节气
unsigned char calendar_calculate_solar_term_2(void)
{
zpage unsigned char done_index;
zpage unsigned char solar_term;
done_index = 0;
while(gc_solar_calendar_year >= calendar_solar_term_year_02
[gc_solar_calendar_month - 1][done_index]){done_index++;}
solar_term = calendar_solar_term_table_02[gc_solar_calendar_month - 1]
[4*done_index + gc_solar_calendar_year%4];
if((gc_solar_calendar_year == 171)&&(gc_solar_calendar_month == 3))solar_term
=
21;
if((gc_solar_calendar_year == 181)&&(gc_solar_calendar_month == 5))solar_term
=
21;
return(solar_term);
} //计算阳历月对应的第二个节气
这个算法其实就是一个查表,原理很简单,只是这个表格初看很多人看不明白,我对照了一些其他的表格然后根据它下面的查表程序推出了上面表格的格式.
首先,他有4个表格组成,每月首节气规律,首节气对应年限范围,每月次节气规律,次节气对应年限范围.
首先说首节气规律,通过分析其他比较明了的节气表格得知,首节气以四年为一个周期循环,在若干年范围内周期一致,以一月为例,第一个节气是小寒,从1900年起小寒在一月的日期为: 年份 小寒日期 规律
1900 1月7日 7
1901 1月6日 6
1902 1月6日 6
1903 1月6日 6
1904 1月7日 7
1905 1月6日 6
1906 1月6日 6
1907 1月6日 6
1908 1月7日 7
1909 1月6日 6
1910 1月6日 6
1911 1月6日 6
1912 1月7日 7
即从1900~1912年一月小寒节气日期的规律是7,6,6,6.同理得出1913~1948年一月小寒节气日期规律是6,6,6,6.1949~1984年一月小寒节气日期规律是5,6,6,6.1985~2016年规律是5,5,6,6.以此类推……
得到这个规律后要考虑如何让他跟年份挂钩,由于是4年一个周期,很自然会想到year%4,但是year%4的取值范围是0~3,而得到的规律里面的year%4除了第一个年份范围(1900~1912)其余的都是1,2,3,0,所以将规律稍作改动,把第四个数字提前组成数组就得到了一月份第一个节气小寒的日期出现规律{7,6,6,6, 6,6,6,6, 6,5,6,6, 6,5,5,6, 6,5,5,5, 5,5,5,5, 5,4,5,5},以及年份范围规律{13,49,85,117,149,185,201,250,250},其中数字为当前年份与1900年之差.其他月份,第二个节气表格规律同上.
按照程序看:
需要修正的是250年中有几个月的跟规律相左,查表后单独修正即可.
2021年四月第一个节气是5号,2032年四月第一个节气是5号,2094年六月第一个节气是6号;
2071年三月第二个节气是21号,2081年五月第二个节气是21号.
但是通过在网上本查询得到的结果却是不需要修正,至少以上这些日期不需要.
2012年立秋时间是08月07日10:30:32时间:08月7~9日三候:凉风至、白露降、寒蝉鸣。简介:北斗指向西南。太阳黄经为135°。从这一天起秋天开始,秋高气爽,月明风清。此后,气温由最热逐渐下降。
2012年的入伏是7月14日,也是初伏的第一天。
2012年7月24日是中伏的第一天,8月13日是末伏的第一天。
平年入伏的日期只能是上一年入伏日期提前或延后5天。
扩展资料:
在伏天我们的饮食习惯上都要做一些准备,少吃一些辛辣刺激油腻的食物,多吃一些清热解暑的食物,有助于健康度过伏天。
水果:
1、火龙果
火龙果性质甘凉,具有一定的消暑解渴的作用,是适合夏季食用的水果之一,并且火龙果中还含有丰富的纤维素、维生素等有效成分,食用还可以补充营养、润肠通便、美白养颜。
2、樱桃
樱桃是一种营养丰富的水果,水分充足、酸甜可口,并且还含有极高的铁元素,非常适合夏季食用。
蔬菜:
1、苦瓜
伏天的气候炎热,很容易导致人们心烦气躁、食欲不振、上火等症状,而苦瓜就是一种极好的降火蔬菜,如附后食用苦瓜可以消暑解乏、健脾开胃,有助于我们的身体健康。
2、西红柿
西红柿是一种非常适合夏季食用的蔬菜,西红柿中含有丰富的维生素、番茄红素等有效成分,不仅营养们还具有一定的抗紫外线的作用。
肉类:
1、羊肉
羊肉性质温热具有极好的温补作用,在三伏天食用羊肉可以疏散身体中的寒气、疏通经脉,有利于保健身体。
2、鸡肉
鸡肉是一种高蛋白的肉类,并且非常容易被人体吸收,三伏天食用鸡肉不易上火,并且还能补充身体营养。