SHARE
TWEET

Untitled

a guest Apr 24th, 2019 72 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace Naloga4._1
  8. {
  9.     public enum Prehranjevanje { rastlinojedec, mesojedec, vsejedec };
  10.     public enum Spol { moski, zenska };
  11.     public enum Status { študent, upokojenec, zaposlen };
  12.  
  13.  
  14.  
  15.     interface IPRODAJNI
  16.     {
  17.         void ProdajKarto(Termin termin, Obiskovalec obiskovalec);
  18.         void PrekliciKarto(Termin termin, Obiskovalec obiskovalec);
  19.         //bool MestoProsto(Termin termin);
  20.         double IzračunajCeno(Obiskovalec obiskovalec);
  21.     }
  22.  
  23.     class Izlet:IPRODAJNI
  24.     {
  25.         private string naziv;
  26.         private double cena;
  27.  
  28.         //Ne pozabi da si spremenil na static
  29.         private int trajanjeIzleta;
  30.  
  31.         private static Termin[] termini;
  32.  
  33.         public string Naziv
  34.         {
  35.             get { return naziv; }
  36.             set { naziv = value; }
  37.         }
  38.         public double Cena
  39.         {
  40.             get { return cena; }
  41.             set { cena = value; }
  42.         }
  43.         public int TrajanjeIzleta
  44.         {
  45.             get { return trajanjeIzleta; }
  46.             set { trajanjeIzleta = value; }
  47.         }
  48.         public Termin[] Termini
  49.         {
  50.             get { return termini; }
  51.             set { termini = value; }
  52.  
  53.         }
  54.  
  55.         public Izlet(string _naziv, double _cena, int _trajanjeIzleta, Termin[] _termini)
  56.         {
  57.             Naziv = _naziv;
  58.             Cena = _cena;
  59.             TrajanjeIzleta = _trajanjeIzleta;
  60.             Termini = _termini;
  61.         }
  62.         //METODA: ProdajKarto
  63.         public void ProdajKarto(Termin termin, Obiskovalec obiskovalec)
  64.         {
  65.             Termin t = najdiTermin(termin);
  66.             if (t != null)
  67.             {
  68.                 t.PrijaviObiskovalca(obiskovalec);
  69.             }
  70.             else
  71.             {
  72.                 Console.WriteLine("Termin ne obstaja");
  73.             }
  74.          
  75.         }
  76.         //METODA:PrekliciKarto
  77.         public void PrekliciKarto(Termin termin, Obiskovalec obiskovalec)
  78.         {
  79.             Termin t = najdiTermin(termin);
  80.             if (t != null)
  81.             {
  82.                 t.OdjaviObiskovalca(obiskovalec);
  83.                 Console.WriteLine("Obiskovalec {0} {1} je odjavljen s seznama.", obiskovalec.Ime, obiskovalec.Priimek);
  84.             }
  85.             else
  86.             {
  87.                 Console.WriteLine("Obiskovalec ni na seznamu.");
  88.             }
  89.         }
  90.      
  91.        
  92.         ///POMOŽNA METODA
  93.         public Termin najdiTermin(Termin t)
  94.         {
  95.             for(int i = 0; i <termini.Length; i++)
  96.             {
  97.                 if(termini[i].ZačetekOgleda==t.ZačetekOgleda && termini[i].KonecOgleda == t.KonecOgleda)
  98.                 {
  99.                     return termini[i];
  100.                 }
  101.             }
  102.             return null;
  103.         }
  104.         //INTERFACE metoda IzračunajCeno
  105.         public double IzračunajCeno(Obiskovalec obiskovalec)
  106.         {
  107.             double cena = Cena;
  108.  
  109.             if (obiskovalec.Status == Status.upokojenec)
  110.             {
  111.                 return cena = cena * 0.90;
  112.             }
  113.             else if (obiskovalec.Status == Status.študent)
  114.             {
  115.                 return cena = cena * 0.85;
  116.                
  117.             }
  118.             else
  119.                 return cena;
  120.         }
  121.  
  122.         public bool MestoProsto(Termin termin)
  123.         {
  124.             Termin t = najdiTermin(termin);
  125.  
  126.             if (t != null)
  127.             {
  128.                 return t.prostoMesto();
  129.             }
  130.             else
  131.             {
  132.                 Console.WriteLine("Termin ne obstaja");
  133.                 return false;
  134.             }
  135.  
  136.         }
  137.  
  138.         /// POMOŽNA METODA
  139.         public static void Temp()
  140.         {
  141.             foreach(Termin t in termini)
  142.             {
  143.                 Console.WriteLine(t.ZačetekOgleda + "" + t.KonecOgleda);
  144.             }
  145.         }
  146.        
  147.     }
  148.  
  149.     class Termin
  150.     {
  151.         private DateTime začetekOgleda;
  152.         private DateTime konecOgleda;
  153.         private Zival dodeljenaŽival;
  154.  
  155.         public DateTime ZačetekOgleda
  156.         {
  157.             get { return začetekOgleda; }
  158.             set { začetekOgleda = value; }
  159.         }
  160.         public DateTime KonecOgleda
  161.         {
  162.             get { return konecOgleda; }
  163.             set { konecOgleda = value; }
  164.         }
  165.         public Zival DodeljenaŽival
  166.         {
  167.             get { return dodeljenaŽival; }
  168.             set { dodeljenaŽival = value; }
  169.         }
  170.  
  171.         public Termin(DateTime _začetekOgleda, DateTime _konecOgleda, Zival _dodeljenaZival)
  172.         {
  173.             ZačetekOgleda = _začetekOgleda;
  174.             KonecOgleda = _konecOgleda;
  175.             DodeljenaŽival = _dodeljenaZival;
  176.         }
  177.  
  178.         //Seznam na izlet prijavljenih obiskovalcev
  179.         public Obiskovalec[] seznam = new Obiskovalec[5];
  180.  
  181.         private int steviloPrijavljenih = 0;
  182.  
  183.         ///Helper metoda za INTERFACE ProdajKarto
  184.         public void PrijaviObiskovalca(Obiskovalec novObiskovalec)
  185.         {
  186.             //mislim da je seznam.Length-1 napaka, sm dal stran
  187.             if (steviloPrijavljenih == seznam.Length)
  188.             {
  189.                 Console.WriteLine("Seznam je poln");
  190.             }
  191.             else
  192.             {
  193.                 seznam[steviloPrijavljenih] = novObiskovalec;
  194.                 steviloPrijavljenih++;
  195.                 Console.WriteLine("Obiskovalec {0} {1} je dodan na seznam", novObiskovalec.Ime, novObiskovalec.Priimek);
  196.             }
  197.         }
  198.  
  199.         ///Helper metoda za INTERFACE PrekliciKarto
  200.         public void OdjaviObiskovalca(Obiskovalec obiskovalec)
  201.         {
  202.             for(int i = 0; i < seznam.Length; i++)
  203.             {
  204.                 if (seznam[i].Email == obiskovalec.Email)
  205.                 {
  206.                     seznam[i] = null;
  207.                     steviloPrijavljenih--;
  208.                     break;
  209.                 }
  210.             }
  211.             Obiskovalec[] novSeznam = new Obiskovalec[seznam.Length];
  212.             for(int i = 0; i < novSeznam.Length; i++)
  213.             {
  214.                 if (seznam[i] != null)
  215.                 {
  216.                     novSeznam[i] = seznam[i];
  217.                 }
  218.             }
  219.             seznam = novSeznam;
  220.            
  221.         }
  222.         ///Helper metoda za INTERFACE MestoProsto
  223.         public bool prostoMesto()
  224.         {
  225.             return seznam.Length > steviloPrijavljenih + 1;
  226.         }
  227.      
  228.  
  229.  
  230.  
  231.  
  232.     }
  233.  
  234.     class Obiskovalec
  235.     {
  236.         private string ime;
  237.         private string priimek;
  238.         private Spol spol;
  239.         private DateTime datumRojstva;
  240.         private string email;
  241.         private Status status;
  242.  
  243.         public string Ime
  244.         {
  245.             get { return ime; }
  246.             set { ime = value; }
  247.         }
  248.         public string Priimek
  249.         {
  250.             get { return priimek; }
  251.             set { priimek = value; }
  252.         }
  253.         public Spol Spol
  254.         {
  255.             get { return spol; }
  256.             set { spol = value; }
  257.         }
  258.         public DateTime DatumRojstva
  259.         {
  260.             get { return datumRojstva; }
  261.             set { datumRojstva = value; }
  262.         }
  263.         public string Email
  264.         {
  265.             get { return email; }
  266.             set { email = value; }
  267.         }
  268.         public Status Status
  269.         {
  270.             get { return status; }
  271.             set { status = value; }
  272.         }
  273.  
  274.         public Obiskovalec(string _ime, string _priimek, Spol _spol, DateTime _datumRojstva, string _email, Status _status)
  275.         {
  276.             Ime = _ime;
  277.             Priimek = _priimek;
  278.             Spol = _spol;
  279.             DatumRojstva = _datumRojstva;
  280.             Email = _email;
  281.             Status = _status;
  282.         }
  283.  
  284.         public bool Enakost(Obiskovalec ob1, Obiskovalec ob2)
  285.         {
  286.             if (ob1.ime == ob2.ime && ob1.priimek == ob2.priimek && ob1.spol == ob2.spol && ob1.DatumRojstva == ob2.DatumRojstva)
  287.             {
  288.                 Console.WriteLine("Osebi sta enaki");
  289.                 return true;
  290.             }
  291.             else
  292.             {
  293.                 Console.WriteLine("Osebi sta različni");
  294.                 return false;
  295.             }
  296.         }
  297.  
  298.  
  299.  
  300.     }
  301.  
  302.     class Zival
  303.     {
  304.         private string poreklo;
  305.         private int starost;
  306.         private double teza;
  307.         private Kartoteka kartoteka;
  308.         private DnevnikHranjenja dnevnik;
  309.         private Spol spol;
  310.  
  311.         //Getterji setterji
  312.         public Spol _spol
  313.         {
  314.             get { return spol; }
  315.             set { spol = value; }
  316.         }
  317.         public Kartoteka _kartoteka
  318.         {
  319.             get { return kartoteka; }
  320.             set { kartoteka = value; }
  321.         }
  322.         public DnevnikHranjenja _dnevnik
  323.         {
  324.             get { return dnevnik; }
  325.             set { dnevnik = value; }
  326.         }
  327.         public int _starost
  328.         {
  329.             get { return starost; }
  330.             set { starost = value; }
  331.         }
  332.         public double _teza
  333.         {
  334.             get { return teza; }
  335.             set { teza = value; }
  336.         }
  337.         public string _poreklo
  338.         {
  339.             get { return poreklo; }
  340.             set { poreklo = value; }
  341.         }
  342.  
  343.         public Zival()
  344.         {
  345.  
  346.         }
  347.  
  348.         public Zival(string _poreklo, int _starost, double _teza, Spol Sp, Kartoteka Kart)
  349.         {
  350.             poreklo = _poreklo;
  351.             starost = _starost;
  352.             teza = _teza;
  353.             _spol = Sp;
  354.             _kartoteka = Kart;
  355.  
  356.  
  357.  
  358.         }
  359.         ////3. Konstruktor
  360.         //public Zival(Spol spol,string _poreklo, int _starost, double _teza, Kartoteka _kartoteka, DnevnikHranjenja _dnevnik) : this(_poreklo, _starost, _teza)
  361.         //{
  362.         //    kartoteka = _kartoteka;
  363.         //    dnevnik = _dnevnik;
  364.         //    spol = _spol;
  365.         //}
  366.  
  367.         //Virtualna metoda, ki jo predefiniramo v izpeljanih razredih
  368.  
  369.         public virtual void Izpis()
  370.         {
  371.             Console.WriteLine("\nPoreklo: {0}, starost {1}, teza {2},\nKartoteka: Opis težav: {3}, " +
  372.                 "Datum pregleda: {4}", poreklo, starost,
  373.                 teza, kartoteka._opisTezav, kartoteka._datum);
  374.         }
  375.  
  376.  
  377.     }
  378.     class OdraslaZival : Zival
  379.     {
  380.         private int steviloPotomcev;
  381.         public int _steviloPotomcev
  382.         {
  383.             get { return steviloPotomcev; }
  384.             set { steviloPotomcev = value; }
  385.         }
  386.         //public OdraslaZival(int potomci, string _poreklo, int _starost, double _teza, Kartoteka _kartoteka, DnevnikHranjenja _dnevnik, Spol _spol)
  387.         //    :base(_spol, _poreklo, _starost, _teza, _kartoteka, _dnevnik)
  388.         //{
  389.         //    _steviloPotomcev = potomci;
  390.  
  391.         //    //Kaj je praviln način nastavljanja vrednosti v konstruktorju?
  392.         //    /*Popravi poimenovanja v vseh tak ko si tu naredo */
  393.  
  394.         //}
  395.  
  396.         public OdraslaZival(int SteviloPotomcev, string _poreklo, int _starost, double _teza, Spol Sp, Kartoteka Kart)
  397.             : base(_poreklo, _starost, _teza, Sp, Kart)
  398.         {
  399.             _steviloPotomcev = SteviloPotomcev;
  400.         }
  401.  
  402.         /*3 naloga*/
  403.         public sealed override void Izpis()
  404.         {
  405.             base.Izpis();
  406.             Console.WriteLine("Potomci: {0} \n", _steviloPotomcev);
  407.  
  408.         }
  409.     }
  410.     class Mladic : Zival
  411.     {
  412.         private Prehranjevanje prehranjevanje;
  413.         public Prehranjevanje _prehranjevanje
  414.         {
  415.             get { return prehranjevanje; }
  416.             set { prehranjevanje = value; }
  417.         }
  418.  
  419.         public Mladic(Prehranjevanje Hranjenje, string _poreklo, int _starost, double _teza, Spol Sp, Kartoteka _kartoteka)
  420.             : base(_poreklo, _starost, _teza, Sp, _kartoteka)
  421.         {
  422.             _prehranjevanje = Hranjenje;
  423.  
  424.         }
  425.  
  426.         //public Mladic(Prehranjevanje hrana, string _poreklo, int _starost, double _teza, Kartoteka _kartoteka, DnevnikHranjenja _dnevnik, Spol _spol)
  427.         //    : base(_spol,_poreklo, _starost, _teza, _kartoteka, _dnevnik)
  428.         //{
  429.         //    hrana = _prehranjevanje;
  430.         //}
  431.  
  432.         public override void Izpis()
  433.         {
  434.             base.Izpis();
  435.             Console.WriteLine("Žival je {0}\n ", _prehranjevanje);
  436.         }
  437.  
  438.  
  439.  
  440.  
  441.     }
  442.     class Kartoteka
  443.     {
  444.         private DateTime datum;
  445.         private string opisTezav;
  446.  
  447.         public DateTime _datum
  448.         {
  449.             get { return datum; }
  450.             set { datum = value; }
  451.         }
  452.         public string _opisTezav
  453.         {
  454.             get { return opisTezav; }
  455.             set { opisTezav = value; }
  456.         }
  457.  
  458.         //default constructor
  459.         public Kartoteka()
  460.         {
  461.  
  462.         }
  463.  
  464.         public Kartoteka(DateTime _datum, string _opisTezav)
  465.         {
  466.             datum = _datum;
  467.             opisTezav = _opisTezav;
  468.         }
  469.  
  470.         public void Izpis()
  471.         {
  472.             Console.WriteLine("Datum: {0}, opis težav: {1}", datum, opisTezav);
  473.         }
  474.  
  475.     }
  476.  
  477.     abstract class DnevnikHranjenja
  478.     {
  479.         private double kolicinaObroka;
  480.         private DateTime datumObroka;
  481.         private decimal porabaVode;
  482.  
  483.         public decimal _porabaVode
  484.         {
  485.             get { return porabaVode; }
  486.             set { porabaVode = value; }
  487.         }
  488.  
  489.         //Getterji setterji
  490.         public double _kolicinaObroka
  491.         {
  492.             get { return kolicinaObroka; }
  493.             set { kolicinaObroka = value; }
  494.         }
  495.         public DateTime _datumObroka
  496.         {
  497.             get { return datumObroka; }
  498.             set { datumObroka = value; }
  499.         }
  500.  
  501.         //Privzeti konstruktor
  502.         public DnevnikHranjenja()
  503.         {
  504.  
  505.         }
  506.         //Drugi konstruktor
  507.         public DnevnikHranjenja(double _kolicinaObroka, DateTime _datumObroka)
  508.         {
  509.             kolicinaObroka = _kolicinaObroka;
  510.             datumObroka = _datumObroka;
  511.         }
  512.  
  513.         public void Izpis()
  514.         {
  515.             Console.WriteLine("Količina: {0}, datum obroka {1}", kolicinaObroka, datumObroka);
  516.         }
  517.  
  518.         ///Metoda za izračun porabljene vode glede na datum
  519.         public decimal porabljenaVoda(DateTime zacetek, DateTime konec)
  520.         {
  521.             double razlika = (konec - zacetek).TotalDays;
  522.             decimal poraba = (decimal)razlika * 10;
  523.             //shranimo porabo v _porabaVode
  524.             _porabaVode = poraba;
  525.  
  526.             return poraba;
  527.         }
  528.  
  529.         ///Metoda za izračun porabljene vode glede na datum in vreme
  530.         public decimal porabljenaVoda(DateTime zacetek, DateTime konec, string pogoji)
  531.         {
  532.             //shranimo klic prejsnje funkcije v porabo
  533.             decimal poraba = porabljenaVoda(zacetek, konec);
  534.  
  535.  
  536.             if (pogoji.ToLower() == "sončno" || pogoji.ToLower() == "soncno")
  537.             {
  538.                 decimal rezultat = (poraba * 150) / 100;
  539.  
  540.                 _porabaVode = rezultat;
  541.                 Console.WriteLine("Poraba v sončnem vremenu je {0} litrov", rezultat);
  542.                 return rezultat;
  543.             }
  544.             else
  545.             {
  546.                 decimal rezultat = (poraba * 90) / 100;
  547.                 _porabaVode = rezultat;
  548.                 Console.WriteLine("Poraba deževnem vremenu je {0} litrov", rezultat);
  549.                 return rezultat;
  550.             }
  551.  
  552.         }
  553.  
  554.         ///Abstraktna metoda
  555.         public abstract void izracunajKalorijeObroka();
  556.  
  557.     }
  558.     class Zajtrk : DnevnikHranjenja
  559.     {
  560.         private double beljakovine;
  561.         private double ogljikoviHidrati;
  562.  
  563.         //get set
  564.         public double _beljakovine
  565.         {
  566.             get { return beljakovine; }
  567.             set { beljakovine = value; }
  568.         }
  569.         public double _ogljikoviHidrati
  570.         {
  571.             get { return ogljikoviHidrati; }
  572.             set { ogljikoviHidrati = value; }
  573.         }
  574.  
  575.         public Zajtrk(double Beljakovine, double OgljikoviHidrati, double _kolicinaObroka, DateTime _datumObroka)
  576.             : base(_kolicinaObroka, _datumObroka)
  577.         {
  578.             _beljakovine = Beljakovine;
  579.             _ogljikoviHidrati = OgljikoviHidrati;
  580.         }
  581.  
  582.         //Prekrijemo metodo nadrazreda
  583.         public new void Izpis()
  584.         {
  585.             Console.WriteLine("Beljakovine: {0}g, OgljikoviHidrati: {1}g", _beljakovine, _ogljikoviHidrati);
  586.         }
  587.  
  588.         public override void izracunajKalorijeObroka()
  589.         {
  590.             double skupneCal = _beljakovine * 4.0 + _ogljikoviHidrati * 4.1;
  591.             Console.WriteLine("Skupaj: {0} kalorij", skupneCal);
  592.         }
  593.  
  594.  
  595.  
  596.     }
  597.     class Vecerja : DnevnikHranjenja
  598.     {
  599.         private double beljakovine;
  600.         private double ogljikoviHidrati;
  601.         private double mascobe;
  602.  
  603.         public double _beljakovine
  604.         {
  605.             get { return beljakovine; }
  606.             set { beljakovine = value; }
  607.         }
  608.         public double _ogljikoviHidrati
  609.         {
  610.             get { return ogljikoviHidrati; }
  611.             set { ogljikoviHidrati = value; }
  612.         }
  613.         public double _mascobe
  614.         {
  615.             get { return mascobe; }
  616.             set { mascobe = value; }
  617.         }
  618.  
  619.         public Vecerja(double Beljakovine, double OgljikoviHidrati, double Mascobe, double _kolicinaObroka, DateTime _datumObroka)
  620.             : base(_kolicinaObroka, _datumObroka)
  621.         {
  622.             _beljakovine = Beljakovine;
  623.             _ogljikoviHidrati = OgljikoviHidrati;
  624.             _mascobe = Mascobe;
  625.         }
  626.  
  627.         public new void Izpis()
  628.         {
  629.             Console.WriteLine("Beljakovine: {0}g, OgljikoviHidrati: {1}g", _beljakovine, _ogljikoviHidrati);
  630.         }
  631.  
  632.         public override void izracunajKalorijeObroka()
  633.         {
  634.             double skupneCal = _beljakovine * 4.0 + _ogljikoviHidrati * 4.1 + _mascobe * 9.0;
  635.             Console.WriteLine("Skupaj: {0} kalorij", skupneCal);
  636.         }
  637.     }
  638.  
  639.     class Program
  640.     {
  641.         static void Main(string[] args)
  642.         {
  643.             #region
  644.             //zival1.Izpis();
  645.  
  646.             ////zival2.Izpis();
  647.             //Console.WriteLine("");
  648.             ////zival3.Izpis();
  649.             //Console.WriteLine("");
  650.  
  651.             /*--- DRUGA NALOGA---*/
  652.             //dnevnik1.porabljenaVoda(new DateTime(2019, 3, 20), new DateTime(2019, 3, 27));
  653.             //dnevnik1.porabljenaVoda(new DateTime(2019, 3, 20), new DateTime(2019, 3, 27), "slabo");
  654.             //dnevnik2.porabljenaVoda(new DateTime(2019, 5, 10), new DateTime(2019, 6, 27), "sončno");
  655.  
  656.             /*-- PRVA NALOGA-- */
  657.             //DnevnikHranjenja dnevnik1 = new DnevnikHranjenja(3, new DateTime(2019, 3, 4));
  658.  
  659.             //Zival zival1 = new Zival(Spol.moski,"Afrika", 22, 150, kartoteka1, dnevnik1);
  660.  
  661.             //DnevnikHranjenja dnevnik2 = new DnevnikHranjenja(10, new DateTime(2019, 3, 4));
  662.  
  663.             //Zival zival2 = new Zival(Spol.zenska,"Afrika", 32, 400, kartoteka2, dnevnik2);
  664.  
  665.             //DnevnikHranjenja dnevnik3 = new DnevnikHranjenja(2, new DateTime(2019, 3, 4));
  666.  
  667.             //Zival zival3 = new Zival(Spol.zenska,"Afrika", 5, 22, kartoteka3, dnevnik3);
  668.  
  669.  
  670.             /*--- TRETJA NALOGA---*/
  671.             //Kartoteka kartoteka1 = new Kartoteka(new DateTime(2014, 4, 21), "Klopni menigitis");
  672.             //Kartoteka kartoteka2 = new Kartoteka(new DateTime(2013, 4, 10), "Pljučnica");
  673.             //Kartoteka kartoteka3 = new Kartoteka(new DateTime(2012, 3, 5), "Depresija");
  674.  
  675.             //Zajtrk zajtrk = new Zajtrk(50, 200, 0.5, new DateTime(2019, 3, 4));
  676.             //Vecerja vecerja = new Vecerja(40, 60, 20, 0.3, new DateTime(2019, 3, 4));
  677.  
  678.             //OdraslaZival odraslaZival = new OdraslaZival(4, "Azije", 28, 80, Spol.moski, kartoteka1);
  679.             //Mladic mladic = new Mladic(Prehranjevanje.vsejedec, "Azija", 3, 10, Spol.zenska, kartoteka2);
  680.  
  681.  
  682.             ////zajtrk.Izpis();
  683.             ////vecerja.Izpis();
  684.  
  685.             //odraslaZival.Izpis();
  686.             //mladic.Izpis();
  687.  
  688.             //zajtrk.izracunajKalorijeObroka();
  689.             //vecerja.izracunajKalorijeObroka();
  690.             #endregion
  691.             Kartoteka k1 = new Kartoteka(new DateTime(2019, 9, 9), "Bronhitis");
  692.             Zival zival1 = new Zival("Severna Amerika", 18, 240, Spol.moski, k1);
  693.  
  694.             Obiskovalec obiskovalec1 = new Obiskovalec("Miha", "Novak", Spol.moski, new DateTime(1999, 08, 30), "miha@yahoo.com", Status.študent);
  695.             Obiskovalec obiskovalec2 = new Obiskovalec("Jona", "Potrč", Spol.zenska, new DateTime(1996, 02, 19), "jona@yahoo.com", Status.študent);
  696.             Obiskovalec obiskovalec3 = new Obiskovalec("Jure", "Meh", Spol.moski, new DateTime(1990, 02, 22), "jure@yahoo.com", Status.zaposlen);
  697.             Obiskovalec obiskovalec4 = new Obiskovalec("Žiga", "Petelin", Spol.zenska, new DateTime(2000, 08, 19), "ziga@yahoo.com", Status.zaposlen);
  698.             Obiskovalec obiskovalec5 = new Obiskovalec("Janez", "Novak", Spol.moski, new DateTime(1912, 03, 19), "janez@yahoo.com", Status.upokojenec);
  699.             Obiskovalec obiskovalec6 = new Obiskovalec("Tadej", "Tomič", Spol.moski, new DateTime(1992, 05, 19), "tadej@yahoo.com", Status.študent);
  700.  
  701.  
  702.             Termin termin1 = new Termin(new DateTime(2012, 12, 19), new DateTime(2012, 12, 19), zival1);
  703.             Termin termin2 = new Termin(new DateTime(2019, 5, 5), new DateTime(2019, 5, 6), zival1);
  704.             Termin termin3 = new Termin(new DateTime(2019, 5, 6), new DateTime(2019, 5, 7), zival1);
  705.             Termin termin4 = new Termin(new DateTime(2019, 5, 7), new DateTime(2019, 5, 8), zival1);
  706.             Termin termin5 = new Termin(new DateTime(2019, 5, 9), new DateTime(2019, 5, 10), zival1);
  707.  
  708.             Termin termin6 = new Termin(new DateTime(2019, 8, 8), new DateTime(2019, 8, 9), zival1);
  709.  
  710.             Termin[] terminiIzletov = new Termin[5];
  711.             terminiIzletov[0] = termin1;
  712.             terminiIzletov[1] = termin2;
  713.             terminiIzletov[2] = termin3;
  714.             terminiIzletov[3] = termin4;
  715.             terminiIzletov[4] = termin5;
  716.  
  717.  
  718.             Izlet izlet1 = new Izlet("Ogled grizzlijev", 80, 12, terminiIzletov);
  719.  
  720.  
  721.             obiskovalec1.Enakost(obiskovalec2, obiskovalec1);
  722.             obiskovalec1.Enakost(obiskovalec1, obiskovalec1);
  723.  
  724.             //Tu bo obvestilo o napačnem terminu
  725.             izlet1.ProdajKarto(termin6,obiskovalec1);
  726.  
  727.             //Prodaj karto
  728.             izlet1.ProdajKarto(termin1,obiskovalec1);
  729.             izlet1.ProdajKarto(termin1,obiskovalec2);
  730.             izlet1.ProdajKarto(termin1,obiskovalec3);
  731.             izlet1.ProdajKarto(termin1,obiskovalec4);
  732.             izlet1.ProdajKarto(termin1,obiskovalec5);
  733.             izlet1.ProdajKarto(termin1,obiskovalec5);
  734.  
  735.             //Prekliči karto
  736.             //izlet1.PrekliciKarto(termin1, obiskovalec1);
  737.  
  738.             //Izračunaj ceno
  739.             double cena=izlet1.IzračunajCeno(obiskovalec1);
  740.             Console.WriteLine(cena);
  741.  
  742.             //Prosto mesto
  743.             Console.WriteLine(izlet1.MestoProsto(termin1));
  744.             Console.WriteLine(izlet1.MestoProsto(termin2));
  745.  
  746.             Console.WriteLine("Prosto mesto: {0}", termin2.prostoMesto() ? "Da" : "Ne");
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.             //Izlet.Temp();
  759.  
  760.  
  761.  
  762.  
  763.             Console.ReadLine();
  764.  
  765.            
  766.         }
  767.     }
  768. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top