Реализовать правильно игру быки и коровы через winforms c++

Проблема заключается в том, что считает неправильно быков и коров именно в винформе, хотя в обычной консоли, вроде, все считает правильно. Существует следующая форма:

введите сюда описание изображения

Использую функцию при загрузке формы для инициализации четырехзначного числа, которое загадал компьютер:

System::Void Form1_Load(System::Object^  sender, System::EventArgs^  e)
        {
                bool bmap[10];
                for (int i = 0; i != 10; i++) bmap[i] = true;
                int n, number = 0;
                for (int i = 1; i != 10000; i *= 10)
                {
                    do
                    {
                        n = 1 + rand() % 10;
                    } while (bmap[n] == false);
                    bmap[n] = false;
                    number += i * n;
                }
                textBox4->Text = Convert::ToString(number);
        }

Оно также выводится в левый верхний уголок, так что всегда можно сверить. Дальше нашла обычную функцию для поиска быков и коров:

void get(const int &number)
        {
            int bik, korova;    
                    int input;
                    input = Convert::ToInt16(textBox1->Text);   bik = 0, korova = 0;
                    for (int i = 1000; i != 0; i /= 10) {
                        if ((input / i % 10) == (number / i % 10))
                            bik++;
                    }
                    for (int i = 1000; i != 0; i /= 10) {
                        for (int j = 1000; j != 0; j /= 10)
                        {
                            if (i != j && (input / i % 10) == (number / j % 10))
                                korova++;
                        }

                        textBox2->Text = Convert::ToString(bik);
                        textBox3->Text = Convert::ToString(korova);
                    }
                    if(bik==4)MessageBox::Show("You won");

        }

Чтобы вызвать функцию надо нажать на кнопку, реализация такая :

System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
         int number;

            get(number);
        }

Но данные никак не совпадают, даже, если ввожу число, которое загадал компьютер. Помогите, пожалуйста, уж не знаю, что делать. Задавайте вопросы, если что-то в моих обьяснениях не понятно и вы готовы помочь, буду очень благодарна.


Ответы (0 шт):