1. 程式人生 > >計蒜客-判斷日期是否符合格式

計蒜客-判斷日期是否符合格式

  我們知道一年有12個月,每個月最多有31天,年有平年和閏年之分,本題目要求如果輸入一個日期,程式需要判斷使用者輸入的日期是否正確。

輸入

  使用者輸入是三個數字,分別表示年,月和日。 例如 2007 10 21 ,表示2007年10月21日,這個輸入經過判斷是正確的。又例如輸入 1993 11 38 ,這個輸入經過判斷是錯誤的,因為日期不能超過31天。

輸出

  程式的輸出分為兩種,1或者0。1表示輸入正確,0表示輸入錯誤

提示:測試輸入的三個數字中,年份是正數,月份和日期有可能是負數,程式需要對這兩個數為負數的情況進行判斷

樣例輸入

  2011 21 10

樣例輸出

  0

程式碼如下

#include <iostream>
using namespace std;
int main()
{
	int year,month,day;
	cin>>year>>month>>day;
	if(month>0&&month<=12&&day<=31&&day>0)   
	{
	        if(year%4==0&&year%100!=0||year%400==0) //判斷是否是閏年
		{
			if(month==2&&day==29)
			    cout<<"1"<<endl;
                        else if(month==2&&day>29)
			    cout<<"0"<<endl;
		}
		else if(month==2&&day>28)  
		    cout<<"0"<<endl;
		else if(month==4||month==6||month==9||month==11)
		{
			if(day>30)
			cout<<"0"<<endl;
		}
		else cout<<"1"<<endl;
		
	}
	else cout<<"0"<<endl;
	return 0;
}


相關推薦

-判斷日期是否符合格式

  我們知道一年有12個月,每個月最多有31天,年有平年和閏年之分,本題目要求如果輸入一個日期,程式需要判斷使用者輸入的日期是否正確。 輸入   使用者輸入是三個數字,分別表示年,月和日。 例如 2007 10 21 ,表示2007年10月21日,這個輸入經過判斷是正確的。又例如輸入 1993 11 38

| 歐拉回圖 | 判斷歐拉回路

conn mar map sca thml gin def 是否 bool 你學過一筆畫問題麽?其實一筆畫問題又叫歐拉回路,是指在畫的過程中,筆不離開紙,且圖中每條邊僅畫一次,而且可以回到起點的一條回路。 蒜頭君打算考考你,給你一個圖,問是否存在歐拉回路? 輸入格式 第

判斷質數

題目描述 對於大於 1的數,如果除了 1和它本身,它不能再被其它正整數整除,那麼我們說它是一個質數。 曉萌想判斷一個數是不是質數,希望找你寫個程式,幫助她進行判斷。 輸入格式 輸入包括一行,為一個整數N(1<N≤1000),正是曉萌給出你讓你判斷的數字。 輸出格式 輸出包括一行,如

[] Python 判斷一個數是否能被另一個整數整除是一個挺簡單的問題

問題描述: 判斷一個數是否能被另一個整數整除是一個挺簡單的問題,一般一個模運算就可以搞定了,懶惰的曉萌還是不想自己做,於是找到你幫他寫程式碼,你就幫幫他吧。 輸入格式: 輸入包括兩個由空格分開的整數 MMM 和 N(1≤M,N≤500)N(1\leq M,

-題庫-三值排序

pac 一個數 順序 col 裏的 efault 開始 algo div 題目 排序是一種很頻繁的計算任務。一個實際的例子是,當我們給某項競賽的優勝者按金銀銅牌排序的時候。在這個任務中可能的值只有三種1,2和3。我們用交換的方法把他排成升序的。 寫一個程序計算出,計算出的

15430 XOR Queries(Trie處理位運算問題)

ron 二進制 進制 插入 我們 整數 容易 位置 xor 題意: 給出一個長度為n的數組C,回答m個形式為(L, R, A, B)的詢問, 含義為存在多少個不同的數組下標k屬於[L, R]滿足C[k] XOR A >= B(式中XOR為異或運算)。 T組測試數

騰訊課堂的物理實驗(2017初賽第三場)

text ram amp tex 方向 top names rip des A題 在騰訊課堂的物理課上,進行了一個有趣的物理實驗。 在一個長度為 LL 米的光滑軌道上,小車 A 在 00 時刻以 1\mathrm{m/s}1m/s 的速度從左端出發向右運動,小車 B 在

UCloud 的安全秘鑰 (初賽第五場)(待解決)

限制 一行 序列 0ms n) content mes 初賽 -o 20.7% 1200ms 262144K 每個 UCloud 用戶會構造一個由數字序列組成的秘鑰,用於對服務器進行各種操作。作為一家安全可信的雲計算平臺,秘鑰的安全性至關重要。因此,UCloud

UCloud 機房的網絡搭建(初賽第五場)

出口 表示 -s box ace res += 建立 tps UCloud 剛剛建立一個新機房,近日正在進行網絡搭建。機房內有 nn 臺服務器和 mm 個分線器,整個機房只有一個網線出口。分線器的作用是將一根網線轉換成多根網線。蒜頭君也知道每個分線器輸出的最大網線根數(不

第五場 UCloud 的安全秘鑰(中等) (尺取遊標法

sca http 數組 desc 出現 滿足 說明 tom tor 每個 UCloud 用戶會構造一個由數字序列組成的秘鑰,用於對服務器進行各種操作。作為一家安全可信的雲計算平臺,秘鑰的安全性至關重要。因此,UCloud 每年會對用戶的秘鑰進行安全性評估,具體的評估方法如

UCloud 的安全秘鑰 ——(hash)

pan ref namespace mes 能夠 targe com print lower   題目鏈接:https://nanti.jisuanke.com/t/15769。   題意是求可以變換位置以後相同的子串有多少個,那麽做法是只要每個數字的平方和,立方和以及四次

429(騰訊手機地圖-pi的精確值)

sel log 相對 ios cal iss color 什麽 ++ 騰訊手機地圖的定位功能用到了用戶手機的多種信號。這當中有的信號的作用範圍近。有的信號作用的範圍則遠一些。有的信號相對於用戶在不同的方位強度是不同的。有的則是在不論什麽一個方向上信號強度都一

課程學分總數

int ane 題目 scan top const turn fine desc 題目鏈接 課程學分總數 很基礎的樹型DP。註意輸入數據可能是森林而不是完整的一棵樹。 那麽給所有沒有祖先的點加一個公共的根就好了。 #include <bits

[NOIP模擬賽]2017.7.28Day1回顧反思總結

n) 模擬 查詢 同時 結點 reg etc mes 停止 D1T1 打地鼠 題目鏈接 反思- 比賽得分-0 思考: 比賽時,以為T1是一道常規模擬題目,沒怎麽看數據範圍。直接手動模擬,模擬完之後太自信也沒有造數據Hack自己的程序。直接導致爆0。同時發現自己對二

--爬樓梯 (動態規劃)

tle nbsp vector main long 3.1 false n) 方法 假設你現在正在爬樓梯,樓梯有 nn 級。每次你只能爬 11 級或者 22 級,那麽你有多少種方法爬到樓梯的頂部? 輸入格式 第一行輸入一個整數 n(1\leq n \leq 50)n

--兩數之和

lin mod sizeof ons tom owb res fin iomanip 給定一個數組 number_inumber?i??,找到兩個數,使得他們的和為一個給定的數值 targettarget。 其中:number[index_1] + number[in

---線段的總長

col cst scrip type sin logs style ica -a 數軸上有N個點,任意兩點連線得到n(n-1)條線段,試求線段的總長。 輸入格式: 第一行,一個整數N,表示點數。 接下來N行,每行一個整數X_i,表示點的坐標。 輸出格式: 輸出為

---最大質因數

格式 set -s margin style 輸出格式 sam ring -1 給出N個數字,試求質因數最大的數字。 輸入格式: 第一行,一個整數N,表示數字個數。 接下來N行,每行一個整數A_i,表示給出的數字。 輸出格式: 一個整數,表示質因數最大的數字。

16495 Truefriend(fwt)

ios public () eof .cn png pac log typedef #include <iostream> #include <cstring> #include <cstdio> using namespace st

16492 building(二分線段樹/分塊)

sin cst include sqrt ++ building scanf mat math 題解: 考慮用線段樹維護樓的最大值,然後這個問題就很簡單了。 每次可以向左二分出比x高的第一個樓a,同理也可以向右二分出另一個樓b,如果a,b都存在,答案就是b-a-1。 註意到