之前也據說過黑色星期五,既是13號,又是星期五,這彷佛這是個不詳的日子,這個題目要咱們經過計算了解一下黑色星期五是否有特別之處:計算是13號又是星期五的天數,以及13號,其餘六天的天數,看看黑色星期五的天數是否特別些。要求計算從1900年1月1號開始,到1990+n-1年12月31號結束。已知1900年1月1號是星期一,要注意考慮平年閏年。輸入爲一個小於400的非負整數n,輸出爲7個不一樣天的天數。spa
/* ID: whutzha1 PROG: friday LANG: C++ */ #include<fstream> using namespace std; ifstream cin("friday.in"); ofstream cout("friday.out"); int main() { int year=1900; int month_day,date,month; date=(13-1+1)%7; int arr[7]; int i,n; bool leap; for (i=0;i<7;i++) arr[i]=0; cin>>n; arr[date]++; while (year<1900+n) { month=1; if((year%4==0&&year%100!=0)||year%400==0) leap=true; else leap=false; while(month<=12) { switch (month) { case 4: case 6: case 9: case 11: month_day=30;break; case 1: case 3: case 5: case 7: case 8: case 10: case 12: month_day=31;break; case 2: if (leap) month_day=29; else month_day=28; break; default: break; } month=month++; date=(date+month_day)%7; arr[date]++; } year++; } arr[date]--; for (i=6;i<12;i++) { cout<<arr[i%7]<<' '; } cout<<arr[5]<<endl; return 0; }
百度了一下,黑色星期五之因此爲黑色星期五,只是由於在西方國家中星期五和13都是不吉利的數字,而這兩個不幸的數字疊加在一塊兒,就成了大大的不幸,因此這樣的日子被稱爲黑色星期五!而事實上,這個黑色星期五在天數上也沒什麼特別之處,和其餘的天的天數差很少罷了!code