Hallo, hier ist mein Quellcode: (Erklärung unten)
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int Eingabe();
int zeile();
int spalte();
void clearScreen();
int FERTIG(int design[4][4]);
int main()
{
int design[4][4];
int ein=0;
printf("--SUDOKU 5X5--\n--------------\n");
while(ein>4||ein<1){
printf("Bitte Zahl zwischen 1 und 4 eingeben.\n");
printf("Momentan geht nur die 1, also bitte 1 druecken -.-'\n");
scanf("%i",&ein);
clearScreen();
}
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
design[i][j]=0;
}
}
if(ein==1){
clearScreen();
for(int i=0;i<5;i++){
design[i][i]=randRange();
}
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
printf("%i ",design[i][j]);
}
printf("\n");
}
while(FERTIG(design)!=1){
clearScreen();
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
printf("%i ",design[i][j]);
}
printf("\n");
}
int zeile1, spalte2 = 1;
int k;
while(design[zeile1][spalte2]>0){
zeile1=zeile();
spalte2=spalte();
}
printf("Bitte Nummer eingeben: \n");
scanf("%i",& k);
design[zeile1][spalte2]=k;
clearScreen();
}
}
if(FERTIG(design)){
printf("____\n-GG-\n----");
return 0;
}
if(ein==2){
for(int i=0;i<6;i++){
design[randRange()][randRange()]=randRange();
}
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
printf("%i ",design[i][j]);
}
printf("\n");
}
}
}
void clearScreen()
{
// system("clear"); // Linux
system("CLS"); // Windows
}
int randRange()
{
int lower =1, upper =5;
int num = (rand() % (upper - lower + 1)) + lower;
return num;
}
int zeile()
{
int i;
printf("Bitte Zeile auswaehlen: \n");
scanf("%i",&i);
return i;
}
int spalte()
{
int j;
printf("Bitte Spalte auswaehlen: \n");
scanf("%i",&j);
return j;
}
int FERTIG(int design[4][4])
{
int ges,ges1,ges2,ges3,ges4;
for(int i=0;i<5;i++){
ges=ges+design[0][i];
}
for(int i=0;i<5;i++){
ges1=ges1+design[1][i];
}
for(int i=0;i<5;i++){
ges2=ges2+design[2][i];
}
for(int i=0;i<5;i++){
ges3=ges3+design[3][i];
}
for(int i=0;i<5;i++){
ges4=ges4+design[4][i];
}
if(ges==15&&ges1==15&&ges2==15&&ges3==15&&ges4==15){
return 1;
}
return 0;
}
Es handelt sich hierbei um ein Sudokuspiel mit 5x5 Kästchen. Einige Abfragen sind noch in Arbeit, wie z.B. die Funktion FERTIG(). Mir geht es nur um die oben gestellte Frage. Vielen Dank im Voraus.