Example #1
0
        public void Dodaj(T podatek)//Metoda za dodajanje elementa na začetek seznama
        {
            Vozel <T> nov = new Vozel <T>(podatek);

            nov.Nasl = Zacetek;
            Zacetek  = nov;
        }
Example #2
0
 public Vozel()  // privzeti konstruktor nastavi privzete vrednosti
 {
     this.Vsebina = default(T);
     // kazalec na naslednji element
     this.Nasl = null;
     Zacetek   = this;
 }
        //samo shrani brez pravilnega izpisa za
        private void shrani <T>(Vozel <T> voz)
        {
            string izpis = "";
            string fil   = DateTime.UtcNow.TimeOfDay.ToString().Replace(":", "");
            //Console.WriteLine(DateTime.UtcNow.TimeOfDay.ToString().Replace(".", ""));
            FileStream fs = File.Create(@"./VozelInZbirka_Podatki/" + fil + ".txt");

            fs.Close();

            if (voz != null)
            {
                if (voz.Vsebina != null)
                {
                    izpis += voz.Vsebina.ToString() + "\n";
                    voz    = voz.Nasl;
                    Izpis(voz);
                }
            }
            StreamWriter file = new StreamWriter(@"./VozelInZbirka_Podatki/" + fil + ".txt");

            file.WriteLine(izpis);
            MessageBox.Show("Izpisano ", "Izpisano", MessageBoxButton.OK, MessageBoxImage.Information);

            file.Close();// lahko bi uporabu using stavek
        }
Example #4
0
 public void Izpis <T>(Vozel <T> Zacetek) // Metoda za izpis seznama
 {
     //shranim začetek seznama
     Console.Write("ZAČETEK->");
     //premikamo se toliko časa, da je naslov naslednjega podatka null
     while (Zacetek != null)
     {
         Console.Write(Zacetek.Vsebina + " ");
         Zacetek = Zacetek.naslednji;
     }
     Console.Write("->KONEC\n");
 }
 //samo za vajo je rekruzivno
 private void Izpis <T>(Vozel <T> voz)
 {
     if (voz != null)
     {
         if (voz.Vsebina != null) //prej sem narove vstavljal pa je to blo potrebno dodati. ta if ni več potreben
         {
             vsebinaa += voz.Vsebina.ToString() + "\n";
             voz       = voz.Nasl;
             Izpis(voz);
         }
     }
 }
Example #6
0
        /*metoda za dodajanje novega podatka na konec seznama: drugi parameter je klican  po referenci, saj se bo lahjo spremenil začetek seznama*/
        public void VstaviNaKonec(T podatek)
        {
            Vozel <T> kjeSmo = Zacetek; //pomožni objekt za premik po seznamu

            while (kjeSmo.Nasl != null) /*dokler ne pridemo do konca seznama, oz. dokler ne najdemo podatka za brisanje*/
            {
                kjeSmo = kjeSmo.Nasl;   //prestavimo se na naslednji objekt
            }
            //ko pridemo iz zanke kazalec tekoči zagotovo kaže na zadnji objekt
            Vozel <T> nov = new Vozel <T>();

            nov.Vsebina = podatek;
            kjeSmo.Nasl = nov;
        }
Example #7
0
        public int PrestejElemente() //Metoda, ki vrne število elementov seznama
        {
            int stevec = 0;

            if (Zacetek != null)
            {
                Vozel <T> kjeSmo = Zacetek;//začetek seznama
                stevec = 1;
                while (kjeSmo.Nasl != null)
                {
                    stevec++;
                    kjeSmo = kjeSmo.Nasl;
                }
            }
            return(stevec);
        }
Example #8
0
 /*metoda ki v seznamu poišče podatek "podatek" in ga odstrani: prvi parameter je klican po referenci, saj se bo lahjo spremenil začetek seznama*/
 public void Izbriši(T podatek)
 {
     if (Zacetek.Vsebina != null)//če seznam ni prazen
     {
         //preverimo, če je iskani podatek že na začetku seznama
         if (Zacetek.Vsebina.Equals(podatek))
         {
             if (Zacetek.naslednji != null)
             {
                 Zacetek = Zacetek.Nasl;
             }
             else
             {
                 Zacetek = null;
             }
         }
         else
         {
             Vozel <T> tekoči = Zacetek; //dodatni objekt za premik po seznamu
             while (tekoči.Nasl != null) /*dokler ne pridemo do konca seznama, oz. dokler ne najdemo podatka za brisanje*/
             {
                 //ali se vsebina NASLEDNJEGA objekta ujema z našim podatkom
                 if (tekoči.Nasl.Vsebina.Equals(podatek))
                 {
                     //preverimo, če ne gre slučajno za zadnji podatek v seznamu
                     if (tekoči.Nasl.Nasl != null)
                     {
                         //ker to ni zadnji objekt,prestavimo kazalec za ena naprej
                         tekoči.Nasl = tekoči.Nasl.Nasl;
                     }
                     else
                     {
                         tekoči.Nasl = null; /*ker gre za ZADNJI objekt, nastavimo kazalec na null*/
                     }
                     break;                  //izhod iz zanke while
                 }
                 else
                 {
                     tekoči = tekoči.Nasl; //
                 }
             }
         }
     }
 }
Example #9
0
 public void Izpis() //običajna metoda za izpis poljubnega seznama
 {
     //shranim začetek seznama
     if (this != null)
     //lahko tudi takole:  if (Zacetek!=null)
     {
         //zapomnim si (shranim) začetek seznama
         Vozel <T> zacasni = ZacetekSeznama;
         Console.Write("ZAČETEK->");
         // premikamo se toliko časa, da je naslov naslednjega podatka null
         while (zacasni != null)
         {
             Console.Write(zacasni.Vsebina + " ");
             zacasni = zacasni.naslednji;
         }
         Console.Write("->KONEC\n");
     }
     else
     {
         Console.WriteLine("Seznam je prazen!");
     }
 }
        private void ŠteviloElementov(Vozel <Deli> voz)
        {
            int st = 0;

            vsebinaa = "";
            while (voz != null)
            {
                if (voz.Vsebina != null)
                {
                    if (voz.Vsebina.TaKolicina >= 10)
                    {
                        st++;
                    }
                    voz = voz.Nasl;
                }
                else
                {
                    break;
                }
            }
            vsebinaa = "Število artiklov ki imajo ceno večjo od 10: " + st;
        }