/// <summary>
    /// Nuskaito duomenis studentų
    /// </summary>
    /// <param name="stduoma"> nuoroda i pirmą duomenų failą</param>
    /// <param name="stduomb"> nuoroda i antra duomenų failą</param>
    /// <returns> studentų sąrašas</returns>
    private Sarasas <Studentas> skaitymas(string stduoma, string stduomb)
    {
        Sarasas <Studentas> sarasas = new Sarasas <Studentas>();
        double Reikalavimai;

        using (StreamReader reader1 = new StreamReader(stduomb))
        {
            string[] duomenys = reader1.ReadLine().Split(';');
            sarasas.PirmaEilute(double.Parse(duomenys[0]), double.Parse(duomenys[1]));
            Reikalavimai = double.Parse(duomenys[1]);
            string[] eilutes = File.ReadAllLines(stduoma);
            foreach (string eilute in eilutes)
            {
                string[] StudentoDuomenys = reader1.ReadLine().Split(';');
                string[] eiluteA          = eilute.Split(';');
                int[]    pazymiai         = new int[int.Parse(StudentoDuomenys[2])];
                int      j = 0;
                for (int i = 3; i < 3 + int.Parse(StudentoDuomenys[2]); i++)
                {
                    pazymiai[j++] = int.Parse(StudentoDuomenys[i]);
                }

                //Studentas studentas = new Studentas(eiluteA[0], eiluteA[1], StudentoDuomenys[1], int.Parse(StudentoDuomenys[2]), pazymiai, sarasas.Reikalavimai);

                sarasas.DetiDuomenisT(new Studentas(eiluteA[0], eiluteA[1], StudentoDuomenys[1], int.Parse(StudentoDuomenys[2]), pazymiai, sarasas.Reikalavimai));
            }
        }
        SkaiciuotiPirmunus(sarasas, Reikalavimai);
        return(sarasas);
    }
Exemple #2
0
 /// <summary>
 /// Suranda ar visu grupiu studentai pasirinko sio destytojo modulius
 /// </summary>
 /// <param name="Studentai">Studentu sarasas</param>
 /// <param name="Destytojai">Destytoju sarasas</param>
 /// <param name="destytojasMaxVardas">daugiausiai moduliu turincio destytojo vardas</param>
 /// <param name="destytojasMaxPavarde">daugiausiai moduliu turincio destytojo pavarde</param>
 /// <returns></returns>
 static bool ArVisuPasirinko(Sarasas <Studentas> Studentai, Sarasas <Destytojas> Destytojai, string destytojasMaxVardas, string destytojasMaxPavarde)
 {
     foreach (Destytojas dest in Destytojai)
     {
         if ((destytojasMaxVardas == dest.vardas) && (destytojasMaxPavarde == dest.pavarde))
         {
             string modulis = dest.modulis;
             foreach (Studentas stud in Studentai)
             {
                 if (modulis == stud.modulis)
                 {
                     int visi = 0; int ne = 0;
                     foreach (Studentas stud1 in Studentai)
                     {
                         if (stud1.grupe == stud.grupe)
                         {
                             visi += 1;
                             if (stud.modulis != modulis)
                             {
                                 ne += 1;
                             }
                         }
                     }
                     if (ne == visi)
                     {
                         return(false);
                     }
                 }
             }
         }
     }
     return(true);
 }
 /// <summary>
 /// Spausdina duomenis į lentelę
 /// </summary>
 /// <param name="A"> Perduodamas studentų sąrašas</param>
 /// <param name="lentele"> Į kurią lentelę vesti</param>
 static void Spausdinti(Sarasas <Studentas> A, Table lentele)
 {
     // Sąrašo peržiūra, panaudojant sąsajos metodus
     LentelesAntraste(lentele);
     for (A.Pradžia(); A.Yra(); A.Kitas())
     {
         IterptiIrasa(A.ImtiDuomenis(), lentele);
     }
 }
 /// <summary>
 /// Spausdina nurodytls grupes studentus
 /// </summary>
 /// <param name="A"> Studentų sąrašus</param>
 /// <param name="lentele"> į kurią lentelę vesti</param>
 /// <param name="grupe"> grupės pavadinimas</param>
 static void SpausdintiAtrinkta(Sarasas <Studentas> A, Table lentele, string grupe)
 {
     // Sąrašo peržiūra, panaudojant sąsajos metodus
     LentelesAntraste(lentele);
     for (A.Pradžia(); A.Yra(); A.Kitas())
     {
         if (A.ImtiDuomenis().Grupe == grupe && A.ImtiDuomenis().ArPirmunas)
         {
             IterptiIrasa(A.ImtiDuomenis(), lentele);
         }
     }
 }
Exemple #5
0
    /// <summary>
    /// pasalina paskutini elemanta
    /// </summary>
    /// <param name="StudentaiGR">surikiuotu studentu sarasas</param>
    static void PasalintiPaskutini(Sarasas <Studentas> StudentaiGR)
    {
        Mazgas <Studentas> k = StudentaiGR.Pradzia();

        for (Mazgas <Studentas> d = StudentaiGR.Pradzia(); d != null; d = d.Kitas)
        {
            k = d.Kitas;
            if (k.Kitas == null)
            {
                d.Kitas = null;
                StudentaiGR.DetiDuomenisT(d.Duom);
            }
        }
    }
Exemple #6
0
    /// <summary>
    /// Nuskaito destytoju duomenu faila
    /// </summary>
    /// <param name="fv">destytoju failas</param>
    /// <param name="Destytojai">Destytoju sarasas</param>
    static void SkaitytiDest(string fv, Sarasas <Destytojas> Destytojai)
    {
        string line;

        using (var reader = new StreamReader(fv))
        {
            while ((line = reader.ReadLine()) != null)
            {
                var v      = line.Split(' ');
                var destyt = new Destytojas(v[0], v[1], v[2], int.Parse(v[3]));
                Destytojai.DetiDuomenisT(destyt);
            }
        }
    }
Exemple #7
0
    /// <summary>
    /// Nuskaito studentu duomenu faila
    /// </summary>
    /// <param name="fv">studentu failas</param>
    /// <param name="Studentai">Studentu sarasas</param>
    static void SkaitytiStud(string fv, Sarasas <Studentas> Studentai)
    {
        string line;

        using (var reader = new StreamReader(fv))
        {
            while ((line = reader.ReadLine()) != null)
            {
                var v       = line.Split(' ');
                var student = new Studentas(v[0], v[1], v[2], v[3]);
                Studentai.DetiDuomenisT(student);
            }
        }
    }
Exemple #8
0
 /// <summary>
 /// spausdinami rezultatai po ivedamo modulio klaviatura
 /// </summary>
 /// <param name="NewStudentai">naujas studentu sarasas</param>
 /// <param name="modulisVIP">Ivestas modulis</param>
 /// <param name="fr">rezultatu failas</param>
 public void SpausdintiRez2(Sarasas <Studentas> NewStudentai, string modulisVIP, string fr)
 {
     using (var writer = File.AppendText(fr))
     {
         writer.WriteLine();
         writer.WriteLine("----------------------------------------------");
         writer.WriteLine("Ivestas modulio pavadinimas: {0}", modulisVIP);
         writer.WriteLine("Sio modulio studentu sarasas:");
         for (Mazgas <Studentas> d = NewStudentai.Pradzia(); d != null; d = d.Kitas)
         {
             writer.WriteLine(d.Duom.ToString());
         }
     }
 }
    /// <summary>
    /// atlieka veiksmus su pasirinktais
    /// </summary>
    /// <param name="pirmas"> nuoroda i pirma duomenu faila</param>
    /// <param name="antras"> nuoroda i antra duomenu faila</param>
    /// <returns></returns>
    Sarasas <Studentas> AtliktiVeiksmus(string pirmas, string antras)
    {
        Sarasas <Studentas> Sarasas = skaitymas(pirmas, antras);

        Sarasas.SalintiStudentus();
        Sarasas.Rikiuoti();
        Spausdinti(Sarasas, Table1);
        SpausdintiPradiniusDuomenis(Table4, Table3, Table5, pirmas, antras);
        string AtrinktiGrupe = TextBox1.Text;

        SpausdintiAtrinkta(Sarasas, Table2, AtrinktiGrupe);
        SpausdintiRezultatus(Sarasas);
        SpausdintiDuomenis(pirmas, antras);
        return(Sarasas);
    }
Exemple #10
0
    protected void Button2_Click(object sender, EventArgs e)
    {
        string CD1       = @"F:\\2tras\\objektinis\\L3\\U7a.txt"; //studentu duomenu failas
        string CR        = @"F:\\2tras\\objektinis\\L3\\REZ.txt"; //rezultatu duomenu failas
        var    Studentai = new Sarasas <Studentas>();

        SkaitytiStud(CD1, Studentai);
        Label4.Text = "Iveskite modulio pavadinima ir dar karta paspauskite antraji 'START' mygtuka";
        string modulisVIP   = TextBox1.Text;
        var    NewStudentai = new Sarasas <Studentas>();

        SudarytiStudentuSarasa(NewStudentai, modulisVIP, Studentai);
        if (modulisVIP != "")
        {
            SpausdintiRez2(NewStudentai, modulisVIP, CR);
        }
    }
    /// <summary>
    /// Skaičiuoja pirmūnus
    /// </summary>
    /// <param name="x"> studentų sąrašas</param>
    /// <param name="Reikalavimai"> Reikalavimai</param>
    public void SkaiciuotiPirmunus(Sarasas <Studentas> x, double Reikalavimai)
    {
        int Taskai = 0;

        foreach (Studentas a in x)
        {
            if (a.ArGausStipendija(Reikalavimai))
            {
                Taskai = Taskai + 10;
                if (a.ArPirmunas)
                {
                    Taskai++;
                }
            }
        }
        x.SkaiciuotiTaskoVerte(Taskai);
    }
    /// <summary>
    /// Spausdina rezultatus
    /// </summary>
    /// <param name="A"> Studentų sąrašas</param>
    void SpausdintiRezultatus(Sarasas <Studentas> A)
    {
        string path = Server.MapPath("App_Data/Rezultatai.txt");

        using (StreamWriter writer = new StreamWriter(path))
        {
            writer.WriteLine("----------------------------------------------------------------------------------------------------------");
            writer.WriteLine("{0,-35}{1,-16}{2,-15}{3,-20}{4,-30}", "Pavardė Vardas", "Telefono nr.", "Grupė", "Pažymių vidurkis", "Gaunama stipendija");
            writer.WriteLine("----------------------------------------------------------------------------------------------------------");
            for (A.Pradžia(); A.Yra(); A.Kitas())
            {
                string[] duomenys = A.ImtiDuomenis().ToString().Split(';');
                writer.WriteLine("{0,-35}{1,-16}{2,-15}{3,-20}{4,-30}", duomenys[0], duomenys[1], duomenys[2], duomenys[3], duomenys[4]);
            }
            writer.WriteLine("----------------------------------------------------------------------------------------------------------");
        }
    }
Exemple #13
0
    /// <summary>
    /// spausdinti rezultatus
    /// </summary>
    /// <param name="StudentaiGR">surikiuotu studentu sarasas</param>
    /// <param name="fr">rezultatu failas</param>
    public void SpausdintiGrupes(Sarasas <Studentas> StudentaiGR, string fr)
    {
        string line = "";

        using (var writer = File.AppendText(fr))
        {
            writer.WriteLine();
            writer.WriteLine("Grupes, kuriu studentai nepasirinko sio destytojo moduliu:");
            Label5.Text = "Grupes, kuriu studentai nepasirinko sio destytojo moduliu:";
            line       += "Modulis         Pavarde              Vardas          Grupe" + "\r\n" + "\r\n";
            for (Mazgas <Studentas> d = StudentaiGR.Pradzia(); d != null; d = d.Kitas)
            {
                writer.WriteLine(d.Duom.ToString());
                line += d.Duom.ToString() + "\r\n";
            }
        }
        TextBox3.Text = line;
    }
Exemple #14
0
 /// <summary>
 /// spausdina gautus rezultatus
 /// </summary>
 /// <param name="Studentai">studentu sarasas</param>
 /// <param name="Destytojai">destytoju sarasas</param>
 /// <param name="destytojasMaxVardas">daugiausiai moduliu turincio destytojo vardas</param>
 /// <param name="destytojasMaxPavarde">daugiausiai moduliu turincio destytojo pavarde</param>
 /// <param name="fr">rezultatu failas</param>
 public void SpausdintiRezultatus(Sarasas <Studentas> Studentai, Sarasas <Destytojas> Destytojai, string destytojasMaxVardas, string destytojasMaxPavarde, string fr)
 {
     using (var writer = File.AppendText(fr))
     {
         //--- pradiniu doumenu spausdinimas
         writer.WriteLine("--------------PRADINIAI-DUOMENYS------------------");
         Label6.Text = "PRADINIAI DUOMENYS";
         writer.WriteLine();
         string eilute1 = "Studentu failas" + "\r\n";
         writer.WriteLine("---------Studentu-duomenu-failas--------");
         for (Mazgas <Studentas> d = Studentai.Pradzia(); d != null; d = d.Kitas)
         {
             eilute1 += d.Duom.ToString() + "\r\n";
             writer.WriteLine(d.Duom.ToString());
         }
         TextBox5.Text = eilute1;
         writer.WriteLine();
         string eilute = "Destytoju failas" + "\r\n";
         writer.WriteLine("---------Destytoju-duomenu-failas--------");
         for (Mazgas <Destytojas> d = Destytojai.Pradzia(); d != null; d = d.Kitas)
         {
             eilute += d.Duom.ToString1() + "\r\n";
             writer.WriteLine(d.Duom.ToString1());
         }
         TextBox4.Text = eilute;
         writer.WriteLine("-------------------------------------------------");
         writer.WriteLine();
         //---------
         writer.WriteLine();
         writer.WriteLine("Daugiausiai pasirinktu moduliu turi destytojas - {0} {1}", destytojasMaxVardas, destytojasMaxPavarde);
         Label1.Text = "Daugiausiai pasirinktu moduliu turi destytojas - " + destytojasMaxVardas + " " + destytojasMaxPavarde;
         writer.WriteLine();
         if (ArVisuPasirinko(Studentai, Destytojai, destytojasMaxVardas, destytojasMaxPavarde))
         {
             writer.WriteLine("Nevisu grupiu studentai pasirinko sio destytojo modulius.");
             Label2.Text = "Visu grupiu studentai pasirinko sio destytojo modulius.";
         }
         if (!ArVisuPasirinko(Studentai, Destytojai, destytojasMaxVardas, destytojasMaxPavarde))
         {
             writer.WriteLine("Ne visu grupiu studentai pasirinko sio destytojo modulius.");
             Label2.Text = "Ne visu grupiu studentai pasirinko sio destytojo modulius.";
         }
     }
 }
Exemple #15
0
 public void SalintiGrupe(Sarasas <Studentas> StudentaiGR, string grupe)
 {
     for (Mazgas <Studentas> d = StudentaiGR.Pradzia(); d != null; d = d.Kitas)
     {
         if (d.Duom.grupe == grupe)
         {
             if (d.Kitas != null)
             {
                 Mazgas <Studentas> laik = d.Kitas;
                 d.Duom  = laik.Duom;
                 d.Kitas = laik.Kitas;
             }
             else
             {
                 PasalintiPaskutini(StudentaiGR);
             }
         }
     }
 }
Exemple #16
0
    /// <summary>
    /// suranda grupes, kuriu bent vienas studentas nepasirinko sio destytojo modulio
    /// </summary>
    /// <param name="Studentai">Studentu sarasas</param>
    /// <param name="Destytojai">Destytoju sarasas</param>
    /// <param name="destytojasMaxVardas">daugiausiai moduliu turincio destytojo vardas</param>
    /// <param name="destytojasMaxPavarde">daugiausiai moduliu turincio destytojo pavarde</param>
    /// <param name="fr">rezultatu failas</param>
    public void GrupesKurNepasirinko(Sarasas <Studentas> Studentai, Sarasas <Destytojas> Destytojai, string destytojasMaxVardas, string destytojasMaxPavarde, string fr)
    {
        var StudentaiGR = new Sarasas <Studentas>();

        StudentaiGR = Studentai;
        //rusiuoja pagal grupes, pavardes ir vardus

        //jei grupej yra nors vienas nepasirinkes modulio, atspauszinti
        //jei visa grupe pasirinkusi ta moduli, pasalinti grupe
        foreach (Destytojas dest in Destytojai)
        {
            if (destytojasMaxVardas == dest.vardas && destytojasMaxPavarde == dest.pavarde)
            {
                string modulis = dest.modulis;
                foreach (Studentas stud in Studentai)
                {
                    if (modulis == stud.modulis)
                    {
                        int visi = 0; int ne = 0; string grupe = "";
                        foreach (Studentas stud1 in Studentai)
                        {
                            if (stud.grupe == stud1.grupe)
                            {
                                visi += 1;
                                if (stud1.modulis == modulis)
                                {
                                    ne   += 1;
                                    grupe = stud1.grupe;
                                }
                            }
                        }
                        if (ne == visi)
                        {
                            SalintiGrupe(StudentaiGR, grupe);
                        }
                    }
                }
            }
        }
        StudentaiGR.Rikiuoti();
        SpausdintiGrupes(StudentaiGR, fr);
    }
Exemple #17
0
    protected void Button1_Click(object sender, EventArgs e)
    {
        var    Studentai  = new Sarasas <Studentas>();
        var    Destytojai = new Sarasas <Destytojas>();
        string CD1        = @"F:\\2tras\\objektinis\\L3\\U7a.txt"; //studentu duomenu failas
        string CD2        = @"F:\\2tras\\objektinis\\L3\\U7b.txt"; //destytoju duomenu failas
        string CR         = @"F:\\2tras\\objektinis\\L3\\REZ.txt"; //rezultatu duomenu failas

        if (File.Exists(CR))
        {
            File.Delete(CR);
        }
        SkaitytiStud(CD1, Studentai);
        SkaitytiDest(CD2, Destytojai);
        string destytojasMaxVardas; string destytojasMaxPavarde;//destytojas turintis daugiausiai moduliu

        DestytojasMaxMod(Studentai, Destytojai, out destytojasMaxVardas, out destytojasMaxPavarde);
        SpausdintiRezultatus(Studentai, Destytojai, destytojasMaxVardas, destytojasMaxPavarde, CR);
        GrupesKurNepasirinko(Studentai, Destytojai, destytojasMaxVardas, destytojasMaxPavarde, CR);
    }
Exemple #18
0
    /// <summary>
    /// sudaromas studentu sarasas pagal ivesta klaviatura moduli
    /// </summary>
    /// <param name="NewStudentai">naujas studentu sarasas</param>
    /// <param name="modulisVIP">Ivestas modulis</param>
    /// <param name="Studentai">studentu sarasas</param>
    public void SudarytiStudentuSarasa(Sarasas <Studentas> NewStudentai, string modulisVIP, Sarasas <Studentas> Studentai)
    {
        string eil = "";

        if (modulisVIP != "")
        {
            for (Mazgas <Studentas> d = Studentai.Pradzia(); d != null; d = d.Kitas)
            {
                if (d.Duom.modulis == modulisVIP)
                {
                    NewStudentai.DetiDuomenisT(d.Duom);
                    eil += d.Duom + "\r\n";
                }
            }
        }
        else
        {
            eil = "Neteisingas modulio pavadinimas";
        }
        TextBox2.Text = eil;
    }
        public static void TestasMasyvasSarasas(int numeris)
        {
            int     dydis   = 12;
            Masyvas masyvas = new Masyvas(dydis, numeris);

            Console.WriteLine("\n Masyvas \n");
            masyvas.Spausdinti(dydis);
            Console.WriteLine("\n Masyvas (Rikiuotas) \n");
            InsertionSort(masyvas);
            masyvas.Spausdinti(dydis);
            Sarasas sarasas = new Sarasas(dydis, numeris);

            Console.WriteLine("\n Sarasas nuo priekio \n");
            sarasas.Spausdinti(dydis);
            Console.WriteLine("\n Sarasas nuo galo \n");
            sarasas.SpausdintiNuoGalo(dydis);
            Console.WriteLine("\n Sarasas nuo priekio (Rikiuotas) \n");
            InsertionSort(sarasas);
            sarasas.Spausdinti(dydis);
            Console.WriteLine("\n Sarasas nuo galo (Rikiuotas)\n");
            sarasas.SpausdintiNuoGalo(dydis);
        }
Exemple #20
0
    /// <summary>
    /// suranda destytoja, turinti daugiausiai moduliu
    /// </summary>
    /// <param name="Studentai">Studentu sarasas</param>
    /// <param name="Destytojai">Destytoju sarasas</param>
    /// <param name="destytojasMaxVardas">daugiausiai moduliu turincio destytojo vardas</param>
    /// <param name="destytojasMaxPavarde">daugiausiai moduliu turincio destytojo pavarde</param>
    static void DestytojasMaxMod(Sarasas <Studentas> Studentai, Sarasas <Destytojas> Destytojai, out string destytojasMaxVardas, out string destytojasMaxPavarde)
    {
        int max = 0;

        destytojasMaxVardas  = null;
        destytojasMaxPavarde = null;
        foreach (Destytojas dest in Destytojai)
        {
            int laik = 0;
            foreach (Studentas stud in Studentai)
            {
                if (dest.modulis == stud.modulis)
                {
                    laik += 1;
                }
            }
            if (max < laik)
            {
                destytojasMaxVardas  = dest.vardas;
                destytojasMaxPavarde = dest.pavarde;
                max = laik;
            }
        }
    }