/// <summary> /// aktyviausio autoriaus klausimų kiekio metodas /// </summary> /// <param name="klausimas"></param> /// <param name="DaugiausiaiKlausimuAtstovybese"></param> /// <returns>metodas grąžina iš kiekvienos atstovybės aktyviausio autoriaus klausimų kiekį</returns> public int DaugiausiaiKlausimuAtstovybese(Atstovybes AtstovybiuPav, DaugiausiaKlausimuAtskirai autoriaiAts) { int klausimuskaicius = 0; int laikinasklausimuskaicius; string laikinasvardas = AtstovybiuPav.Klausimai.GautiKlausima(0).Autorius; for (int i = 0; i < AtstovybiuPav.Klausimai.kiekKlausimu; i++) { laikinasvardas = AtstovybiuPav.Klausimai.GautiKlausima(i).Autorius; laikinasklausimuskaicius = 1; for (int j = i + 1; j < AtstovybiuPav.Klausimai.kiekKlausimu; j++) { if (AtstovybiuPav.Klausimai.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); }
const int maxAtstovybiuKiekis = 10; //didžiausias atstovybių kiekis static void Main(string[] args) { Program p = new Program(); Atstovybes[] AtstovybiuPav = new Atstovybes[maxAtstovybiuKiekis]; //objekto masyve saugomi atstovybių pavadinimai int atstovybiuKiekis = 0; DaugiausiaKlausimuBendrai autoriaiBendr = new DaugiausiaKlausimuBendrai(maxKlausimuKiekis); //Iš visų atstovybių popuiariausių autorių objektas DaugiausiaKlausimuAtskirai autoriaiAts = new DaugiausiaKlausimuAtskirai(maxKlausimuKiekis); //Skirtingų atstovybių populiariausių autorių objektas TemuKonteineris temos = new TemuKonteineris(maxKlausimuKiekis); //Nesikartojančių temų objektas p.Skaitymas(ref AtstovybiuPav, maxKlausimuKiekis, ref atstovybiuKiekis); //Skaitymo metodas p.TemuKiekis(AtstovybiuPav, temos, atstovybiuKiekis); //metode kaupiamas nesikartojančių temų pavadinimas ir kiekis p.DaugiausiaKlausimuIsVisoIsvedimas(AtstovybiuPav, autoriaiBendr, atstovybiuKiekis); //populiariausio autoriaus apskritai išvedimo metodas p.DaugiausiaiKlausimuAtstovybeseIsvedimas(AtstovybiuPav, autoriaiAts, atstovybiuKiekis); //populiariausio autoriaus kiekvienoje atstovybėje paieškos metodas p.SkirtinguTemuIsvedimas(temos); //nesikartojančių temų ir jų kiekių išvedimas p.VienoduKlausimuIsvedimas(AtstovybiuPav, atstovybiuKiekis); //pasikartojančių klausimų keliose atstovybėse išvedimas p.DuomenuPateikimasLenteleje(AtstovybiuPav, atstovybiuKiekis); //duomenų lentelės .txt kūrimo metodas }
/// <summary> /// autoriaus iš kiekvienos atstovybės, parašiusio daugiausia klausimų, vardo ir klausimų kiekio išvedimas /// </summary> /// <param name="AtstovybiuPav"></param> /// <param name="autoriaiAts"></param> /// <param name="atstovybiuKiekis"></param> public void DaugiausiaiKlausimuAtstovybeseIsvedimas(Atstovybes[] AtstovybiuPav, 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}", AtstovybiuPav[i].atstovybesPav, DaugiausiaiKlausimuAtstovybese(AtstovybiuPav[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(); } }