You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

192 lines
4.7 KiB

2 years ago
#include<bits/stdc++.h>
using namespace std;
int Week(int day) {
//<2F><>һ<EFBFBD><D2BB> 1 <20><> 1 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڼ<EFBFBD>
int week = (day % 7) +1;
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ\t<EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD>\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << endl;
for(int i = 0; i < week -1; i++) {
cout << "\t";
}//<2F><>ӡ<EFBFBD><D3A1>һ<EFBFBD><D2BB>ǰ<EFBFBD><C7B0><EFBFBD>Ŀո<C4BF>
}
int main() {
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>" << endl;
int ye;
cin >> ye; //Ҫ<><EFBFBD><E9BFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int year = ye - 1;
//<2F>ӹ<EFBFBD>ԪԪ<D4AA><D4AA> 1 <20><> 1 <20>յ<EFBFBD><D5B5><EFBFBD>һ<EFBFBD><D2BB> 1 <20><> 1 <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int day = ((year / 4) - (year / 100) + (year / 400)) * 366 + (year - ((year / 4) - (year / 100) + (year / 400))) * 365;
int month1[31] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31};
int month2b[28] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28};
int month2a[29] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29};
int month4[30] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30};
int Jan = sizeof(month1) / sizeof(0);
int Feb;
int Apr = sizeof(month4) / sizeof(0);
//һ<><D2BB>
cout << "һ<EFBFBD><EFBFBD>" << endl;
Week(day);
for(int i = 0; i < sizeof(month1) / sizeof(0); i++) {
cout << month1[i];
if(((day + month1[i]) % 7) == 0)
cout << "\n";
else
cout << "\t";
}
//<2F><><EFBFBD><EFBFBD>
int day1 = day + Jan; //<2F><><EFBFBD><EFBFBD>֮ǰ<D6AE><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if((day1 % 7) != 0)
cout << "\n";
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << endl;
Week(day1);
if((ye % 4 == 0 && ye % 100 != 0) || ye % 400 == 0) {
for(int i = 0; i < sizeof(month2a) / sizeof(0); i++) {
cout << month2a[i];
if(((day1 + month2a[i]) % 7) == 0)
cout << "\n";
else
cout << "\t";
}
Feb = sizeof(month2a) / sizeof(0);
} else {
for(int i = 0; i < sizeof(month2b) / sizeof(0); i++) {
cout << month2b[i];
if(((day + Jan + month2b[i]) % 7) == 0)
cout << "\n";
else
cout << "\t";
}
Feb = sizeof(month2b) / sizeof(0);
}
//<2F><><EFBFBD><EFBFBD>
int day2 = day + Jan + Feb;
if((day2 % 7) != 0)
cout << "\n";
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << endl;
Week(day2);
for(int i = 0; i < sizeof(month1) / sizeof(0); i++) {
cout << month1[i];
if(((day2 + month1[i]) % 7) == 0)
cout << "\n";
else
cout << "\t";
}
//<2F><><EFBFBD><EFBFBD>
int day3 = day + Jan * 2 + Feb;
if((day3 % 7) != 0)
cout << "\n";
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << endl;
Week(day3);
for(int i = 0; i < sizeof(month4) / sizeof(0); i++) {
cout << month1[i];
if(((day3 + month1[i]) % 7) == 0)
cout << "\n";
else
cout << "\t";
}
//<2F><><EFBFBD><EFBFBD>
int day4 = day + Jan * 2 + Feb + Apr;
if((day4 % 7) != 0)
cout << "\n";
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << endl;
Week(day4);
for(int i = 0; i < sizeof(month1) / sizeof(0); i++) {
cout << month1[i];
if(((day4 + month1[i]) % 7) == 0)
cout << "\n";
else
cout << "\t";
}
//<2F><><EFBFBD><EFBFBD>
int day5 = day + Jan * 3 + Feb + Apr;
if((day5 % 7) != 0)
cout << "\n";
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << endl;
Week(day5);
for(int i = 0; i < sizeof(month4) / sizeof(0); i++) {
cout << month1[i];
if(((day5 + month1[i]) % 7) == 0)
cout << "\n";
else
cout << "\t";
}
//<2F><><EFBFBD><EFBFBD>
int day6 = day + Jan * 3 + Feb + Apr * 2;
if((day6 % 7) != 0)
cout << "\n";
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << endl;
Week(day6);
for(int i = 0; i < sizeof(month1) / sizeof(0); i++) {
cout << month1[i];
if(((day6 + month1[i]) % 7) == 0)
cout << "\n";
else
cout << "\t";
}
//<2F><><EFBFBD><EFBFBD>
int day7 = day + Jan * 4 + Feb + Apr * 2;
if((day7 % 7) != 0)
cout << "\n";
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << endl;
Week(day7);
for(int i = 0; i < sizeof(month1) / sizeof(0); i++) {
cout << month1[i];
if(((day7 + month1[i]) % 7) == 0)
cout << "\n";
else
cout << "\t";
}
//<2F><><EFBFBD><EFBFBD>
int day8 = day + Jan * 5 + Feb + Apr * 2;
if((day8 % 7) != 0)
cout << "\n";
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << endl;
Week(day8);
for(int i = 0; i < sizeof(month4) / sizeof(0); i++) {
cout << month1[i];
if(((day8 + month1[i]) % 7) == 0)
cout << "\n";
else
cout << "\t";
}
//ʮ<><CAAE>
int day9 = day + Jan * 5 + Feb + Apr * 3;
if((day9 % 7) != 0)
cout << "\n";
cout << "ʮ<EFBFBD><EFBFBD>" << endl;
Week(day9);
for(int i = 0; i < sizeof(month1) / sizeof(0); i++) {
cout << month1[i];
if(((day9 + month1[i]) % 7) == 0)
cout << "\n";
else
cout << "\t";
}
//ʮһ<CAAE><D2BB>
int day10 = day + Jan * 6 + Feb + Apr * 3;
if((day10 % 7) != 0)
cout << "\n";
cout << "ʮһ<EFBFBD><EFBFBD>" << endl;
Week(day10);
for(int i = 0; i < sizeof(month4) / sizeof(0); i++) {
cout << month1[i];
if(((day10 + month1[i]) % 7) == 0)
cout << "\n";
else
cout << "\t";
}
//ʮ<><CAAE><EFBFBD><EFBFBD>
int day11 = day + Jan * 6 + Feb + Apr * 4;
if((day11 % 7) != 0)
cout << "\n";
cout << "ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << endl;
Week(day11);
for(int i = 0; i < sizeof(month1) / sizeof(0); i++) {
cout << month1[i];
if(((day11 + month1[i]) % 7) == 0)
cout << "\n";
else
cout << "\t";
}
}