private bool skontrolujVstup(string uzivVstup, Otazka otazka, out int[] poleIndexov) { poleIndexov = null; int index; if (otazka is SingleOtazka) { bool res = jeCisloAJevindexe(uzivVstup, otazka, out index); poleIndexov = new int[] { index }; return(res); } else { string[] poleOdpovediUziv = uzivVstup.Split(' '); poleIndexov = new int[poleOdpovediUziv.Length]; for (int i = 0; i < poleOdpovediUziv.Length; i++) { if (!jeCisloAJevindexe(poleOdpovediUziv[i], otazka, out index)) { return(false); } poleIndexov[i] = index; } return(true); } }
private bool jeCisloAJevindexe(string uzivatelskeCislo, Otazka otazka, out int index) { int indexOdpovedi; bool jeCislo = int.TryParse(uzivatelskeCislo, out index); if (!jeCislo) { return(false); } else { return(indexOdpovedi > 0 && indexOdpovedi < otazka.Moznosti.Length); } }
private void ZaradDoHistorie(Otazka o, string odpoved) { historia.Enqueue("OTAZKA: " + o.ZnenieOtazky); historia.Enqueue("VASA ODPOVED:"); for (int j = 0; j < odpoved.Length; j++) { Odpoved odp = (Odpoved)Enum.Parse(typeof(Odpoved), odpoved[j].ToString().ToUpper()); historia.Enqueue("\t" + o.Moznosti[(int)odp]); } historia.Enqueue("SPRAVNA ODPOVED:"); foreach (Odpoved odp in o.SpravnaOdpoved) { historia.Enqueue("\t" + o.Moznosti[(int)odp]); } }
private void Oboduj(Otazka otazka, string odpoved) { string odpovedUpperCase = odpoved.ToUpper(); if (otazka.TypOtazky == TypOtazky.SingleChoice && odpovedUpperCase.Length > 1) { body--; } else { for (int i = 0; i < odpovedUpperCase.Length; i++) { if (Array.Exists(otazka.SpravnaOdpoved, element => element.ToString() == odpovedUpperCase[i].ToString())) { body++; } else { body--; } } } }