mirror of https://github.com/cyp0633/homework.git
parent
0a1ce3ab13
commit
daeddeb9c0
|
@ -1,9 +1,10 @@
|
|||
//Maya历法
|
||||
#include <cstdio>
|
||||
#include <iostream>
|
||||
#include <map>
|
||||
using namespace std;
|
||||
int getHaabMonthDay(const string &m);
|
||||
string getTzolkinDayName[21] = {"ahau", "imix", "ik", "akbal", "kan", "chicchan", "cimi", "manik", "lamat", "muluk", "ok", "chuen", "eb", "ben", "ix", "mem", "cib", "caban", "eznab", "canac", "ahau"};
|
||||
map<string, int> haabMonthDay = {{"pop", 0}, {"no", 20}, {"zip", 40}, {"zotz", 60}, {"tzec", 80}, {"xul", 100}, {"yoxkin", 120}, {"mol", 140}, {"chen", 160}, {"yax", 180}, {"zac", 200}, {"ceh", 220}, {"mac", 240}, {"kankin", 260}, {"muan", 280}, {"pax", 300}, {"koyab", 320}, {"cumhu", 340}, {"uayet", 360}};
|
||||
int main()
|
||||
{
|
||||
int dayFromCreation, haabDay, haabMonth, haabYear, n, tzolkinName, tzolkinNumber, tzolkinYear;
|
||||
|
@ -15,7 +16,7 @@ int main()
|
|||
size_t pos = tempStr.find('.');
|
||||
dayStr = tempStr.substr(0, pos);
|
||||
monthName = tempStr.substr(pos + 1);
|
||||
haabMonth = getHaabMonthDay(monthName);
|
||||
haabMonth = haabMonthDay[monthName];
|
||||
haabDay = stoi(dayStr);
|
||||
dayFromCreation = haabYear * 365 + haabMonth + haabDay;
|
||||
tzolkinYear = dayFromCreation / 260;
|
||||
|
@ -28,84 +29,4 @@ int main()
|
|||
tzolkinName = dayFromCreation % 20;
|
||||
cout << tzolkinNumber << ' ' << getTzolkinDayName[tzolkinName + 1] << ' ' << tzolkinYear << endl;
|
||||
}
|
||||
}
|
||||
int getHaabMonthDay(const string &m)
|
||||
{
|
||||
if (m == "pop")
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
if (m == "no")
|
||||
{
|
||||
return 20;
|
||||
}
|
||||
if (m == "zip")
|
||||
{
|
||||
return 40;
|
||||
}
|
||||
if (m == "zotz")
|
||||
{
|
||||
return 60;
|
||||
}
|
||||
if (m == "tzec")
|
||||
{
|
||||
return 80;
|
||||
}
|
||||
if (m == "xul")
|
||||
{
|
||||
return 100;
|
||||
}
|
||||
if (m == "yoxkin")
|
||||
{
|
||||
return 120;
|
||||
}
|
||||
if (m == "mol")
|
||||
{
|
||||
return 140;
|
||||
}
|
||||
if (m == "chen")
|
||||
{
|
||||
return 160;
|
||||
}
|
||||
if (m == "yax")
|
||||
{
|
||||
return 180;
|
||||
}
|
||||
if (m == "zac")
|
||||
{
|
||||
return 200;
|
||||
}
|
||||
if (m == "ceh")
|
||||
{
|
||||
return 220;
|
||||
}
|
||||
if (m == "mac")
|
||||
{
|
||||
return 240;
|
||||
}
|
||||
if (m == "kankin")
|
||||
{
|
||||
return 260;
|
||||
}
|
||||
if (m == "muan")
|
||||
{
|
||||
return 280;
|
||||
}
|
||||
if (m == "pax")
|
||||
{
|
||||
return 300;
|
||||
}
|
||||
if (m == "koyab")
|
||||
{
|
||||
return 320;
|
||||
}
|
||||
if (m == "cumhu")
|
||||
{
|
||||
return 340;
|
||||
}
|
||||
if (m == "uayet")
|
||||
{
|
||||
return 360;
|
||||
}
|
||||
return -1;
|
||||
}
|
Loading…
Reference in New Issue