Пример #1
0
        /// <summary>
        /// Aktyviausio autoriaus klausimų kiekio metodas
        /// </summary>
        /// <param name="atstovybes">Atstovybės</param>
        /// <param name="autoriaiAts">Autoriai atskirai</param>
        /// <returns>metodas grąžina iš kiekvienos atstovybės aktyviausio autoriaus klausimų kiekį</returns>
        public int DaugiausiaiKlausimuAtstovybese(Atstovybe atstovybes, DaugiausiaKlausimuAtskirai autoriaiAts)
        {
            int    klausimuskaicius = 0;
            int    laikinasklausimuskaicius;
            string laikinasvardas = atstovybes.VisiKlausimai.GautiKlausima(0).Autorius;

            for (int i = 0; i < atstovybes.VisiKlausimai.Kiekis; i++)
            {
                laikinasvardas           = atstovybes.VisiKlausimai.GautiKlausima(i).Autorius;
                laikinasklausimuskaicius = 1;

                for (int j = i + 1; j < atstovybes.VisiKlausimai.Kiekis; j++)
                {
                    if (atstovybes.VisiKlausimai.GautiKlausima(j).Autorius == laikinasvardas)
                    {
                        laikinasklausimuskaicius++;
                    }
                }

                if (laikinasklausimuskaicius > klausimuskaicius)
                {
                    klausimuskaicius = laikinasklausimuskaicius;

                    autoriaiAts.IstrintiAutorius();
                    autoriaiAts.PridetiAutoriu(laikinasvardas);
                }

                if (laikinasklausimuskaicius == klausimuskaicius && !autoriaiAts.Autoriai.Contains(laikinasvardas))
                {
                    autoriaiAts.PridetiAutoriu(laikinasvardas);
                }
            }

            return(klausimuskaicius);
        }
Пример #2
0
        const int maxAtstovybiuKiekis = 10; //didžiausias atstovybių kiekis

        static void Main(string[] args)
        {
            int atstovybiuKiekis = 0;                                    //Kintamasis, kuris nurodo, kiek yra atstovybių
            int skaicius         = 0;                                    //Istorinių klausimų kiekis

            Console.OutputEncoding = Encoding.UTF8;                      //Konsolėje rašomos lietuviškos raidės
            Program p = new Program();                                   //Program klasės objektas, kad galima būtų prieiti prie metodų

            Atstovybe[] atstovybes = new Atstovybe[maxAtstovybiuKiekis]; //objekto masyve saugomi atstovybių pavadinimai

            p.Skaitymas(ref atstovybes, ref atstovybiuKiekis);           //Skaitymo metodas

            if (atstovybes[0].AtstovybesPav == null)
            {
                Console.WriteLine("Duomenų failuose nėra");
                //Jeigu duomenų faile nėra, rezultatų failus palieka tuščius
                string[] istoriniai = new string[1000];
                p.IstoriniuKlausimuSpausdinimasFaile(istoriniai, skaicius);
                KlausimuKonteineris visiParasytiKlausimai = new KlausimuKonteineris();
                p.VisuKlausimuSpausdinimasFaile(visiParasytiKlausimai);
                p.DuomenuPateikimasLenteleje(atstovybes, atstovybiuKiekis);
            }
            else
            {
                DaugiausiaKlausimuBendrai autoriaiBendr = new DaugiausiaKlausimuBendrai();        //Iš visų atstovybių populiariausių autorių objektas
                p.DaugiausiaKlausimuIsVisoIsvedimas(atstovybes, autoriaiBendr, atstovybiuKiekis); //populiariausio autoriaus apskritai išvedimo metodas

                Console.WriteLine(new String('-', 100));                                          //Atskiria rezultatus
                Console.WriteLine("");

                DaugiausiaKlausimuAtskirai autoriaiAts = new DaugiausiaKlausimuAtskirai();            //Skirtingų atstovybių populiariausių autorių objektas
                p.DaugiausiaiKlausimuAtstovybeseIsvedimas(atstovybes, autoriaiAts, atstovybiuKiekis); //populiariausio autoriaus kiekvienoje atstovybėje paieškos metodas

                Console.WriteLine(new String('-', 100));                                              //Atskiria rezultatus
                Console.WriteLine("");

                DaugiausiaKlausimuAtskirai muzAutoriaiAts = new DaugiausiaKlausimuAtskirai();                     //Skirtingų atstovybių daugiausiai muzikinių klausimų uždavusių autorių objektas
                p.DaugiausiaiMuzikiniuKlausimuAtstovybeseIsvedimas(atstovybes, muzAutoriaiAts, atstovybiuKiekis); //Autorių, daugiausiai uždavusių muzikinių klausimų, išvedimas

                Console.WriteLine(new String('-', 100));                                                          //Atskiria rezultatus
                Console.WriteLine("");

                KlausimuKonteineris visiParasytiKlausimai = new KlausimuKonteineris();          //Visų klausimų objektas
                visiParasytiKlausimai = p.VisiParasytiKlausimai(atstovybes, atstovybiuKiekis);  //Suranda visus užduotus klausimus
                visiParasytiKlausimai.RikiuotiKlausimus();                                      //Surikiuoja visų klausimų sąrašą
                p.VisuKlausimuSpausdinimasFaile(visiParasytiKlausimai);                         //Atspausdina faile visus klausimus

                string[] istoriniai = new string[1000];                                         //Istorinių klausimų objektas
                istoriniai = p.IstoriniaiKlausimai(atstovybes, atstovybiuKiekis, ref skaicius); //Suranda visus istorinius klausimus
                if (skaicius == 0)
                {
                    Console.WriteLine("Istorinių klausimų nėra");
                    Console.WriteLine("");
                }
                p.IstoriniuKlausimuSpausdinimasFaile(istoriniai, skaicius); //Atspausdina faile visus istorinius klausimus

                p.DuomenuPateikimasLenteleje(atstovybes, atstovybiuKiekis); //Duomenys pateikiami lentele
            }
        }
Пример #3
0
        /// <summary>
        /// Autoriaus iš kiekvienos atstovybės, parašiusio daugiausia klausimų, vardo ir klausimų kiekio išvedimas
        /// </summary>
        /// <param name="atstovybes">Atsovybės</param>
        /// <param name="autoriaiAts">Autoriai atskirai</param>
        /// <param name="atstovybiuKiekis">Atstovybių kiekis</param>
        public void DaugiausiaiKlausimuAtstovybeseIsvedimas(Atstovybe[] atstovybes, DaugiausiaKlausimuAtskirai autoriaiAts, int atstovybiuKiekis)
        {
            for (int i = 0; i < atstovybiuKiekis; i++)
            {
                Console.WriteLine("Didziausias užduotų klausimų kiekis iš vieno žmogaus {0} atstovybėje yra {1}", atstovybes[i].AtstovybesPav,
                                  DaugiausiaiKlausimuAtstovybese(atstovybes[i], autoriaiAts));

                Console.WriteLine("Klausimus uždavė: ");
                Console.WriteLine(new string('-', 26));

                for (int j = 0; j < autoriaiAts.AutoriuKiekis; j++)
                {
                    Console.WriteLine("| {0, -22} |", autoriaiAts.GautiAutoriu(j));
                }

                Console.WriteLine(new string('-', 26));
                Console.WriteLine();
            }
        }