Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int counter = 1;
- int solve(int row, int col) {
- removeValueFromField(row,col);
- for(int i = counter; i <= 9;i++){
- if (checkValueInField(i, row, col)){
- setValueInField(i, row, col);
- if(getValueFromField(row,col+1)==0) {
- counter = 1;
- }
- else{
- if(initial[row][col+1] != 0) {
- counter = getValueFromField(row, col + 1);
- }
- else{
- counter = getValueFromField(row,col+1)+1;
- }
- }
- if(col == 8 && row == 8)return 1;
- if(col == 8){
- if(counter == 10){
- counter = getValueFromField(row+1,1)+1;
- return solve(row+1,1);
- }
- else {
- return solve(row + 1, 0);
- }
- }
- else if(counter == 10){
- counter = getValueFromField(row,col+2)+1;
- return solve(row,col+2);
- }
- else {
- return solve(row, col + 1);
- }
- }
- if(i==9 && checkValueInField(i,row,col) == 0) { //Keine Zahl gefunden
- if(col == 0){
- counter = getValueFromField(row-1,8)+1;
- if(counter == 10){
- counter = getValueFromField(row-1,7)+1;
- return solve(row-1,7);
- }
- else{
- removeValueFromField(row-1,8);
- return solve(row-1,8);
- }
- }
- else {
- counter = getValueFromField(row, col - 1) + 1;
- if(counter == 10){
- if(col == 1){
- counter=getValueFromField(row-1,8)+1;
- return solve(row-1,8);
- }
- else {
- removeValueFromField(row,col-1);
- counter = getValueFromField(row, col - 2) + 1;
- return solve(row, col - 2);
- }
- }
- else{
- return solve(row, col - 1);
- }
- }
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement