Пример #1
0
        /// <summary>
        /// S tabele registracij odstrani tisto, ki se pojavi najveckrat in tisto, ki se pojavi najmanjkrat.
        /// Ce je takih registracij vec, odstranimo prvo v tabeli.
        /// </summary>
        /// <param name="tabelaRegistracij"></param>
        public static void Odstrani(ref Registracija[] tabelaRegistracij)
        {
            string[] tabelaObmocij  = tabelaRegistracij[1].Tabela_Obmocja;
            int[]    koliko_obmocij = new int[tabelaObmocij.Length]; //kolikokrat se posamezno obmocje pojavi v tabeli
            foreach (Registracija niz in tabelaRegistracij)
            {
                for (int i = 0; i < tabelaObmocij.Length; i++)
                {
                    if (niz.Obmocje == tabelaObmocij[i])           //ce je v registraciji obmocje enako obmocju v tabeli vseh na i-tem mestu
                    {
                        koliko_obmocij[i] = koliko_obmocij[i] + 1; //ga pristejemo
                        break;
                    }
                }
            }

            int najredkejse_obmocje   = koliko_obmocij.Min();
            int najpogostejse_obmocje = koliko_obmocij.Max();

            string[] tab_min_max = new string[2]; //tabela najredkeje in najpogosteje uporabljenega obmocja


            for (int i = 0; i < koliko_obmocij.Length; i++) //najredkeje uporabljeno obmocje
            {
                if (koliko_obmocij[i] == najredkejse_obmocje)
                {
                    tab_min_max[0] = tabelaObmocij[i];
                    break;
                }
            }

            for (int i = 0; i < koliko_obmocij.Length; i++) //najpogosteje uporabljeno obmocje
            {
                if (koliko_obmocij[i] == najpogostejse_obmocje)
                {
                    tab_min_max[1] = tab_min_max[0];
                    tab_min_max[1] = tabelaObmocij[i];
                    break;
                }
            }


            //v novo tabelo dodamo registracije ki niso v tabeli tab_min_max
            Registracija[] tabelaNovihRegistracij = new Registracija[tabelaRegistracij.Length - najpogostejse_obmocje - najredkejse_obmocje];
            int            k = 0;

            for (int i = 0; i < tabelaRegistracij.Length; i++)
            {
                if (tabelaRegistracij[i].Obmocje != tab_min_max[0] && tabelaRegistracij[i].Obmocje != tab_min_max[1])
                {
                    tabelaNovihRegistracij[k] = tabelaRegistracij[i];
                    k++;
                }
            }
            tabelaRegistracij = tabelaNovihRegistracij;
        }
Пример #2
0
        static void Main(string[] args)
        {
            string[] obmocja = new string[] { "LJ", "KR", "KK", "MB", "MS", "KP", "GO", "CE", "SG", "NM", "PO" };
            Random   random  = new Random();

            Registracija[] tabelaRegistracij = new Registracija[100];
            for (int el = 0; el < 100; el++)
            {
                string obmocje      = obmocja[random.Next(11)];
                string registracija = RandomString(5);
                tabelaRegistracij[el] = new Registracija(obmocje, registracija);

                /*for (int st = 1; st <=100; st++)
                 * {
                 *  Console.WriteLine("Izpis vseh registrskih tablic: " + st + " : " + tabelaRegistracij[el]);
                 * }*/
                Console.WriteLine("Izpis vseh registrskih tablic: " + tabelaRegistracij[el]);
            }

            Console.WriteLine();
            Console.WriteLine("Registrske tablice iz danega obmocja: ");
            IzpisRegistrskeSt("GO", tabelaRegistracij);
            Console.WriteLine();
            IzpisRegistrskeSt("LJ", tabelaRegistracij);
            Console.WriteLine();
            IzpisRegistrskeSt("MB", tabelaRegistracij);
            Console.WriteLine();

            Console.WriteLine("Izlocimo naredkeje in najpogosteje uporabljena obmocja: ");
            int k = 1;

            foreach (Registracija reg in tabelaRegistracij)
            {
                Console.WriteLine(k + ": " + reg);
                k++;
            }
            Console.WriteLine();

            Odstrani(ref tabelaRegistracij);

            int i = 1;

            foreach (Registracija reg in tabelaRegistracij)
            {
                Console.WriteLine(i + ": " + reg);
                i++;
            }
        }