toj3251 Day of Week 附判断闰年的方法
2013-09-26 11:53
615 查看
题目链接:http://acm.tju.edu.cn/toj/showp.php?pid=3251
题目大意:给定2009年的某日某月,判断那天是星期几,其中用例输出中给出里1月1日是星期四
思路:(1)算现在到1月1日的天数,再余7即可,余1即为星期四,后面的依次递增。对于每个月的天数,打表,平年的时候,2月为28天,其他的,“一 三 五 七 八 十 腊 三十一天永不差”
(2)判断是否为闰年,是(4的倍数但不是100的倍数)或者是400的倍数 就是闰年
代码:
#include <iostream>
using namespace std;
int main()
{
int a[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int i,d,m;
while(cin>>d>>m)
{
int sum = d;
for(i=0;i<m-1;i++)
sum+=a[i];
switch(sum%7) //switch 用法
{
case 1:cout<<"Thursday"<<endl;break;
case 2:cout<<"Friday"<<endl;break;
case 3:cout<<"Saturday"<<endl;break;
case 4:cout<<"Sunday"<<endl;break;
case 5:cout<<"Monday"<<endl;break;
case 6:cout<<"Tuesday"<<endl;break;
case 0:cout<<"Wednesday"<<endl;break;
default:break;
}
}
return 0;
}
判断闰年代码:
if(year%400==0||(year%4==0 && year%100!=0)){
cout<<year<<" 是闰年!!!!"<<endl;
}else{
cout<<year<<"是平年!!!!"<<endl;
}
题目大意:给定2009年的某日某月,判断那天是星期几,其中用例输出中给出里1月1日是星期四
思路:(1)算现在到1月1日的天数,再余7即可,余1即为星期四,后面的依次递增。对于每个月的天数,打表,平年的时候,2月为28天,其他的,“一 三 五 七 八 十 腊 三十一天永不差”
(2)判断是否为闰年,是(4的倍数但不是100的倍数)或者是400的倍数 就是闰年
代码:
#include <iostream>
using namespace std;
int main()
{
int a[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int i,d,m;
while(cin>>d>>m)
{
int sum = d;
for(i=0;i<m-1;i++)
sum+=a[i];
switch(sum%7) //switch 用法
{
case 1:cout<<"Thursday"<<endl;break;
case 2:cout<<"Friday"<<endl;break;
case 3:cout<<"Saturday"<<endl;break;
case 4:cout<<"Sunday"<<endl;break;
case 5:cout<<"Monday"<<endl;break;
case 6:cout<<"Tuesday"<<endl;break;
case 0:cout<<"Wednesday"<<endl;break;
default:break;
}
}
return 0;
}
判断闰年代码:
if(year%400==0||(year%4==0 && year%100!=0)){
cout<<year<<" 是闰年!!!!"<<endl;
}else{
cout<<year<<"是平年!!!!"<<endl;
}
相关文章推荐
- 简单的四则运算
- 数的奇偶性
- 1272 小希的迷宫
- 1272 小希的迷宫
- hdu 1250 大数相加并用数组储存
- 求两个数的最大公约数【ACM基础题】
- 打印出二进制中所有1的位置
- 杭电题目---一只小蜜蜂
- NWERC2010 NKOJ2178 Stock Prices
- 2011ACM福州网络预选赛B题 HDU4062 Abalone
- Codeforces Round #197 (Div. 2)
- Codeforces Round #198 (Div. 1)
- ACM常用算法
- 2013 Multi-University Training Contest 1
- ACM/ICPC需要掌握的知识[转载]
- 北大—1006——Biorhythms
- Gridland (初试ACM)
- Digital Roots
- Word Reversal
- 新手UVa 10250 The Other Two Tree && 10050 Hartals