06/04/2021, 14:47

huật toán kiểm tra năm nhuận - huật toán căn bản

Bài tiếp theo trong series thuật toán và giải thuật này chúng ta sẽ tìm hiểu cách kiểm tra năm nhuận bằng ngôn ngữ C++. Trước khi vào bài mình muốn nhấn mạng rằng nội dung của bài mình chỉ hướng dẫn cách kiểm tra trong lập trình, mình sẽ không giải thích ý nghĩa của năm nhuận cũng như chu kì của nó ...

Bài tiếp theo trong series thuật toán và giải thuật này chúng ta sẽ tìm hiểu cách kiểm tra năm nhuận bằng ngôn ngữ C++. Trước khi vào bài mình muốn nhấn mạng rằng nội dung của bài mình chỉ hướng dẫn cách kiểm tra trong lập trình, mình sẽ không giải thích ý nghĩa của năm nhuận cũng như chu kì của nó mà chỉ bám sát vào định nghĩa mà người xưa đã đưa ra mà thôi, sau này khi bạn tiếp cận bất kì một bài toán nào cũng phải dựa vào định nghĩa hoặc quy luật mà bài toán đó đang áp dụng để lập trình.

1. Năm nhuận là gì?

Năm nhuận hay còn gọi là năm nhuần, là sự bổ sung thêm ngày và tháng để đảm bảo lịch phù hợp với các mùa của thời tiết. Theo lịch dương thì năm nhuân sẽ có tháng 2 là 29 ngày,còn theo lịch dương thì năm nhuận sẽ có thêm một tháng và ta hay gọi là tháng 13, mục đích họ tăng lên là để lịch phù hợp với các mùa.

Theo chu kì thì trái đất sẽ quay quanh mặt trời tổng cộng 365 ngày 5 giờ 48 phút 46 giây, như vậy mỗi năm sẽ dư ra gần 6h nên cứ 4 năm chúng ta lại dư mất một ngày, và nó sẽ rơi vào tháng 2 nên tháng này ta sẽ có 29 ngày để bám sát với chu kì quay.

2. Thuật toán kiểm tra năm nhuận

Bám theo khái niệm năm nhuân là gì thì chúng ta có thuật toán kiểm tra năm nhuận như sau:

  • Bước 1: Nhập số n cần kiểm tra
  • Bước 2: Nếu n chia hết cho 100 và chi hết cho 400 thì nó là năm nhuận
  • Bước 3: Nếu n chia hết cho 4 thì là năm nhuận
  • Bước 4: Trả kết quả n không phải là năm nhuận

Hàm kiểm tra năm nhuận bằng C++

void nam_nhuan(int year)
{
	if (year % 100 == 0)
	
	{
		if (year % 400 == 0){
			cout << year << " la nam nhuan";
		}
		else{
			cout << year << " khong phai la nam nhuan";
		}
	}
	else if (year % 4 == 0) {
		cout << year << " la nam nhuan";
	}
	else{
		cout << year << " khong phai la nam nhuan";
	}
}

Hàm main C++

void main()
{
	int year;
	cout << "Nhap nam can kiem tra: ";
	cin >> year;
	
	nam_nhuan(year);
}

3. Lời kết

Về khái niệm năm nhuận là gì thì bạn có thể mạng để đọc ở một số trang lớn khác, nhưng về thuật toán trong lập trình thì thường người ta hay sử dụng cách mà mình trình bày ở trên, nghĩa là năm nhuận là năm chia hết cho 4, trường hợp nso chia hết cho 100 thì phải chia hết cho 400.

Tạ Quốc Bảo

23 chủ đề

7270 bài viết

0