Hello Again.
I want to make Sudoku Game In C.
But I have problem for solution. Please help me.
Code:
#include <stdio.h>#include <stdlib.h>
enum {BORDER,EMPTY};
const int ConvertTo25[25]= {
8,9,10,11,12,
15,16,17,18,19,
22,23,24,25,26,
29,30,31,32,33
};
void GetDifferentRandomNumber(int *board)
{
int index = 0;
int loopIndex;
int moveOk = 0;
int randomNumber[5];
int newNumber;
while(moveOk!=5)
{
for(index = 0;index < 5;)
{
newNumber = (1+rand()%5);
if(ControlDifferentNumber(&randomNumber,newNumber)==1)
{
randomNumber[index] = newNumber;
board[ConvertTo25[index]] = randomNumber[index];
index++;
}
}
moveOk=5;
}
}
int ControlDifferentNumber(int *randomNumber, int newNumber)
{
int index = 0;
for(index = 0; index<5 ; index++)
{
if(randomNumber[index]==newNumber)
return 0;
}
return 1;
}
void PrintBoard(const int *board)
{
int index = 0;
char pChar[2]="|-";
printf("\n");
for(index = 0; index<25; ++index)
{
if(index!=0 && index%5==0)
{
printf("\n\n");
}
printf("%5d",board[ConvertTo25[index]]);
}
printf("\n");
}
void InitiazeBoard(int *board)
{
int index;
for(index = 0; index<49; ++index)
{
board[index] = BORDER;
}
for(index = 0; index<25; ++index)
{
board[ConvertTo25[index]] = EMPTY;
}
}
void RunGame()
{
int board[49];
InitiazeBoard(&board[0]);
GetDifferentRandomNumber(&board[0]);
PrintBoard(&board[0]);
}
int main(void) {
srand(time(NULL));
RunGame();
return 0;
}