1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 小朋友学算法(15):计算年份的天干地支

小朋友学算法(15):计算年份的天干地支

时间:2024-02-21 22:25:05

相关推荐

小朋友学算法(15):计算年份的天干地支

十天干:甲、乙、丙、丁、戊、己、庚、辛、壬、癸;

十二地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥。

天干地支纪年法首先是天干在前,地支在后,比如今年就是戊戌年。

天干算法:

4、5、6、7、8、9、0、1、2、3对应的十天干就是

甲、乙、丙、丁、戊、己、庚、辛、壬、癸,

这里的数字是年份的最后的一位数字,比如,最后一位是8,对应的天干就是戊。

地支算法:

用年代数除以12,后面的余数就代表某个地支,

余数分别为:4、 5、 6、 7、 8、 9、 10、 11、 0(能整除)、1、 2、3,

代表地支为:子、丑、寅、卯、辰、巳、午、 未、 申、酉、戌、亥

以为例, % 12 = 2,对应的地支就是戌。所以是戊戌年。

实现代码:

#include<iostream>using namespace std;int main(){long long year;cin >> year; // 输入年份// A-甲,B-乙,C-丙,D-丁,E-戊,F-己,G-庚,H-辛,I-壬,J-癸 char a[10] = {'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'};// 1-子,2-丑,3-寅,4-卯,5-辰,6-巳,7-午,8-未,9-申,10-酉,11-戌,12-亥int b[12] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};int single = year % 10; // 天干是求个位数int index = (single - 4 + 10) % 10;cout << a[index];int mod = year % 12;// 地支是求除以12的余数index = (mod - 4 + 12) % 12;cout << b[index] << endl;return 0;}

运行结果:

第一组:

E11

第二组:

2384036917920G9

少儿编程QQ群:581357582,少儿英语QQ群:952399366,微信:307591841

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。