Време между две дати

Да се въведе рождени ден, месец и година и да се отпечата:

  1. Колко години са минали оттогава
  2. Колко цели месеца са минали оттогава
  3. Колко цели дни са минали оттогава
  4. Колко години, месеца и дни са минали оттогава

За улеснение ще смятаме че всеки месец съдържа 30 дни.

Публикувано в 11а с етикети , , . Постоянна връзка.

4 коментара по Време между две дати

  1. dreanor каза:
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        int godini,mesec,dni,a,c;
        double b;
        cout << "Wuwedi rojdenna data (DD MM GGGG): ";
        cin >> dni>>mesec>>godini;
        a=2012 - godini;
        c=365*a+(38*7+4)+(30-dni);
        b=c/30;
        cout << "Izminali sa "<<a<<" godini ili "<<b<<" meseca ili "<<c<<" dni."<<endl;
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    
  2. marant каза:
     
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        int d1,m1,g1,d2,m2,g2;
        cout<<"Godini: ";
        cin>>g1>>g2; 
        cout<<" Meseci: ";
        cin>>m1>>m2;
        cout<<" dni: ";
        cin>>d1>>d2;
        cout<<"godini: "<<g1-g2<<endl;
        cout<<" meseci: "<<m1+(12*(g1-g2))-m2<<endl;
        cout<<" dni: "<<d1+(30*(m1+(12*(g1-g2))-m2))-d2<<endl;
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    
    • marant каза:
      #include <cstdlib>
      #include <iostream>
      
      using namespace std;
      
      int main(int argc, char *argv[])
      {
       int g1,m1,d1,g2,m2,d2;
       cout<<"Vuvedete svoqta rojdenna data (godina,mesec i den):"<<endl;
       cin>>g1>>m1>>d1;
       cout<<"Sega vuvedete dne6nata data :"<<endl;
       cin>>g2>>m2>>d2;
       cout<<"minali sa "<<g2-g1<<" godini"<<endl;
       cout<<(m1*(g2-g1)-m2)<<"meseca i"<<endl;
        cout<<d2+(30*(m2+(12*(g2-g1))-m1))-d1<<"dena"<<endl;
          system("PAUSE");
          return EXIT_SUCCESS;
      }
      
      • Данаил каза:

        Вярно! И по-добре форматирано, отколкото предното ти решение. Имаш само малка грешка при смятането на месеците, но гледам че при смятането на дните месеците са коректни, така че явно е техническа.

        Може като сметнеш разликите в годините и месеците, да ги присвоиш на променлива, за да не се налага на долния ред да ги смяташ пак. Не че ще е трудно пресмятането, но 1) печелиш малко бързодействие и 2) програмата става по-четлива.

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