01/10/2018, 09:12
Nhập vào ngày tháng năm cho biết đó là thứ mấy trong tuần
đề bài là: nhập vào ngày tháng năm cho biết đó là thứ mấy trong tuần?
tháng 2 có năm nhuận là 28 hoặc 29 ngày, và 1,3,5,7,8,10,12 có 31 ngày và 4 ,6,9,11 có 30 ngày đặt ra lý luận thế nào cho ổn để tính, mong các cao nhân chỉ giáo! thanks
trân trọng!
Bài liên quan
Google “day of the date”.
C#, ngôn ngữ cho người lười:
9,10,11/4/2017
Ặc! muốn tính chính xác, bạn lập thế thì chịu, mình ko hiểu!
Còn về mặt thuật toán
…
…
X=6=> Chủ nhật
bạn thử code giúp mình bằng C dùng câu điều kiện? thanks ban
Bạn có thể chỉ mình cách tính số ngày kể từ 1/1/1990 dc ko?
Mình không biết viết code C
Để tính số ngày kể từ 01/01/0001 cho nó nhiều nhé :)) (01/01/0001 được gọi là “The world birthday” ):
Đầu tiên bạn viết hàm tính số ngày trong năm, ví dụ
noz == 2017
thìSoNgayTrongNam(noz) == 365
:Tiếp theo bạn viết hàm tính số ngày trước năm cần tính (ví dụ cần tính ngày 14/4/1995, hàm này tính số ngày kể từ 01/01/0001 đến hết 31/12/1994)
Tiếp theo, bạn viết hàm tính số ngày kể từ đầu năm
Cuối cùng cộng 2 thằng đó lại là ra số ngày kể từ 01/01/0000, gọi nó là
int ahjhj
nhé.Biết 31/12/0000 là Chủ Nhật.
Xét ngày 01/01/0001 là Thứ Hai thì
ahjhj == 1
=>ahjhj % 7 == 1
=> Nếu
ahjhj % 7 == 1
thì ngày đang xét là Thứ Hai,ahjhj % 7 == 2
thì ngày đang xét là Thứ Ba,…,ahjhj % 7 == 6
thì ngày đang xét là Thứ Bảy,ahjhj % 7 == 0
thì ngày đang xét là Chủ Nhật.Full code C# :))
Có sẵn thuật toán để tính cái này, bạn có thể dễ dàng tìm thấy trên daynhauhoc (mình muốn nhấn mạnh chỗ ‘dễ dàng’).
Duyệt từng ngày là một cách phổ thông với lại nó sẽ chậm hơn nếu ngày cần tính càng xa với mốc đã chọn.
Mình code lại dựa trên thuật toán đó, việc kiểm tra những gì người dùng nhập vào thì không phải việc của mình nên mình không làm nha (mình cho là không hề có lỗi trong việc nhập ngày tháng năm).
Đáp án cho người lười =))
Đoạn code sử dụng
switch-case
nhưng do nó quá dài nên mình chuyển nó sang mảng, chắc là hơi nguy hiểm tí khi không kiểm tra xem phần tử có chỉ số nằm trong khoảng an toàn hay không .thanks Trần Hoàn…!