/// <summary> /// Spausdinimo metodas /// </summary> /// <param name="fv"> Duomenų failas </param> /// <param name="AutoList"> Duomenų list </param> /// <param name="info"> Papildoma informacija apie duomenis </param> static void Spausdinti(string fv, List <Automobiliai> AutoList, string info) { if (AutoList.Count > 0) { const string virsus = "----------------------------------------------------------------------------------------------------\r\n" + " Numeris Gamintojas Modelis Spalva Pag. metai Techn.apziura Kuras Sanaudos \r\n" + "----------------------------------------------------------------------------------------------------"; using (var fr = File.AppendText(fv)) { fr.WriteLine(info); fr.WriteLine(virsus); for (int i = 0; i < AutoList.Count; i++) { Automobiliai pr = AutoList[i]; fr.WriteLine("{0}", pr); } fr.WriteLine("----------------------------------------------------------------------------------------------------\r\n"); } } else { using (var fr = File.AppendText(fv)) { fr.WriteLine("Tuscias sarasas\n"); } } }
//--------------------------------------------------------------------------------------------------------- /// <summary> /// Sudaro naują sarašą pagal nurodytą pagaminimo metų intervalą /// </summary> /// <param name="AutoList"> Automobilių duomenys </param> /// <param name="Naujas"> Naujas list'as duomenims saugoti </param> /// <param name="a"> [a;b] a intervalo reikšmė </param> /// <param name="b"> [a;b] b intervalo reikšmė </param> /// <returns></returns> static List <Automobiliai> Intervalas(List <Automobiliai> AutoList, List <Automobiliai> Naujas, int a, int b) { for (int i = 0; i < AutoList.Count; i++) { Automobiliai Auto = AutoList[i]; if (a <= Auto.pagaminmetai.Year && b >= Auto.pagaminmetai.Year) { Naujas.Add(Auto); } } return(Naujas); }
/// <summary> /// Suskaičiuoja nurodytos spalvos automobilių kiekį /// </summary> /// <param name="AutoList"> Automobilių duomenys </param> /// <param name="nurodytaspalva"> Nurodyta spalva </param> /// <returns></returns> //--------------------------------------------------------------------------------------------------------- static int AutomobiliuKiekis(List <Automobiliai> AutoList, string nurodytaspalva) { int kiek = 0; for (int i = 0; i < AutoList.Count; i++) { Automobiliai Auto = AutoList[i]; if (Auto.spalva == nurodytaspalva) { kiek++; } } return(kiek); }
/// <summary> /// Atrenka du seniausius nurodytos spalvos automobilius /// </summary> /// <param name="AutoList"> Automobilių duomenys </param> /// <param name="max1"> Pirmas seniausias automobilis </param> /// <param name="max2"> Antras seniausias automobilis </param> /// <param name="nurodytaspalva"> Nurodyta spalva </param> /// <returns></returns> static bool DuSeniausi(List <Automobiliai> AutoList, out Automobiliai max1, out Automobiliai max2, string nurodytaspalva, List <Automobiliai> Seniausi) { List <Automobiliai> Atrinkti = Spalvos(AutoList, nurodytaspalva); //DateTime DT1 = new DateTime(0000 - 00 - 00); //DateTime DT2 = new DateTime(0000 - 00); //max1 = new Automobiliai("", "", "", "", DT2, DT1, "", 0.0); //max2 = new Automobiliai("", "", "", "", DT2, DT1, "", 0.0); max1 = new Automobiliai(); max2 = new Automobiliai(); if (Atrinkti.Count < 2) { return(false); } //--- Pradinių reikšmių suteikimas -------------------- if (Atrinkti[0].pagaminmetai.Date < Atrinkti[1].pagaminmetai.Date) { max1 = Atrinkti[0]; max2 = Atrinkti[1]; } else { max1 = Atrinkti[1]; max2 = Atrinkti[0]; } //--- Paieška -------------------------------------------- for (int i = 2; i < Atrinkti.Count; i++) { if (Atrinkti[i].pagaminmetai.Date < max1.pagaminmetai.Date) { max2 = max1; max1 = Atrinkti[i]; } else if (Atrinkti[i].pagaminmetai.Date < max2.pagaminmetai.Date) { max2 = Atrinkti[i]; } } Seniausi.Add(max1); Seniausi.Add(max2); return(true); }
/// <summary> /// Atrenka automobilius tik nurodytos spalvos /// </summary> /// <param name="AutoList"> Automobilių duomenys </param> /// <param name="nurodytaszodis"> Nurodyta spalva </param> /// <returns></returns> static List <Automobiliai> Spalvos(List <Automobiliai> AutoList, string nurodytaszodis) { List <Automobiliai> spalva = new List <Automobiliai>(); for (int i = 0; i < AutoList.Count; i++) { Automobiliai Auto = AutoList[i]; if (Auto.Palyginimas()) { if (Auto.spalva == nurodytaszodis) { spalva.Add(Auto); } } } return(spalva); }
/// <summary> /// Rikiavimo metodas /// </summary> /// <param name="AutoList"> Automobilių sąrašas </param> /// <returns></returns> private List <Automobiliai> Rikiavimas(List <Automobiliai> AutoList) { int i = 0; bool bk = true; while (bk) { bk = false; for (int j = AutoList.Count - 1; j > i; j--) { if (AutoList[j] > AutoList[j - 1]) { bk = true; Automobiliai auto = AutoList[j]; AutoList[j] = AutoList[j - 1]; AutoList[j - 1] = auto; } } i++; } return(AutoList); }
// METODAI //--------------------------------------------------------------------------------------- /// <summary> /// Nuskaitymo metodas /// </summary> /// <param name="fv"> Duomenų failas </param> /// <param name="AutoList"> Duomenų list </param> /// <returns></returns> static List <Automobiliai> Skaityti(string fv, List <Automobiliai> AutoList) { using (StreamReader reader = new StreamReader(fv, Encoding.GetEncoding(1257))) { string line; while ((line = reader.ReadLine()) != null) { string[] parts = line.Split(';'); string numeris = parts[0]; string gamintojas = parts[1]; string modelis = parts[2]; string spalva = parts[3]; DateTime pagaminmetai = DateTime.Parse(parts[4]); DateTime technikine = DateTime.Parse(parts[5]); string kuras = parts[6]; double kurosanaudos = double.Parse(parts[7]); Automobiliai auto = new Automobiliai(numeris, gamintojas, modelis, spalva, pagaminmetai, technikine, kuras, kurosanaudos); AutoList.Add(auto); } } return(AutoList); }