★实验任务
看完电影《2012》 ,小c 相信 2012年12 月21 日将会是世界末日,于是他每天都
在计算离世界末日还有几天。但是他觉得计算太麻烦了,希望让你写一个程序帮帮
他。
你需要编写一个日期类,实现计算当前日期距离 2012 年 12 月 21 日还有几天的功
能。
★数据输入
数据采用标准输入输出。输入的日期格式为“YYYY-MM-DD”(数据保证该日期合法,
并且在2012年12 月21 日之前)。
★数据输出
输出所给日期距离2012年 12月21 日的天数。
输入示例
2010-01-01
输出示例
1085
此题与杭电2005做法相似,只要稍微改一下就可以了,就是要对日期在2012之前和之后的分类讨论!!!
#include <iostream>
#include <stdio.h>
using namespace std;
int judge(int a)
{
int
b=365;
if(a@0==0||a%4==0&&a0!=0)
return
b+1;
else return b;
}
int gao(int a,int b,int c)
{
int g;
if(a@0==0||a%4==0&&a0!=0)
g=29;
else g=28;
return
c+g*(b>2)+31*((b>1)+(b>3)+(b>5)+(b>7)+(b>8)+(b>10)+(b>12))+30*(+(b>4)+(b>6)+(b>9)+(b>11));
}
int main()
{
int a,b,c;
int day=0;
scanf("%d-d-d",&a,&b,&c);
if(a<2012) // 2012年之前
{
day=judge(a)-gao(a,b,c);
for (int i=a+1;i<2012;i++)
day+=judge(i);
day+=gao(2012,12,21);
}
else
// 2012年之后至12月21日
day=gao(2012,12,21)-gao(a,b,c);
cout<<day<<endl;
return 0;
}
看完电影《2012》 ,小c 相信 2012年12 月21 日将会是世界末日,于是他每天都
在计算离世界末日还有几天。但是他觉得计算太麻烦了,希望让你写一个程序帮帮
他。
你需要编写一个日期类,实现计算当前日期距离 2012 年 12 月 21 日还有几天的功
能。
★数据输入
数据采用标准输入输出。输入的日期格式为“YYYY-MM-DD”(数据保证该日期合法,
并且在2012年12 月21 日之前)。
★数据输出
输出所给日期距离2012年 12月21 日的天数。
输入示例
2010-01-01
输出示例
1085
此题与杭电2005做法相似,只要稍微改一下就可以了,就是要对日期在2012之前和之后的分类讨论!!!
#include <iostream>
#include <stdio.h>
using namespace std;
int judge(int a)
{
}
int gao(int a,int b,int c)
{
}
int main()
{
}