Нужна помощь в переносе функции с C ++ на Ocaml

У меня есть следующий код функции в C ++

bool SolveSudoku(int grid[N][N])
{
int row, col;

if (!FindUnassignedLocation(grid, row, col))
return true;

for (int num = 1; num <= 9; num++)
{
if (isSafe(grid, row, col, num))
{
grid[row][col] = num;
if (SolveSudoku(grid))
return true;

grid[row][col] = UNASSIGNED;
}
}
return false;
}

Проблема, с которой я здесь сталкиваюсь, заключается в том, что в операторе if мне нужно сначала выполнить операцию, а затем вернуть логическое значение. И Ocaml не помогает в этом случае с разными возвращаемыми значениями в одном и том же операторе if.

-6

Решение

Взгляните на исходный код OCaml версии судоку:

https://github.com/VictorNicollet/99-Problems-OCaml/blob/master/91-99/p97.ml

0

Другие решения


По вопросам рекламы [email protected]