13 號又是星期五是乙個不尋常的日子嗎?
13 號在星期五比在其他日少嗎?為了回答這個問題,寫乙個程式來計算在 n 年裡 13 日落在星期一,星期二…星期日的次數.這個測試從 1900 年 1 月 1 日到 1900+n-1 年 12 月 31 日.n 是乙個非負數且不大於 400.
這裡有一些你要知道的: 1900 年 1 月 1日是星期一.
4,6,11 和 9 月有 30天.其他月份除了 2 月有 31 天.閏年 2 月有 29 天,平年 2 月有 28 天.
年份可以被 4 整除的為閏年(1992=4*498 所以 1992 年是閏年,但是 1990 年不是閏年)
以上規則不適合於世紀年.可以被 400 整除的世紀年為閏年,否則為平年.所以,1700,1800,1900 和 2100 年是平年,而 2000 年是閏年.
請不要預先算好資料!
輸入格式:
乙個整數 n.
輸出格式:
七個在一行且相分開的整數,它們代表 13 日是星期六,星期日,星期一…星期五的次數.
輸入樣例1:
在這裡給出一組輸入。例如:
輸出樣例1:在這裡給出相應的輸出。例如:
36 33 34 33 35 35 34輸入樣例2: 輸出樣例2:
4 3 2 4 4 3 4輸入樣例3: 輸出樣例3:
9 9 7 9 9 8 9【源**】
#include
using
namespace std;
boollp(
int n)
// 判斷第n年是否為閏年
else
}int
main()
;int current =0;
// 記錄當前13號為星期幾
int months_day[12]
=;current =5;
// 2023年01月13日為星期六
days[current]++;
for(
int i =
1900
; i <=
(1900
+ n -1)
; i++
)else
// 平年
for(
int month =
0; month <12;
++month)
} days[current]--;
// 最後乙個月的13號是超過所規定的最大日期:(1900+n-1)年12月31日,不能算入其中,要把之前多加的減去;
cout << days[5]
<<
" "<< days[6]
;// 按星期
六、日、一、二、三、四、五的順序輸出;
for(
int i =
0; i <
5; i++
) cout << endl;
return0;
}
黑色星期五
在西方,星期五和數字 13都代表著壞運氣,兩個不幸的個體最後結合成超級不幸的一天。所以,不管哪個月的十三日又恰逢星期五就叫 黑色星期五 要求 輸入年份,輸出是 判斷該年是否包含黑色星期五,如包含,給出具體日期 includeint main int b 13 閏年時 int n 0,i,year s...
黑色星期五
13號又是星期五是乙個不尋常的日子嗎?13號在星期五比在其他日少嗎?為了回答這個問題,寫乙個程式來計算在n年裡13日落在星期一,星期二.星期日的次數.這個測試從1900年1月1日到1900 n 1年12月31日.n是乙個非負數且不大於400.這裡有一些你要知道的 1900年1月1日是星期一.4,6,...
黑色星期五
水題 問題描述 有些西方人比較迷信,如果某個月的13號正好是星期五,他們就會覺得不太吉利,用古人的說法,就是 諸事不宜 請你編寫乙個程式,統計出在某個特定的年份中,出現了多少次既是13號又是星期五的情形,以幫助你的迷信朋友解決難題。說明 1 一年有365天,閏年有366天,所謂閏年,即能被4整除且不...