30/09/2018, 18:16

Ý tưởng để "Tìm ngày trước đó k ngày"

Anh chị em nào cho em xin ý tưởng ạ.

Dương Nylghara viết 20:22 ngày 30/09/2018

Dùng câu lệnh if
mình phải xét tất cả các điều kiện

- Những tháng có 31 ngày 
- Những thangs có 30 ngày
- Xét năm nhuận + năm không nhuận với tháng 2
(chia hết cho 4 nhưng không chia hết cho 100) || (chia hết cho 400)

Sau đó mình nhập vào 1 ngày, tháng, năm …xét các điều kiện trên

ví dụ năm nhuận tháng 2 có 29 ngày…giờ mình nhập vào ngày 30 thì nó sẽ in ra cho mình là ngày 1 của tháng 3

=> in ra ngày trước đó cũng vậy…cái này cứ câu lệnh if mà táng

Hnib viết 20:22 ngày 30/09/2018

Việc check if else rất là cực vì rất nhiều trường hợp. Nếu bạn sử dụng java thì có một lớp Calendar có hỗ trợ API để làm điều này.

Calendar cal = Calendar.getInstance()
cal.add(Calendar.DATE, -7);
System.out.println("Date  "+ cal.getTime());

Ví dụ trên là tìm ngày ở 7 ngày trước so với ngày hiện tại.

David Teo viết 20:23 ngày 30/09/2018

Sau đó mình nhập vào 1 ngày, tháng, năm …xét các điều kiện trên

ví dụ năm nhuận tháng 2 có 29 ngày…giờ mình nhập vào ngày 30 thì nó sẽ in ra cho mình là ngày 1 của tháng 3

Mình không hiểu chỗ này lắm, Ý mình là mình nhập vào ngày 1/4/2015, nhập k = 40 thì nó xuất ra ngày 10/5/2015 ấy.

David Teo viết 20:24 ngày 30/09/2018

Nếu bạn sử dụng java thì có một lớp Calendar có hỗ trợ API để làm điều này.

Mình cũng đang học Java core nhưng chưa tìm hiểu cái này. Bài này mình làm c++

Dương Nylghara viết 20:24 ngày 30/09/2018

thì going ý tưởng trên
bạn nhập vào ngày/thang/nam
bạn phải xét tất cả các điều kiện trên…nếu như bạn nhập 1/4/2015, nhập k = 40 (k đây có phải ngày phải không)

bạn xét tháng 4 có bao hiều ngày 30 => k - 30 =40 - 30 = 10( dư ra)

bạn dư ra 10 ngày này thì tháng sẽ thang = thang + 1 ; ngay = ngaydu

David Teo viết 20:32 ngày 30/09/2018

MÌnh hiểu rồi. Còn phải xử lý thêm năm >365 nửa?
Cảm ơn bạn. Khi nào làm xong mình post Code lên bạn xem thử.

David Teo viết 20:19 ngày 30/09/2018

Bài này if else thật không dễ, bắt tay vô làm thì bí mất tiêu

Bài liên quan
0