|
[C++] 纯文本查看 复制代码 #include <bits/stdc++.h>
using namespace std;
int i[2][13]={0,31,28,31,30,31,30,31,31,30,31,30,31,
0,31,29,31,30,31,30,31,31,30,31,30,31};
int a;
int rn(int t)
{
int t1;
if (t % 4 == 0)
{
if (t % 100 == 0)
{
if (t % 400 == 0)
t1=1;
else
t1=0;
}
else
t1=1;
}
else
t1=0;
return t1;
}
int rqjs(int y,int m,int d)
{
int s=0;
for(int j=0;j<m;j++)
{
s=s+i[rn(y)][j];
}
s=s+d;
return s;
}
int week(int n)
{
int s=4;
s=(s+n)%7;
if(s==0) s=7;
return s;
}
int main()
{
cin>>a;
printf("%d",week(a));
return 0;
}
[C++] 纯文本查看 复制代码 void xingqitongji()//星期统计
{
int week[7]={0};
int y1,m1,d1,n,w;
int n1=0,y1t;
int mon[2][12]={31,28,31,30,31,30,31,31,30,31,30,31,
31,29,31,30,31,30,31,31,30,31,30,31};
cin>>n;
y1=1900;
m1=1;
d1=1;
if(runnian(y1)) y1t=1;//如果y1是闰年,则y1t=1 否则等于0
else y1t=0;
while(1)
{
n1++;
d1++;//几号
if(d1==13)
{
w=(n1%7+1)%7//如果是13号,就将这个星期的个数加一
week[w]++;
}
if(d1==mon[y1t][m1-1]+1)
{
m1++;//月份加一
d1=1;//号等于1
if(m1==13)//如果月份是13
{
y1++;//年份加一
m1=1;//月份大于1
if(runnian(y1)) y1t=1;//如果y1是闰年,则y1t=1
else y1t=0;//否则等于0
}
}
if((y1==(1900+n-1))&&(m1==12)&&(d1==31))//如果年份等于1900+n-,且月份等于12,日期等于31
{
break;//跳出循环
}
}
cout<<week[6]<<' ';//周六
for(int i=0;i<6;i++)
cout<<week[i]<<' ';
}
void xingqitongji2()//星期统计
{
int week[7]={0};
int y1,m1,d1,n,w;
int n1=0,y1t;
int mon[2][12]={31,28,31,30,31,30,31,31,30,31,30,31,
31,29,31,30,31,30,31,31,30,31,30,31};
cin>>n;
y1=1900;
m1=1;
d1=1;
if(runnian(y1)) y1t=1;
else y1t=0;
while(1)
{
w=((n1+12)%7+1)%7;
week[w]++;
n1+=mon[y1t][m1-1];
if((y1==(1900+n-1))&&(m1==12))
{
break;
}
m1++;
if(m1==13)
{
y1++;
m1=1;
if(runnian(y1)) y1t=1;
else y1t=0;
}
}
cout<<week[6]<<' ';
for(int i=0;i<6;i++)
cout<<week[i]<<' ';
}
//七分甜的秋刀鱼 |
|