U E D R , A S I H C RSS

만년달력/�진훈,문�명

만년달력입니다.

~cpp 
#include <iostream>
using namespace std;

void main()
{	
	bool fyun = 0; //윤달�지 아닌지 �별하는 변수. 0�면 윤달� 아니다. 1�면 윤달�다.
	int countday = 0; //날짜 세는 변수.
	int findday = 1; //매년 추가�는 날짜.
	int endmonth, endline; //달� �, 주� �.
	int year,month;
		cout << "알고 싶� 년, 월, 입력해보시지!!";
	cin >> year;
	cin >> month;
	if (year == 1)
		findday = 1;
	else
	{
	for (int i = 2;i<=year;i++)//� 년마다 밀리는 날짜 카운트
	{
		fyun = 0;
		if((i-1)%4 == 0)
			fyun = 1;
		if((i-1)%100 ==0)
			fyun = 0;
		if((i-1)%400 == 0)
			fyun = 1;
			if (fyun == 1)
				findday += 2;
			else if (fyun == 0)
				findday += 1;
	}
	}
	
	for (int k = 1;k<month;k++)//� 년�서� 월까지� 중첩�는 날짜 카운트
	{
		if (k == 1 || k == 3 || k == 5 || k == 7 || k == 8 || k == 10 || k == 12)
			countday += 31;
		else if (k == 2)
		{
			fyun = 0;
		if(year%4 == 0)
			fyun = 1;
		if(year%100 ==0)
			fyun = 0;
		if(year%400 == 0)
			fyun = 1;
		countday += (28+fyun);
		}
		else 
			countday += 30;
	}
	findday = (findday%7+countday)%7;//� 월 첫째날� 요�.
	cout << year << "ë…„\t\t\t" << month << "ì›”" << endl;
	cout << "Sun\t Mon\t Tue\t Wed\t Thr\t Fri\t Sat" << endl;
	if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
		endmonth = 31;
	else if (month == 2)
		{
			fyun = 0;
		if(year%4 == 0)
			fyun = 1;
		if(year%100 ==0)
			fyun = 0;
		if(year%400 == 0)
			fyun = 1;
		endmonth = (28+fyun);
		}
	else 
		endmonth = 30;
	endline = findday;
	for(int q = 0;q<findday;q++)
		cout << "\t ";
	cout << "1\t ";
	for(int n = 2 ; n <= endmonth; n++)//출력ë€. endlineì�€ 주ì�˜ ë��.
	{
		endline++;
		if (endline == 7)
		{
			endline = 0;
			cout << endl;
		}
		cout << n << "\t ";
	}
	cout << endl;
}

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:29:25
Processing time 0.1298 sec