You are on page 1of 2

Alejandro Latorre Pabon <alatorrepabon@unicauca.edu.

co>
jue., 11 abr. 19:51 (hace 1 d�a)
para gando006

*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package sudoku;

/**
*
* @author ingesis
*/
public class Main {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
}
int varSudoku[][]=new int [4][4] ;
public void FillSudoku(int prmSudoku[][])
{
prmSudoku[0][1]=3;
prmSudoku[0][2]=4;
prmSudoku[1][0]=4;
prmSudoku[0][3]=2;
prmSudoku[2][3]=3;
prmSudoku[0][1]=3;
prmSudoku[0][1]=3;
prmSudoku[0][1]=3;
}
public int[] CheckRow(int prmSudoku[][],int prmRow)
{
int varMissingInRow[]={1,2,3,4};

for(int varColumnIndex=0;varColumnIndex<4;varColumnIndex++)
if(prmSudoku[prmRow][varColumnIndex]!=0)
varMissingInRow[prmSudoku[prmRow][varColumnIndex]-1]=0;
return varMissingInRow;
}

public int[] CheckColumn(int prmSudoku[][],int prmColumn)


{
int varMissingInColumn[]={1,2,3,4};

for(int varRowIndex=0;varRowIndex<4;varRowIndex++)
if(prmSudoku[varRowIndex][prmColumn]!=0)
varMissingInColumn[prmSudoku[varRowIndex][prmColumn]-1]=0;
return varMissingInColumn;
}
public int[] CheckQuadrant(int prmSudoku[][],int prmRow,int prmColumn)
{
int varMissingInQuadrant[]={1,2,3,4};
if(prmRow<2){
if(prmColumn<2){
for(int varRowIndex=0; varRowIndex<2; varRowIndex++)
for(int varColumnIndex=0;varColumnIndex<2;varColumnIndex++)
if(prmSudoku[varRowIndex][varColumnIndex]!=0)
varMissingInQuadrant[prmSudoku[varRowIndex][prmColumn]]=0;

}
public int CheckMissingNumber(int prmSudoku[][],int prmRow, int prmColumn)
{
int [] varMissingInRow=CheckRow(prmSudoku,prmRow);
int [] varMissingInColumm=CheckColumn(prmSudoku,prmColumn);
int [] varMissingInQuadrant=CheckQuadrant(prmSudoku,prmRow,prmColumn);
if(varMissingInRow[0]==1 && varMissingInColumm[0]==1 &&
varMissingInQuadrant[0]==1)
return 1;
if(varMissingInRow[1]==2 && varMissingInColumm[1]==2 &&
varMissingInQuadrant[1]==2)
return 2;
if(varMissingInRow[2]==3 && varMissingInColumm[2]==3 &&
varMissingInQuadrant[2]==3)
return 3;
if(varMissingInRow[3]==4 && varMissingInColumm[3]==4 &&
varMissingInQuadrant[3]==4)
return 4;
return 0;
}

public void SolveSudoku( int prmSudoku[][])


{
for (int varRowIndex = 0; varRowIndex < prmSudoku.length; varRowIndex++){
for (int varColumnIndex = 0; varRowIndex <
prmSudoku[varColumnIndex].length; varColumnIndex++) {
if(prmSudoku[varRowIndex][varColumnIndex]==0){
prmSudoku[varRowIndex]
[varColumnIndex]=CheckMissingNumber(prmSudoku,varRowIndex,varColumnIndex);
}
}
}
}

public void PirntSudoku(int prmrmSudoku[][])


{
}
}

You might also like