Да се напише програма, съдържаща и демонстрираща процедури за:
- връщане на датата на създаване на програмата (като параметри ден, месец и година)
- отпечатване на дата, при подадени като параметър ден, месец и година
- отпечатване на дата, като месеца е с думи (например „31 mai 2013“)
- преминаване в следваща година, при подаден параметър текуща година
- преминаване в следващ месец, при подадени като параметри месец и година
- връщане на брой седмици от началото на годината (грубо пресметнати, при всеки месец от 30 дни)
- По желание: преминаване в следващ ден, при подаден като параметри ден, месец и година


#include <cstdlib> #include <iostream> using namespace std; // печат на дата void pechat(int den, int mesec, int godina) { cout<<den<<'.'<<mesec<<'.'<<godina<<endl; } // връща текуща дата void dnes(int &den, int &mesec, int &godina) { den=29; mesec=5; godina=2014; } // връща сл.година int sl_godina(int godina) { return godina+1; } // връща сл.месец bool sl_mesec(int &mesec, int &godina) { if(mesec>=12) { godina++; mesec=1; return true; } else { mesec++; return false; } } // връща сл.ден bool sl_den(int &den, int &mesec, int &godina) { den++; int max_den; switch(mesec) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: max_den=31; case 2: max_den=28; default: max_den=30; } if(den>max_den) { den=1; sl_mesec(mesec, godina); return true; } return false; } // главна функация int main(int argc, char *argv[]) { pechat(30, 5, 2014); int d, m, g; dnes(d, m, g); pechat(d, m, g); cout<<"Sl.godina shte e "<<sl_godina(g)<<endl; bool ng= sl_mesec(m, g); cout<<"Sl.mesec shte e "<<m<<'.'<<g<<endl; if (ng) cout<<"Chestita Nova Godina!"<<endl; bool nd= sl_den(d, m, g); cout<<"Sl.den shte e "<<d<<'.'<<m<<'.'<<g<<endl; if (nd) cout<<"Mina i toia mesec!"<<endl; system("PAUSE"); return EXIT_SUCCESS; }