コード例 #1
0
        static void Išmesti(Poliklinika mas, DateTime data)
        {
            int m = 0;

            for (int i = 0; i < mas.n; i++)
            {
                Klientas temp = mas.Imti(i);
                if (temp.GimimoData < data)
                {
                    mas.Dėti(temp, m++);
                }
            }
            mas.n = m;

            //Arba

            /*
             * for (int i = 0; i < mas.n; i++)
             * {
             *  Klientas temp = mas.Imti(i);
             *  if (temp.GimimoData > data)
             *  {
             *      for (int j = i; j < mas.n - 1; j++)
             *      {
             *          mas.Dėti(mas.Imti(j + 1), j);
             *      }
             *      mas.n--;
             *  }
             * }
             */
        }
コード例 #2
0
 static void Įterpti(Poliklinika mas, Klientas klientas, int k)
 {
     for (int i = mas.n; i > k; i--)
     {
         Klientas temp = mas.Imti(i - 1);
         mas.Dėti(temp, i);
     }
     mas.Dėti(klientas, k);
     mas.n = mas.n + 1;
 }
コード例 #3
0
        static void Main(string[] args)
        {
            Console.OutputEncoding = Encoding.GetEncoding(1257);
            Console.InputEncoding  = Encoding.Unicode;

            Poliklinika klientai = new Poliklinika();

            Skaityti(duom, klientai);
            Spausdinti(klientai, "Pradiniai duomenys:");

            klientai.Rikiuoti();
            Spausdinti(klientai, "Surikiuoti duomenys:");

            Console.Write("Įveskite datą, už kurią jaunesnius klientus norite pašalinti: ");
            DateTime data = DateTime.Parse(Console.ReadLine());

            Išmesti(klientai, data);
            if (klientai.n > 0)
            {
                Spausdinti(klientai, string.Format("Pašalinti už {0:d} jaunesni klientai:", data));
            }
            else
            {
                Console.WriteLine("Pašalinti už {0:d} jaunesni klientai:", data);
                Console.WriteLine("Iš sąrašo išmesti visi elementai!\r\n");
            }

            Klientas naujasKlientas;

            Console.WriteLine("Įveskite naujo kliento duomenis: ");
            Console.Write("Pavardę ir vardą: ");
            string vp = Console.ReadLine();

            Console.Write("Telefono numerį: ");
            string tlf = Console.ReadLine();

            Console.Write("Sodros pažymėjimo numerį: ");
            string sNr = Console.ReadLine();

            Console.Write("Gimimo datą: ");
            DateTime gim = DateTime.Parse(Console.ReadLine());

            naujasKlientas = new Klientas(vp, tlf, sNr, gim);
            int ind = RastiIndeksą(klientai, naujasKlientas);

            Console.WriteLine();
            //Console.WriteLine(ind);
            Įterpti(klientai, naujasKlientas, ind);
            Spausdinti(klientai, "Įterptas naujas klientas:");

            Console.WriteLine("Programa baigė darbą!");
        }
コード例 #4
0
        public void Rikiuoti()
        {
            int minInd;

            for (int i = 0; i < n - 1; i++)
            {
                minInd = i;
                for (int j = i + 1; j < n; j++)
                {
                    if (klientai[j] < klientai[minInd])
                    {
                        minInd = j;
                    }
                }

                Klientas temp = klientai[i];
                klientai[i]      = klientai[minInd];
                klientai[minInd] = temp;
            }
        }
コード例 #5
0
        static void Skaityti(string duom, Poliklinika mas)
        {
            using (StreamReader reader = new StreamReader(duom))
            {
                string   line;
                string[] parts;

                string   vp, tlf, sNr;
                DateTime gim;

                while ((line = reader.ReadLine()) != null && ((mas.n + 1) < mas.Max()))
                {
                    parts = line.Split(';');
                    vp    = parts[0].Trim();
                    tlf   = parts[1].Trim();
                    sNr   = parts[2].Trim();
                    gim   = DateTime.Parse(parts[3].Trim());
                    Klientas naujas = new Klientas(vp, tlf, sNr, gim);
                    mas.Dėti(naujas);
                }
            }
        }
コード例 #6
0
        static int RastiIndeksą(Poliklinika mas, Klientas k)
        {
            int ind = 0;

            //Console.WriteLine(k.ToString());
            for (int i = 0; i < mas.n; i++)
            {
                Klientas temp = mas.Imti(i);
                if (k < temp)
                {
                    //Console.WriteLine("Rasta");
                    break;
                }
                else if (k > temp)
                {
                    //Console.WriteLine(temp.PavardėVardas + "  vs  " + k.PavardėVardas);
                    //Console.WriteLine("!!");
                    ind++;
                }
            }

            return(ind);
        }
コード例 #7
0
 public void Dėti(Klientas ob, int ind)
 {
     klientai[ind] = ob;
 }
コード例 #8
0
 public void Dėti(Klientas ob)
 {
     klientai[n++] = ob;
 }