Advertisement
luk_per

kolos

Jun 7th, 2017
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.57 KB | None | 0 0
  1. 1. Klasa Data, z polami int dzien,miesiac,rok(dostep dowolny), konstruktor, metoda wyswietlajaca - np. 12-sty-2014 (miesiac zawsze jako 3 pierwsze litery).
  2. 2. Przeladowanie operatora ==, czy dni sa rowne
  3. 3. Przeladowanie rzutowania data na int, ma zwracac ile dni minelo od poczatku roku
  4. 4. Metoda sprawdzajaca czy rok sie przestepny(byly podane jakie musi spelniac warunki)
  5.  
  6. using System;
  7. using System.Collections.Generic;
  8. using System.Linq;
  9. using System.Text;
  10. using System.Threading.Tasks;
  11.  
  12. namespace kolokwium
  13. {
  14.     class Program
  15.     {
  16.         public class Data
  17.         {
  18.             private int rok;
  19.             private int miesac;
  20.             private int dzien;
  21.             public string rok_slow;
  22.             public int m_dni;
  23.  
  24.             public Data(int d,int m,int r)
  25.             {
  26.                 dzien = d;
  27.                 miesac = m;
  28.                 rok = r;
  29.                
  30.         }
  31.  
  32.             public override string ToString()
  33.             {
  34.                 string result;
  35.                
  36.                 result = string.Empty;
  37.                 switch(miesac)
  38.                 {
  39.                     case 1:
  40.                         rok_slow = "sty";
  41.                         break;
  42.                     case 2:
  43.                         rok_slow = "lut";
  44.                         break;
  45.                     case 3:
  46.                         rok_slow = "mar";
  47.                         break;
  48.                     case 4:
  49.                         rok_slow = "kwi";
  50.                         break;
  51.                     case 5:
  52.                         rok_slow = "maj";
  53.                         break;
  54.                     case 6:
  55.                         rok_slow = "cze";
  56.                         break;
  57.                     case 7:
  58.                         rok_slow = "lip";
  59.                         break;
  60.                     case 8:
  61.                         rok_slow = "sie";
  62.                         break;
  63.                     case 9:
  64.                         rok_slow = "wrz";
  65.                         break;
  66.                     case 10:
  67.                         rok_slow = "paz";
  68.                         break;
  69.                     case 11:
  70.                         rok_slow = "lis";
  71.                         break;
  72.                     case 12:
  73.                         rok_slow = "gru";
  74.                         break;
  75.  
  76.                 }
  77.                 return result = dzien + "-" + rok_slow + "-" + rok;
  78.             }
  79.          
  80.             public static bool operator ==(Data d1,Data d2)
  81.             {
  82.                 if (d1.dzien == d2.dzien && d1.miesac == d2.miesac && d1.rok == d2.rok)
  83.                 {
  84.                     return true;
  85.                 }
  86.                 else
  87.                 {
  88.                     return false;
  89.                 }
  90.             }
  91.             public static bool operator !=(Data d1,Data d2)
  92.             {
  93.                 if (d1.dzien == d2.dzien && d1.miesac == d2.miesac && d1.rok == d2.rok)
  94.                 {
  95.                     return false;
  96.                 }
  97.                 else
  98.                 {
  99.                     return true;
  100.                 }
  101.             }
  102.             public static explicit operator int(Data d1)
  103.             {
  104.                 int result;
  105.                
  106.                 switch(d1.miesac)
  107.                 {
  108.                     case 1:
  109.                         d1.m_dni = 0;
  110.                         break;
  111.                     case 2:
  112.                         d1.m_dni = 31;
  113.                         break;
  114.                     case 3:
  115.                         d1.m_dni = 58 ;
  116.                         break;
  117.                     case 4:
  118.                         d1.m_dni = 89;
  119.                         break;
  120.                     case 5:
  121.                         d1.m_dni = 119 ;
  122.                         break;
  123.                     case 6:
  124.                         d1.m_dni = 150;
  125.                         break;
  126.                     case 7:
  127.                         d1.m_dni = 180;
  128.                         break;
  129.                     case 8:
  130.                         d1.m_dni = 210;
  131.                         break;
  132.                     case 9:
  133.                         d1.m_dni = 241;
  134.                         break;
  135.                     case 10:
  136.                         d1.m_dni = 272;
  137.                         break;
  138.                     case 11:
  139.                         d1.m_dni = 302;
  140.                         break;
  141.                     case 12:
  142.                         d1.m_dni = 332;
  143.                         break;
  144.                 }
  145.                 result = d1.dzien + d1.m_dni;
  146.                 return result;
  147.             }
  148.  
  149.             public static bool przestepny(Data d1)
  150.             {
  151.                 if (d1.rok % 4 == 0 && d1.rok % 100 != 0)
  152.                     return true;
  153.                 else if (d1.rok % 400 == 0)
  154.                     return true;
  155.                 else
  156.                     return false;
  157.             }
  158.            
  159.  
  160.            
  161.         }
  162.         static void Main(string[] args)
  163.         {
  164.             Data D1 = new Data(2, 5, 2000);
  165.             Data D2 = new Data(4, 12, 2015);
  166.             Data D3 = new Data(4, 12, 2015);
  167.             Console.WriteLine("Pierwsza data: {0}",D1.ToString());
  168.             Console.WriteLine("Druga data: {0}", D2.ToString());
  169.             Console.WriteLine("D1 == D2?: {0}", D1 == D2);
  170.             Console.WriteLine("D2 == D3?: {0}", D2 == D3);
  171.             Console.WriteLine("Od poczatku roku minelo: {0}", (int)D1);
  172.             Console.WriteLine("Czy D1 jest przestepny: {0}", Data.przestepny(D1));
  173.             Console.Read();
  174.         }
  175.     }
  176. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement