예제 #1
0
        private List <Otvet> Parsing(StringCollection parameters)
        {
            List <Otvet> otvets = new List <Otvet>();

            for (var i = 0; i < parameters.Count; i++)
            {
                Vopros = parameters[0];
                if (i > 0)
                {
                    Otvet otvet = new Otvet();
                    otvet.nomer = i;
                    string[] arr = parameters[i].Split('=');
                    otvet.text  = arr[0];
                    otvet.ochki = Convert.ToInt32(arr[1]);
                    otvet.pass  = false;
                    otvets.Add(otvet);
                }
            }
            return(otvets);
        }
예제 #2
0
        internal string[] OtvetVerny(int v1)
        {
            string[] display = new string[3];
            Otvet    otvet   = otvety[v1 - 1];

            if (!otvet.pass)
            {
                Bank      += otvet.ochki;
                otvet.pass = true;
                display[0] = otvet.nomer.ToString();
                display[1] = otvet.text;
                display[2] = otvet.ochki.ToString();
                return(display);
            }
            else
            {
                Bank      -= otvet.ochki;
                otvet.pass = false;
                display[0] = "";
                display[1] = otvet.nomer.ToString();
                display[2] = "";
                return(display);
            }
        }
예제 #3
0
        static Otvet DoubleDescription(float[][] matrix)
        {
            Otvet otvet;
            int   TableLen;

            Console.WriteLine();
            //Begin
            PrintHeader(matrix);
            //Step 1
            List <LineOfTabl> Table = new List <LineOfTabl>();

            Standart(matrix, Table);
            //Step next
            for (int k = 1; (k < matrix[0].Length) && !(CheckD(Table)); k++)
            {
                TableLen = Table.Count;
                Console.WriteLine("***********************Step next**************************");
                PrintHeader(matrix);
                for (int i = 0; i < TableLen; i++)
                {
                    if (Table[i].GetD() < 0)
                    {
                        for (int j = 0; j < TableLen; j++)
                        {
                            if (Table[j].GetD() >= 0 && CheckCross(Table, j, i))
                            {
                                Table.Add(new LineOfTablCross(matrix, Table, j, i));
                            }
                        }
                    }
                }
                for (int i = TableLen; i < Table.Count; i++)
                {
                    Table[i].DoAllRight(matrix, k);
                }
                for (int i = 0; i < TableLen; i++)
                {
                    LineOfTablCross SPos = Table[i] as LineOfTablCross;
                    if (SPos != null)
                    {
                        SPos.SetPos();
                    }

                    if (Table[i].GetD() < 0)
                    {
                        Table[i].DoAllRight(matrix, k);
                        Table[i].Print(i + 1, k);
                        Console.WriteLine();
                    }
                    else
                    {
                        if (Table[i] is LineOfTablCross)
                        {
                            Table[i].CalculateZ(matrix, k);
                        }
                        Table[i].CalculateD(matrix, k);
                        Table[i].Print(i + 1, k);
                        Console.WriteLine();
                    }
                }
                for (int i = TableLen; i < Table.Count; i++)
                {
                    Table[i].Print(i + 1, k);
                    Console.WriteLine();
                }
            }
            int max = 0;

            for (int i = 1; i < Table.Count; i++)
            {
                if (Table[max].GetZ() < Table[i].GetZ())
                {
                    max = i;
                }
            }
            return(otvet = new Otvet(Table[max].GetZ(), Table[max].GetDot()));
        }