Example #1
0
 private static bool DateEgale(DataCalendaristica d1, DataCalendaristica d2)
 {
     if ((d1.zi == d2.zi) && (d1.luna == d2.luna) && (d1.an == d2.an))
     {
         return true;
     }
     return false;
 }
Example #2
0
        private static int DiferentaZile(DataCalendaristica azi, DataCalendaristica dataNasterii)
        {
            int contor = 0;

            while (!DateEgale(azi, dataNasterii))
            {

                azi = ScadOZi(azi);

                contor++;
            }

            return contor;
        }
Example #3
0
 private static DataCalendaristica ScadOZi(DataCalendaristica azi)
 {
     if (azi.zi > 1)
     {
         azi.zi--;
     }
     else
     {
         switch (azi.luna)
         {
             case LunileAnului.Ianuarie:
                 azi.luna = LunileAnului.Decembrie;
                 azi.zi = 31;
                 azi.an--;
                 break;
             case LunileAnului.Februarie:
             case LunileAnului.Aprilie:
             case LunileAnului.Iunie:
             case LunileAnului.August:
             case LunileAnului.Septembrie:
             case LunileAnului.Noiembrie:
                 azi.luna--;
                 azi.zi = 31;
                 break;
             case LunileAnului.Mai:
             case LunileAnului.Iulie:
             case LunileAnului.Octombrie:
             case LunileAnului.Decembrie:
                 azi.luna--;
                 azi.zi = 30;
                 break;
             case LunileAnului.Martie:
                 azi.luna = LunileAnului.Februarie;
                 if (Bisect(azi.an))
                     azi.zi = 29;
                 else
                     azi.zi = 28;
                 break;
             default:
                 break;
         }
     }
     return azi;
 }