* Функции за дати

Да се напише програма, съдържаща и демонстрираща функции за:

  1. връщане на датата на създаване на програмата (като параметри ден, месец и година)
  2. въвеждане на датата от клавиатурата
  3. отпечатване на дата, при подадени като параметър ден, месец и година
  4. проверява дали две дати са равни
  5. проверява дали дадена дата е днешна дата
  6. отпечатване на дата, като месеца е с думи (например „31 mai 2013“)
  7. преминаване  в следваща година
  8. преминаване в следващ месец
  9. връщане на брой седмици от началото на годината (грубо пресметнати, при всеки месец от 30 дни)
  10. По желание: преминаване в следващ ден
Публикувано в СИП с етикети . Постоянна връзка.

4 Responses to * Функции за дати

  1. bobby666666 каза:
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    	void datasuzdawane (int &d, int &m, int &y){
    	d=4;
    	m=11;
    	y=2016;	
    		
    	}
    	void dataklawiatura (int &d, int &m , int &y){
    		cout<<"Wuwedete dneshnata data";
    		cin>>d>>m>>y;
    		
    	}
    void dataotpechatwane(int d, int m , int y){
    	cout<<d<<"."<<m<<"."<<y<<endl;
    }
    bool dalidatarawna(int d, int m , int y, int d1, int m1 , int y1){
    	return ((d==d1)&&(m==m1)&&(y==y1));
    }
    
    bool daliedneshnadata(int d, int m , int y){
    	return dalidatarawna(d, m , y, 4, 11 , 2016);
    }
    int dataMesecSdumi(int d, int m, int y){
    	
    }
    void dataSledwashtaGodina(int &d, int &m, int &y){
    	d=1;
    	m=1;
    	y=y+1;
    }
    
    int main(int argc, char** argv) {
    	int d1,m1,y1,d2,m2,y2;
    	datasuzdawane(d1,m1,y1);
    	cout<<"data na suzdawane e ";
    dataotpechatwane(d1,m1,y1);
    
    cin>>d1>>m1>>y1;
    cin>>d2>>m2>>y2;
    if(dalidatarawna(d1,m1,y1,d2,m2,y2))
    	cout<<"rawni sa";
    	else
    	cout<<"ne sa rawni";
    
    dataSledwashtaGodina(d1,m1,y1);
    dataotpechatwane(d1,m1,y1);
    
    
    
    	return 0;
    } 
  2. Данаил каза:
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    //връщане на датата на създаване на програмата
    void dataSuzdavane(int &d, int &m, int&g) {
    	d=4;
    	m=11;
    	g=2016;
    }
    
    //въвеждане на датата от клавиатурата
    void dataVuvedi(int &d, int &m, int &g) {
    	cout<<"Vuvedete den, mesec i godina ";
    	cin>>d>>m>>g;
    }
    
    //отпечатване на дата, при подадени ден, месец и година
    void dataPechat(int d, int m, int g) {
    	cout<< d<<'.'<<m<<'.'<<g<<endl;
    }
    
    //проверява дали две дати са равни
    bool dataRavni(int d1, int m1, int g1, int d2, int m2, int g2){
    	return((d1==d2)&&(m1==m2)&&(g1==g2));
    }
    
    //проверява дали дадена дата е днешна дата
    bool daliEdbeshnaData(int d1, int m1, int g1){
    	return dataRavni(d1, m1, g1, 4, 11, 2016);
    }
    
    //отпечатване на дата, като месеца е с думи (например „31 mai 2013“)
    int dataMesecSdumi(int d1, int m1 , int g1){
    	cout<<d1<<' ';
    	switch(m1) {
    		case 1: cout<<"January"; break;
                    // да се допълни за другите месеци
    	}
    	cout<<' '<<g1<<endl;
    }
    
    //преминаване  в началото на следваща година
    void sledvashtaGodina(int &d, int &m, int &g){
    	d=1;
    	m=1;
    	g=g+1;
    } 
    
    //преминаване в следващ месец
    void sledvashtMesec(int &d,int &m,int &g){
    	d=1;
    	if (m==12)
    	{
    		m=1;
    		g++;
    	} 
    	else 
    	{
    		m++;
    	}
    }
    
    int main(int argc, char** argv) {
    	int d1, m1, g1, d2, m2, g2;
    
            dataSuzdavane(d1, m1, g1);
            cout<<"Datata na suzdawave e ";
    
    	dataPechat(d1, m1, g1);
    	
            cout<<"Vuvedete data:";
    	dataVuvedi(d2,m2,g2);
    
    	if (dataRavni(d1,m1, g1, d2, m2,  g2))
    		cout<<"Dvete dati sa ravni"<<endl;		
    	else cout<<"Ne sa ravni"<<endl;
    	
    	sledvashtaGodina(d2, m2, g2);
    	dataPechat(d2, m2, g2);
    	
    	sledvashtMesec(d2, m2, g2);
    	dataPechat(d2, m2, g2);
    
    	return 0;
    }
  3. bobby666666 каза:

    Поправено**

    #include <cstdlib>
    #include <iostream>
     
    using namespace std;
     
        void datasuzdawane (int &d, int &m, int &y){
        d=4;
        m=11;
        y=2016; 
             
        }
        void dataklawiatura (int &d, int &m , int &y){
            cout<<"Wuwedete data ";
            cin>>d>>m>>y;
             
        }
    void dataotpechatwane(int d, int m , int y){
        cout<<d<<"."<<m<<"."<<y<<endl;
    }
    bool dalidatarawna(int d, int m , int y, int d1, int m1 , int y1){
        return ((d==d1)&&(m==m1)&&(y==y1));
    }
     
    bool daliedneshnadata(int d, int m , int y){
        return dalidatarawna(d, m , y, 4, 11 , 2016);
    }
    int dataMesecSdumi(int d, int m, int y){
         
    }
    void dataSledwashtaGodina(int &d, int &m, int &y){
        d=1;
        m=1;
        y=y+1;
    }
     
    int main(int argc, char** argv) {
        int d1,m1,y1,d2,m2,y2;
        datasuzdawane(d1,m1,y1);
        cout<<"data na suzdawane e ";
    dataotpechatwane(d1,m1,y1);
     
    dataklawiatura(d1,m1,y1);
    dataklawiatura(d2,m2,y2);
    
    if(dalidatarawna(d1,m1,y1,d2,m2,y2))
        cout<<"rawni sa";
        else
        cout<<"ne sa rawni";
     
    dataSledwashtaGodina(d1,m1,y1);
    dataotpechatwane(d1,m1,y1);
     
     
     
        return 0;
    } 

Вашият коментар