Как обновлять переменную в цикле

Как можно обновить переменную в цикле в зависимости от введенного значения? Cуть задания угадать число, которое загадал компьютер, но при этом угадать еще сколько цифр мы угадали из заданного числа и стоят ли они на своих позициях. Например, загаданное число 123, вводим 203, программа говорит что угадано 2 числа(2 и 3), на своих позициях 1 число(3)

int main() {
    setlocale(LC_ALL, "Russian");
    srand(time(NULL));
    int randomNum, ourNum, temp1, temp2, numDigits = 1;
    int* massPosition;
    int* ourMassPosition;

    cout << "Компьютер загадал число, необходимо его отгадать" << endl;
    randomNum = 123;
    printf("Комп загадал %d\n", randomNum);
    cout << "Ваш вариант : ";
    cin >> ourNum;
    temp1 = randomNum; // копия числа компьютера
    temp2 = ourNum; // копия нашего числа

    if (randomNum == ourNum) {
        cout << "Число отгадано!" << endl;
        return 0;
    }

    // Cчитаем разрядность числа компьютера
    while (temp1 / 10 != 0) {
        numDigits++;
        temp1 /= 10;
    }

    massPosition = new int[numDigits];
    ourMassPosition = new int[numDigits];
    temp1 = randomNum;


    while (randomNum != ourNum) {
        cout << "Попробуйте еще раз: " << endl;
        cin >> ourNum;
        temp2 = ourNum;
        while (temp1 != 0 && temp2 != 0) {
            for (int i = numDigits - 1; i >= 0; i--) {
                massPosition[i] = temp1 % 10;
                ourMassPosition[i] = temp2 % 10;
                temp1 /= 10;
                temp2 /= 10;
            }
        }
        int countPosition = 0;
        for (int i = 0; i < numDigits; i++) {
            if (massPosition[i] == ourMassPosition[i]) {
                countPosition++;
            }
        }
        int countNumber = 0;
        for (int i = 0; i < numDigits; i++) {
            for (int j = 0; j < numDigits - 1; j++) {
                if (massPosition[i] == ourMassPosition[j]) {
                    countNumber++;
                    i++;
                }
            }
        }
        cout << "Угадано: " << countNumber << " На своих местах : " << countPosition << endl;
        if (randomNum == ourNum) {
            cout << "Число угадано!" << endl;
        }
    }
        delete massPosition;
        delete ourMassPosition;

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