/// <summary> /// Geriausių žaidėjų atranka pagal pozicija /// </summary> /// <param name="K"> Krepšininkų duomenys </param> /// <param name="Poz"> Krepšininkų pagal pozicijas duomenys </param> /// <param name="pozz"> Pozicija skirta atrinkimui </param> static void Atrinkti(Komanda K, Komanda Poz, string pozz) { int k = -1; // Indeksas geriausio žaidėjo double max = 0; // Daugiausiai surinktų taskų per varžybas for (int i = 0; i < K.Imti(); i++) { if (pozz == K.Imti(i).ImtiPozicija()) { if (K.Imti(i).ImtiVid() > max) { max = K.Imti(i).ImtiVid(); k = i; } } } // Įdedamas žaidėjas į pozicijos kontruktorių if (k >= 0) { Poz.Deti(K.Imti(k)); } // Tikrinama ar yra žaidėjų turinčių tokį patį vidurkį for (int i = 0; i < K.Imti(); i++) { if (i != k && pozz == K.Imti(i).ImtiPozicija()) { if (K.Imti(i).ImtiVid() == max) { Poz.Deti(K.Imti(i)); } } } }
/// <summary> /// Šalinami žaidėjai kurie dalyvavo tik vienose rungtynėse /// </summary> /// <param name="Poz">Krepšininkų pagal pozicijas duomenys</param> static void Salinti(Komanda Poz) { int k = Poz.Imti(); for (int i = 0; i < k; i++) { if (Poz.Imti(i).ImtiSk() <= 1) { Poz.Salinti(i); k--; i--; } } }
/// <summary> /// Kelių skirtingų komandų žaidėjai užima pirmasias vietas /// </summary> /// <param name="Poz"> Krepšininkų pagal pozicijas duomenys </param> /// <param name="k"> Komandų skaičius </param> /// <param name="komandos"> Naujas komandų masyvas </param> static void Nustatyti(Komanda Poz, ref int k, ref string[] komandos) { for (int i = 0; i < Poz.Imti(); i++) { if (i <= 3) { int a = TikrintiArYra(Poz.Imti(i).ImtiKom(), k, komandos); if (a > 0) { komandos[k] = Poz.Imti(i).ImtiKom(); k++; } } } }
/// <summary> /// Komandų pagal pozicijas išvedimas į failą /// </summary> /// <param name="fv"> Duomenų falias </param> /// <param name="Poz"> Krepšininkų pagal pozicijas duomenys </param> /// <param name="antraste"> Antraštė skirta pasakyti kokios pozicijos žaidėjas </param> static void Isvesti(string fv, Komanda Poz, string antraste) { string virsus = "-------------------------------------------------------------------------------\r\n" + "| Vardas | Pavarde | Ugis | Komanda | Vid.Pelnyti taskai|\r\n" + "-------------------------------------------------------------------------------"; using (StreamWriter fr = new StreamWriter(fv, true, Encoding.GetEncoding(1257))) { fr.WriteLine(antraste); fr.WriteLine(virsus); for (int i = 0; i < Poz.Imti(); i++) { fr.WriteLine(Poz.Imti(i).ToString()); } fr.WriteLine("-------------------------------------------------------------------------------"); } }