Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <windows.h>
- #include <iostream>
- #include <iomanip>
- #include <string>
- #include <vector>
- #include <algorithm>
- using namespace std;
- class DATAuser
- {
- public:
- int Year;
- int MonthUser;
- string m[12]=
- {"Январь","Февраль","Март","Апрель","Май",
- "Июнь","Июль","Август","Сентябрь",
- "Октябрь","Ноябрь","Декабрь"};
- string MSG[3]=
- {
- "Год вне диапазона вычислений", "Год високосный", "Год НЕ является високосным"
- };
- DATAuser(string yyyymm)
- {
- if (yyyymm[4]!='.')
- {
- cout << "Формат данных не соответствует ГГГГ.ММ" << endl;
- yyyymm= "2000.01";
- cout << "По умолчанию " << yyyymm;
- }
- char buf[5];
- yyyymm.copy(buf,4,0);
- Year= atoi(buf);
- strcpy(buf," ");
- yyyymm.copy(buf,2,5);
- MonthUser= atoi(buf);
- cout << "Данные для анализа " << endl;
- cout << "Год "<< Year << "\tМесяц "<< MonthUser << endl;
- if (MonthUser<1 || MonthUser>12)
- {
- cout << "У нас 12 месяцев...В году" << endl;
- MonthUser= 1;
- }
- }
- DATAuser()
- {
- cout << "Введите год\t"; cin >> Year;
- cout << "Номер месяца\t"; cin >> MonthUser;
- }
- void CalculatUser()
- {
- int Des, Sot, DayUser;
- Des= Year % 100; Sot= Year / 100;
- if ( (Des==0 && !(Sot%4) ) || (!(Des%4) && Des!=0) ) DayUser= 1;
- else DayUser= 2;
- cout << Year << '\t' << MSG[DayUser] << endl;
- int dm;
- if(MonthUser>7) dm= 31 - MonthUser%2;
- else
- {
- dm= 30 + MonthUser%2;
- if (MonthUser==2) dm-=DayUser;
- }
- cout << m[MonthUser-1] << "\t\t" << dm << endl;
- }
- };
- int main(int argc, char **argv)
- {
- system("chcp 1251 > nul"); // Руссификация сообщений
- setlocale(LC_ALL, "Russian");
- DATAuser du("1711.09"); du.CalculatUser();
- DATAuser di; di.CalculatUser();
- /* // Процедура вывода дней месяца БЕЗ высокосного дня
- int dm;
- string m[12]=
- {"Январь","Февраль","Март","Апрель","Май",
- "Июнь","Июль","Август","Сентябрь",
- "Октябрь","Ноябрь","Декабрь"};
- for (int a=0; a<12; a++)
- {
- if (a>6) dm= 30 + a%2;
- else
- {
- dm= 31 - a%2;
- if (a==1) dm-=2;
- }
- cout << m[a] << "\t" << dm << endl;
- }*/
- system("pause"); // system("pause > nul");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement