static void Formuoti(DaugMiestų senas, DaugMiestų naujas, string valst)
 {
     for (int i = 0; i < senas.Imti(); i++)
     {
         if (senas.Imti(i).Valstybė == valst.Trim())
         {
             naujas.Dėti(senas.Imti(i));
         }
     }
 }
        static void Main(string[] args)
        {
            Console.InputEncoding  = Encoding.GetEncoding(1257);
            Console.OutputEncoding = Encoding.Unicode;
            DaugMiestų M = new DaugMiestų();

            Skaityti(duom, M);
            Spausdinti(M, "Pradinis miestų sąrašas:");

            DaugMiestų V = new DaugMiestų();

            Console.Write("Įveskite valstybę, kurios miestus norite sudėti į naują sąrašą: ");
            string šalis = Console.ReadLine();

            Console.WriteLine();
            Formuoti(M, V, šalis);
            if (V.Imti() > 0)
            {
                Spausdinti(V, "Suformuotas tam tikros valstybės (" + šalis + ") miestų sąrašas:");
                int ind = V.RastiDidžiausioPlotoMiestoIndeksą();
                Console.WriteLine("Nurodytos valstybės ({0}) didžiausio ploto miestas: {1}; jo plotas: {2} km^2.\n", šalis, V.Imti(ind).Pavadinimas, V.Imti(ind).Plotas);
                V.Šalinti(ind);
                if (V.Imti() > 0)
                {
                    V.BurburliukasSort();
                    Spausdinti(V, "Surikiuotas nurodytos valstybės (" + šalis + ") sąrašas, iš kurio pašalintas didžiausio ploto miestas:");
                }
                else
                {
                    Console.WriteLine("Surikiuotas nurodytos valstybės (" + šalis + ") sąrašas, iš kurio pašalintas didžiausio ploto miestas:");
                    Console.WriteLine("Naujas sąrašas tuščias!\n");
                }
            }
            else
            {
                Console.WriteLine("Suformuotas tam tikros valstybės (" + šalis + ") miestų sąrašas:");
                Console.WriteLine("Naujas sąrašas tuščias!\n");
            }

            //M.BurburliukasSort();
            //Spausdinti(M, "Surikiuotas:");

            Console.WriteLine("Programa baigė darbą!\n");
        }
        static void Spausdinti(DaugMiestų miestai, string antraštė)
        {
            const string virsus = "----------------------------------------------------------------------------------------------\r\n" +
                                  " Nr. Miestas               Valstybė            Gyventojų skaičius (tūkst.)      Plotas (km^2) \r\n" +
                                  "----------------------------------------------------------------------------------------------";

            Console.WriteLine(antraštė);
            if (miestai.Imti() > 0)
            {
                Console.WriteLine(virsus);
                for (int i = 0; i < miestai.Imti(); i++)
                {
                    Console.WriteLine("{0, 3:d} {1}", i + 1, miestai.Imti(i).ToString());
                }
                Console.WriteLine("----------------------------------------------------------------------------------------------\r\n");
            }
            else
            {
                Console.WriteLine("Sąrašas tuščias!\n");
            }
        }
        static void Skaityti(string duom, DaugMiestų M)
        {
            using (StreamReader reader = new StreamReader(duom))
            {
                string   line;
                string[] parts;
                string   pav;
                string   valst;
                double   gyv;
                double   plot;

                while ((line = reader.ReadLine()) != null)
                {
                    parts = line.Split(';');
                    pav   = parts[0].Trim();
                    valst = parts[1].Trim();
                    gyv   = double.Parse(parts[2].Trim());
                    plot  = double.Parse(parts[3].Trim());
                    Miestas naujas = new Miestas(pav, valst, gyv, plot);
                    M.Dėti(naujas);
                }
            }
        }