示例#1
0
        private void Result()
        {
            if (isEnded)
            {
                Close();
                return;
            }

            isEnded = true;

            SQLData.Q1               = KettelTest.GetAnswer(KettelTest.Type.Q1);
            SQLData.B                = KettelTest.GetAnswer(KettelTest.Type.B);
            SQLData.Q3               = KettelTest.GetAnswer(KettelTest.Type.Q3);
            SQLData.Q4               = KettelTest.GetAnswer(KettelTest.Type.Q4);
            SQLData.math_result      = MathematicalTest.GetAnswer();
            SQLData.math_time        = MathematicalTest.GetBonusTime();
            SQLData.memory_count     = MemoryTest.GetAnswer();
            SQLData.encryption_count = EncryptionTest.answersCount;
            SQLData.miss_count       = MissingDetailsTest.GetAnswer();

            SQLScripts.SetAnswers();
            SQLScripts.RemoveUser();
            this.Size = new Size(900, 700);

            ResultView view = new ResultView();

            view.AddElement();
            view.AlignX();
            missingDetailsElement?.Hide();
            AlignElements();
        }
        static void Main(string[] args)
        {
            var testOptions = GetTestOptions();
            var test        = new MemoryTest();

            test.GenerateArray(testOptions.DigitsAmount);
            var array        = test.TestArray;
            var timeInterval = 1000;

            for (int i = 0; i < array.Length; i++)
            {
                DisplayDigit(array[i], testOptions.DigitType, testOptions.DigitRGB, testOptions.BackgroundRGB);
                Thread.Sleep(timeInterval);
            }

            var answers  = GetAnswers();
            var accuracy = test.GetAnswersAccuracy(answers);

            Console.WriteLine(accuracy * 100);

            SaveResult(testOptions, accuracy);

            Image  img = Bitmap.FromFile("1.png");
            Bitmap bmp = new Bitmap(img);

            CreateImageWithColors(bmp, testOptions.DigitRGB, testOptions.BackgroundRGB);
        }
        public ResultView()
        {
            userNameLabel          = new Label();
            userNameLabel.AutoSize = true;
            userNameLabel.Text     = "Спасибо за уделенное время!";
            userNameLabel.TabIndex = 0;
            Program.mainForm.Controls.Add(userNameLabel);
            userNameLabel.Location = new System.Drawing.Point((Program.mainForm.Size.Width - userNameLabel.Size.Width) / 2, 50);

            userNameLabel   = new Label();
            kettelLabel     = new Label();
            mathLabel       = new Label();
            memoryLabel     = new Label();
            encryptionLabel = new Label();
            missLabel       = new Label();

            labelList = new List <Label>()
            {
                userNameLabel,
                kettelLabel,
                mathLabel,
                memoryLabel,
                encryptionLabel,
                missLabel
            };

            int x = 0, y = 70;

            userNameLabel.Text      = SQLData.user_name;
            kettelLabel.MaximumSize = new System.Drawing.Size(650, 1000);
            kettelLabel.Text        =
                "Результат по фактору " + KettelTest.Type.B.ToString() + " " + KettelTest.GetAnswer(KettelTest.Type.B) + "\n" + BriefDescription.GetDescription(KettelTest.Type.B) + "\n" +
                "Результат по фактору " + KettelTest.Type.Q1.ToString() + " " + KettelTest.GetAnswer(KettelTest.Type.Q1) + "\n" + BriefDescription.GetDescription(KettelTest.Type.Q1) + "\n" +
                "Результат по фактору " + KettelTest.Type.Q3.ToString() + " " + KettelTest.GetAnswer(KettelTest.Type.Q3) + "\n" + BriefDescription.GetDescription(KettelTest.Type.Q2) + "\n" +
                "Результат по фактору " + KettelTest.Type.Q4.ToString() + " " + KettelTest.GetAnswer(KettelTest.Type.Q4) + "\n" + BriefDescription.GetDescription(KettelTest.Type.Q4) + "\n";

            mathLabel.Text       = "Результат по арифметической части " + MathematicalTest.GetAnswer() + "/" + MathematicalTest.questions.Count;       //+ " бонусное время : " + MathematicalTest.GetBonusTime();
            memoryLabel.Text     = "Результат по тесту \"Ряды\"" + MemoryTest.GetAnswer().ToString() + " запомненых цифр";
            encryptionLabel.Text = "Результат по тесту \"Шифрование\"" + EncryptionTest.answersCount.ToString() + " правильных расшифровок";
            missLabel.Text       = "Результат по тесту \"Недостащие детали\"" + MissingDetailsTest.GetAnswer().ToString() + "/" + MissingDetailsTest.GetInfo().Count;

            for (int i = 0; i < LABEL_COUNT; i++)
            {
                labelList[i].AutoSize = true;
                labelList[i].Location = new Point(x, y);
                labelList[i].TabIndex = 0;
                y += 40;

                if (i == 1)
                {
                    y += 200;
                }
            }

            AlignX();
        }
示例#4
0
    // Use this for initialization
    void Start()
    {
        //intarry2 = new int[100000000];

        MemoryTest test = new MemoryTest();
        //UnityEngine.Debug.Log(test.intint);
        Point p;

        p.x = 0;
        p.y = 0;

        UnityEngine.Debug.Log(Marshal.SizeOf(p));

        using (MemoryStream s = new MemoryStream())
        {
            BinaryFormatter bf = new BinaryFormatter();
            bf.Serialize(s, test);
            byte[] bytes;
            bytes = s.ToArray();
            UnityEngine.Debug.Log(s.Length);
            UnityEngine.Debug.Log(bytes.Length);
        }
        //UnityEngine.Debug.Log(Marshal.SizeOf(test));
        //UnityEngine.Debug.Log(sizeof());

        Stopwatch sw = new Stopwatch();

        sw.Reset();
        sw.Start();

        for (int index = 0; index < 100000000; index++)
        {
            //intarry2[index] = 0;
            intarry[index] = 0;
        }

        sw.Stop();
        UnityEngine.Debug.Log(sw.Elapsed.ToString());
        //unsafe
        //{
        //    fixed (int* pintarry = new int[100000000])
        //    {
        //        sw.Start();
        //        for (int index = 0; index < 100000000; index++)
        //        {
        //            pintarry[index] = 0;
        //        }
        //        sw.Stop();
        //        UnityEngine.Debug.Log(sw.Elapsed.ToString());
        //    }
        //}
    }
示例#5
0
        private void NextIterationMemory()
        {
            if (showDescription)
            {
                mainTextLabel.Visible = true;
                showDescription       = false;
                mainTextLabel.Text    = "Следующее задание - проверка на память.\nСначала вам будет дано 3 секунды для того чтобы запомнить ряд цифр. А затем нужно ввести ряд В ОБРАТНОМ ПОРЯДКЕ БЕЗ ПРОБЕЛОВ.\nПример: ряд (8 9 4 3)\nОтвет: (3498)";
                AlignElements();
                return;
            }

            mainTextLabel.Visible = false;

            if (!isMemoryStarted)
            {
                memoryTestElement = new MemoryTestElement(100, 100);
                memoryTestElement.AddElement();
                isMemoryStarted = true;
                memoryTestElement.NextElementIteration();
                memoryTestElement.AlignByX(Size.Width);
                return;
            }

            if (!memoryTestElement.isAnswering)
            {
                return;
            }

            if (MemoryTest.CanBeContinued(memoryTestElement.GetAnswer()))
            {
                memoryTestElement.NextElementIteration();
            }
            else
            {
                mainTextLabel.Visible = false;
                IncreaseIterator();
            }
        }
示例#6
0
 // Use this for initialization
 void Start()
 {
     var memeryTest = new MemoryTest();
 }
    private void RunTest(TestType testType, bool RunBaseLine = true)
    {
        PerformanceTest test       = null;
        int             iterations = int.Parse(inputField.text);

        switch (testType)
        {
        case TestType.Exception:
            test = new ExceptionTest {
                RunBaseline = RunBaseLine, Iterations = iterations
            };
            break;

        case TestType.Strings:
            test = new StringsTest {
                RunBaseline = RunBaseLine, Iterations = iterations
            };
            break;

        case TestType.Arrays:
            test = new ArraysTest {
                RunBaseline = RunBaseLine, Iterations = iterations
            };
            break;

        case TestType.Boxing:
            test = new BoxingTest {
                RunBaseline = RunBaseLine, Iterations = iterations
            };
            break;

        case TestType.ForForeach:
            test = new ForForeachTest {
                RunBaseline = RunBaseLine, Iterations = iterations
            };
            break;

        case TestType.Struct:
            test = new StructTest {
                RunBaseline = RunBaseLine, Iterations = iterations
            };
            break;

        case TestType.Memory:
            test = new MemoryTest {
                RunBaseline = RunBaseLine, Iterations = iterations
            };
            break;

        case TestType.Instantiation:
            test = new InstantiationTest {
                RunBaseline = RunBaseLine, Iterations = iterations
            };
            break;

        case TestType.Properties:
            test = new PropertiesTest {
                RunBaseline = RunBaseLine, Iterations = iterations
            };
            break;

        default:
            throw new ArgumentOutOfRangeException(nameof(testType), testType, null);
        }

        titleText.text       = test.Name;
        descriptionText.text = test.Description;
        var averageResult = test.Measure();

        lastPerformanceResult = averageResult;
        UpdatePerformanceResultUI();

        var(perA, perB, perC) = GetPercentageOfResult(averageResult);
        totalASlider.value    = perA;
        totalBSlider.value    = perB;
        totalCSlider.value    = perC;
    }