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


#include <cstdlib> #include <iostream> using namespace std; void dnes(int &d, int &m, int &g){ d=31; m=5; g=2013; } void pechat(int d, int m, int g){ cout<<d<<'.'<<m<<'.'<<g<<endl; } int main(int argc, char *argv[]) { int den, mesec, godina; dnes(den, mesec, godina); pechat(den, mesec, godina); //sl_godina(godina); //pechat(den, mesec, godina); //sl_mesec(mesec, godina); //pechat(den, mesec, godina); system("PAUSE"); return EXIT_SUCCESS; }Втора:
#include <cstdlib> #include <iostream> using namespace std; void dnes(int &d, int &m, int &g){ cout<<"den :"; cin>>d; cout<<"mesec :"; cin>>m; cout<<"godina :"; cin>>g; } void pechat(int d, int m, int g){ cout<<d<<'.'<<m<<'.'<<g<<endl; } int main(int argc, char *argv[]) { int den, mesec, godina; dnes(den, mesec, godina); pechat(den, mesec, godina); system("PAUSE"); return EXIT_SUCCESS; }Ха, твоята програма няма нужда от актуализиране на процедурата dnes, като се смени датата :-) Интересно (и вярно като код)!
#include <cstdlib> #include <iostream> using namespace std; void dnes(int &d, int &m, int &g){ d=29; m=5; g=2013; } void pechat(int d,int m, int g){ cout<<d<<"."<<m<<"."<<g<<endl; } void pmesec(int d,int m, int g){ cout<<d<<"."; switch(m){ case 1:cout<<"January";break; case 2:cout<<"February";break; case 3:cout<<"March";break; case 4:cout<<"April";break; case 5:cout<<"May";break; case 6:cout<<"June";break; case 7:cout<<"July";break; case 8:cout<<"August";break; case 9:cout<<"September";break; case 10:cout<<"October";break; case 11:cout<<"November";break; case 12:cout<<"December";break; } cout<<"."<<g<<endl; } void slgodina(int d, int m, int g){ g++; cout<<d<<"."<<m<<"."<<g<<endl; } void slmesec (int d, int m,int g){ m++; if(m>12){ g++; m=1; } cout<<d<<"."<<m<<"."<<g<<endl; } int main(int argc, char *argv[]) { int den,mesec,godina; dnes(den, mesec, godina); pechat(den, mesec, godina); pmesec (den, mesec, godina); slgodina (den, mesec, godina); slmesec (den, mesec, godina); system("PAUSE"); return EXIT_SUCCESS; }Браво! Обаче процедурите за следващ месец и за следваща година е по-добре само да променят датата, а да не я отпечатват – за тази цел служи процедурата за печат на дата.
using namespace std; void dnes(int &d, int &m, int &g){ d=31; m=5; g=2013; } void pechat(int d, int m, int g){ cout<<d<<'.'<<m<<'.'<<g<<endl; } void mesecd(int d, int m, int g) { cout<<d; switch(m){ case 1: cout<<" qnuari ";break; case 2: cout<<" fevruari ";break; case 3: cout<<" mart ";break; case 4: cout<<" april ";break; case 5: cout<<" mai ";break; case 6: cout<<" iuni "; break; case 7: cout<<" iuli ";break; case 8: cout<<" avgust ";break; case 9: cout<<" septemvri ";break; case 10: cout<<" oktomvri ";break; case 11: cout<<" noemvri ";break; case 12: cout<<" dekemvri "; break; } cout<<g<<endl; } void slgod(int &g) { g++; } void slm(int &m, int &g) { if(m<12) m++; else { m=1; g++;} } int brsedm(int d, int m){ int br=(m-1)*4; br+=(d/7); return br; } int main(int argc, char *argv[]) { int den, mesec, godina; dnes(den, mesec, godina); pechat(den, mesec, godina); mesecd(den,mesec,godina); cout<<brsedm(den,mesec); system("PAUSE"); return EXIT_SUCCESS; }Супер! За малкото време, което беше останало сте направили страшно много…
void Data(int &d,int &m,int &g){ d=31; m=12; g=2013; } void pechat (int d, int m, int g){ cout<<d<<"."<<m<<"."<<g<<endl; } void nextyear (int &d, int &m, int &g){ g++; } void nextmonth (int &d, int &m, int &g) { if (m==12) { g++; m=1; } else m++; } int main(int argc, char *argv[]) { int den,mesec,godina; Data(den,mesec,godina); pechat(den,mesec,godina); nextyear(den,mesec,godina); pechat(den,mesec,godina); nextmonth(den,mesec,godina); pechat(den,mesec,godina);