PROBLEMA Programma in c che risolve il sudoku

sandrulino

Nuovo Utente
Stavo provando tramite l'utilizzo di 2 matrici di creare un programma che risolve i sudoku, so che ci sono metodi più semplici ma volevo capire cos'è sbagliato in questo programmino che ho fatto:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>

int main()
{
int a;
int i;
int j;
int A[9][9];
int B[9][9];
//Prima fila
printf("ASSEGNA AD OGNI POSIZIONE UN VALORE, SE NON NE SEI A CONOSCENZA METTI 0 \n");
printf("Dimmi il numero in posizione [1][1]");
scanf("%d", &a);
A[1][1]=a;
printf("Dimmi il numero in posizione [1][2]");
scanf("%d", &a);
A[1][2]=a;
printf("Dimmi il numero in posizione [1][3]");
scanf("%d", &a);
A[1][3]=a;
printf("Dimmi il numero in posizione [1][4]");
scanf("%d", &a);
A[1][4]=a;
printf("Dimmi il numero in posizione [1][5]");
scanf("%d", &a);
A[1][5]=a;
printf("Dimmi il numero in posizione [1][6]");
scanf("%d", &a);
A[1][6]=a;
printf("Dimmi il numero in posizione [1][7]");
scanf("%d", &a);
A[1][7]=a;
printf("Dimmi il numero in posizione [1][8]");
scanf("%d", &a);
A[1][8]=a;
printf("Dimmi il numero in posizione [1][9]");
scanf("%d", &a);
A[1][9]=a;
//seconda fila
printf("Dimmi il numero in posizione [2][1]");
scanf("%d", &a);
A[2][1]=a;
printf("Dimmi il numero in posizione [2][2]");
scanf("%d", &a);
A[2][2]=a;
printf("Dimmi il numero in posizione [2][3]");
scanf("%d", &a);
A[2][3]=a;
printf("Dimmi il numero in posizione [2][4]");
scanf("%d", &a);
A[2][4]=a;
printf("Dimmi il numero in posizione [2][5]");
scanf("%d", &a);
A[2][5]=a;
printf("Dimmi il numero in posizione [2][6]");
scanf("%d", &a);
A[2][6]=a;
printf("Dimmi il numero in posizione [2][7]");
scanf("%d", &a);
A[2][7]=a;
printf("Dimmi il numero in posizione [2][8]");
scanf("%d", &a);
A[2][8]=a;
printf("Dimmi il numero in posizione [2][9]");
scanf("%d", &a);
A[2][9]=a;
//terza fila
printf("Dimmi il numero in posizione [3][1]");
scanf("%d", &a);
A[3][1]=a;
printf("Dimmi il numero in posizione [3][2]");
scanf("%d", &a);
A[3][2]=a;
printf("Dimmi il numero in posizione [3][3]");
scanf("%d", &a);
A[3][3]=a;
printf("Dimmi il numero in posizione [3][4]");
scanf("%d", &a);
A[3][4]=a;
printf("Dimmi il numero in posizione [3][5]");
scanf("%d", &a);
A[3][5]=a;
printf("Dimmi il numero in posizione [3][6]");
scanf("%d", &a);
A[3][6]=a;
printf("Dimmi il numero in posizione [3][7]");
scanf("%d", &a);
A[3][7]=a;
printf("Dimmi il numero in posizione [3][8]");
scanf("%d", &a);
A[3][8]=a;
printf("Dimmi il numero in posizione [3][9]");
scanf("%d", &a);
A[3][9]=a;
//quarta fila
printf("Dimmi il numero in posizione [4][1]");
scanf("%d", &a);
A[4][1]=a;
printf("Dimmi il numero in posizione [4][2]");
scanf("%d", &a);
A[4][2]=a;
printf("Dimmi il numero in posizione [4][3]");
scanf("%d", &a);
A[4][3]=a;
printf("Dimmi il numero in posizione [4][4]");
scanf("%d", &a);
A[4][4]=a;
printf("Dimmi il numero in posizione [4][5]");
scanf("%d", &a);
A[4][5]=a;
printf("Dimmi il numero in posizione [4][6]");
scanf("%d", &a);
A[4][6]=a;
printf("Dimmi il numero in posizione [4][7]");
scanf("%d", &a);
A[4][7]=a;
printf("Dimmi il numero in posizione [4][8]");
scanf("%d", &a);
A[4][8]=a;
printf("Dimmi il numero in posizione [4][9]");
scanf("%d", &a);
A[4][9]=a;
//seconda fila
printf("Dimmi il numero in posizione [5][1]");
scanf("%d", &a);
A[5][1]=a;
printf("Dimmi il numero in posizione [5][2]");
scanf("%d", &a);
A[5][2]=a;
printf("Dimmi il numero in posizione [5][3]");
scanf("%d", &a);
A[5][3]=a;
printf("Dimmi il numero in posizione [5][4]");
scanf("%d", &a);
A[5][4]=a;
printf("Dimmi il numero in posizione [5][5]");
scanf("%d", &a);
A[5][5]=a;
printf("Dimmi il numero in posizione [5][6]");
scanf("%d", &a);
A[5][6]=a;
printf("Dimmi il numero in posizione [5][7]");
scanf("%d", &a);
A[5][7]=a;
printf("Dimmi il numero in posizione [5][8]");
scanf("%d", &a);
A[5][8]=a;
printf("Dimmi il numero in posizione [5][9]");
scanf("%d", &a);
A[5][9]=a;
//seconda fila
printf("Dimmi il numero in posizione [6][1]");
scanf("%d", &a);
A[6][1]=a;
printf("Dimmi il numero in posizione [6][2]");
scanf("%d", &a);
A[6][2]=a;
printf("Dimmi il numero in posizione [6][3]");
scanf("%d", &a);
A[6][3]=a;
printf("Dimmi il numero in posizione [6][4]");
scanf("%d", &a);
A[6][4]=a;
printf("Dimmi il numero in posizione [6][5]");
scanf("%d", &a);
A[6][5]=a;
printf("Dimmi il numero in posizione [6][6]");
scanf("%d", &a);
A[6][6]=a;
printf("Dimmi il numero in posizione [6][7]");
scanf("%d", &a);
A[6][7]=a;
printf("Dimmi il numero in posizione [6][8]");
scanf("%d", &a);
A[6][8]=a;
printf("Dimmi il numero in posizione [6][9]");
scanf("%d", &a);
A[6][9]=a;
//settima fila
printf("Dimmi il numero in posizione [7][1]");
scanf("%d", &a);
A[7][1]=a;
printf("Dimmi il numero in posizione [7][2]");
scanf("%d", &a);
A[7][2]=a;
printf("Dimmi il numero in posizione [7][3]");
scanf("%d", &a);
A[7][3]=a;
printf("Dimmi il numero in posizione [7][4]");
scanf("%d", &a);
A[7][4]=a;
printf("Dimmi il numero in posizione [7][5]");
scanf("%d", &a);
A[7][5]=a;
printf("Dimmi il numero in posizione [7][6]");
scanf("%d", &a);
A[7][6]=a;
printf("Dimmi il numero in posizione [7][7]");
scanf("%d", &a);
A[7][7]=a;
printf("Dimmi il numero in posizione [7][8]");
scanf("%d", &a);
A[7][8]=a;
printf("Dimmi il numero in posizione [7][9]");
scanf("%d", &a);
A[7][9]=a;
//ottava fila
printf("Dimmi il numero in posizione [8][1]");
scanf("%d", &a);
A[8][1]=a;
printf("Dimmi il numero in posizione [8][2]");
scanf("%d", &a);
A[8][2]=a;
printf("Dimmi il numero in posizione [8][3]");
scanf("%d", &a);
A[8][3]=a;
printf("Dimmi il numero in posizione [8][4]");
scanf("%d", &a);
A[8][4]=a;
printf("Dimmi il numero in posizione [8][5]");
scanf("%d", &a);
A[8][5]=a;
printf("Dimmi il numero in posizione [8][6]");
scanf("%d", &a);
A[8][6]=a;
printf("Dimmi il numero in posizione [8][7]");
scanf("%d", &a);
A[8][7]=a;
printf("Dimmi il numero in posizione [8][8]");
scanf("%d", &a);
A[8][8]=a;
printf("Dimmi il numero in posizione [8][9]");
scanf("%d", &a);
A[8][9]=a;
//nona fila
printf("Dimmi il numero in posizione [9][1]");
scanf("%d", &a);
A[9][1]=a;
printf("Dimmi il numero in posizione [9][2]");
scanf("%d", &a);
A[9][2]=a;
printf("Dimmi il numero in posizione [9][3]");
scanf("%d", &a);
A[9][3]=a;
printf("Dimmi il numero in posizione [9][4]");
scanf("%d", &a);
A[9][4]=a;
printf("Dimmi il numero in posizione [9][5]");
scanf("%d", &a);
A[9][5]=a;
printf("Dimmi il numero in posizione [9][6]");
scanf("%d", &a);
A[9][6]=a;
printf("Dimmi il numero in posizione [9][7]");
scanf("%d", &a);
A[9][7]=a;
printf("Dimmi il numero in posizione [9][8]");
scanf("%d", &a);
A[9][8]=a;
printf("Dimmi il numero in posizione [9][9]");
scanf("%d", &a);
A[9][9]=a;
for(i=1; i<10; i++)
for(j=1; j<10; j++)
{
if(A[j]==0)
{
for(A[j]=1; A[j]<10; A[j]++)
{
if(A[1][1]!=A[1][2]!=A[1][3]!=A[1][4]!=A[1][5]!=A[1][6]!=A[1][7]!=A[1][8]!=A[1][9] && A[1][1]!=A[2][1]!=A[3][1]!=A[4][1]!=A[5][1]!=A[6][1]!=A[7][1]!=A[8][1]!=A[9][1] && A[1][1]+A[1][2]+A[1][3]+A[1][4]+A[1][5]+A[1][6]+A[1][7]+A[1][8]+A[1][9]==45 && A[1][1]+A[2][1]+A[3][1]+A[4][1]+A[5][1]+A[6][1]+A[7][1]+A[8][1]+A[9][1]==45)
{
B[j]=A[j];
}
}
}
}
//prima riga
printf("La soluzione è: \n");
printf("%d \t", B[1][1] );
printf("%d \t", B[1][2] );
printf("%d \t", B[1][3] );
printf("%d \t", B[1][4] );
printf("%d \t", B[1][5] );
printf("%d \t", B[1][6] );
printf("%d \t", B[1][7] );
printf("%d \t", B[1][8] );
printf("%d \t \n", B[1][9] );
//seconda riga
printf("%d \t", B[2][1] );
printf("%d \t", B[2][2] );
printf("%d \t", B[2][3] );
printf("%d \t", B[2][4] );
printf("%d \t", B[2][5] );
printf("%d \t", B[2][6] );
printf("%d \t", B[2][7] );
printf("%d \t", B[2][8] );
printf("%d \t \n", B[2][9] );
//terza riga
printf("%d \t", B[3][1] );
printf("%d \t", B[3][2] );
printf("%d \t", B[3][3] );
printf("%d \t", B[3][4] );
printf("%d \t", B[3][5] );
printf("%d \t", B[3][6] );
printf("%d \t", B[3][7] );
printf("%d \t", B[3][8] );
printf("%d \t \n", B[3][9] );
//quarta riga
printf("%d \t", B[4][1] );
printf("%d \t", B[4][2] );
printf("%d \t", B[4][3] );
printf("%d \t", B[4][4] );
printf("%d \t", B[4][5] );
printf("%d \t", B[4][6] );
printf("%d \t", B[4][7] );
printf("%d \t", B[4][8] );
printf("%d \t \n", B[4][9] );
//quinta riga
printf("%d \t", B[5][1] );
printf("%d \t", B[5][2] );
printf("%d \t", B[5][3] );
printf("%d \t", B[5][4] );
printf("%d \t", B[5][5] );
printf("%d \t", B[5][6] );
printf("%d \t", B[5][7] ),
printf("%d \t", B[5][8] );
printf("%d \t \n", B[5][9] );
//sesta riga
printf("%d \t", B[6][1] );
printf("%d \t", B[6][2] );
printf("%d \t", B[6][3] );
printf("%d \t", B[6][4] );
printf("%d \t", B[6][5] );
printf("%d \t", B[6][6] );
printf("%d \t", B[6][7] );
printf("%d \t", B[6][8] );
printf("%d \t \n", B[6][9] );
//settima riga
printf("%d \t", B[7][1] );
printf("%d \t", B[7][2] );
printf("%d \t", B[7][3] );
printf("%d \t", B[7][4] );
printf("%d \t", B[7][5] );
printf("%d \t", B[7][6] );
printf("%d \t", B[7][7] );
printf("%d \t", B[7][8] );
printf("%d \t \n", B[7][9] );
//ottava riga
printf("%d \t", B[8][1] );
printf("%d \t", B[8][2] );
printf("%d \t", B[8][3] );
printf("%d \t", B[8][4] );
printf("%d \t", B[8][5] );
printf("%d \t", B[8][6] );
printf("%d \t", B[8][7] );
printf("%d \t", B[8][8] );
printf("%d \t \n", B[8][9] );
//nona riga
printf("%d \t", B[9][1] );
printf("%d \t", B[9][2] );
printf("%d \t", B[9][3] );
printf("%d \t", B[9][4] );
printf("%d \t", B[9][5] );
printf("%d \t", B[9][6] );
printf("%d \t", B[9][7] );
printf("%d \t", B[9][8] );
printf("%d \t \n", B[9][9] );
system("pause");
}
 
M

Mursey

Ospite
La prima cosa da dire e' che puoi usare dei cicli sia per l'acquisizione che per la stampa...
Seconda cosa, dovevi usare il tag CODE in questa sezione.
 

Hobet

Utente Attivo
609
222
Hardware Utente
CPU
i5 6600k
Dissipatore
AIO H100
Scheda Madre
ASUS z170 Deluxe
Hard Disk
1 WD Blue 1 TB; evo 850 500gb
RAM
Vengeance 4x4
Scheda Video
GTX 1070ti MSI
Scheda Audio
Nope
Monitor
MG278Q
Case
750D Corsair
Internet
Fastweb 200/30
Sistema Operativo
PucyBuntu
Stavo provando tramite l'utilizzo di 2 matrici di creare un programma che risolve i sudoku, so che ci sono metodi più semplici ma volevo capire cos'è sbagliato in questo programmino che ho fatto:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>

int main()
{
int a;
int i;
int j;
int A[9][9];
int B[9][9];
//Prima fila
printf("ASSEGNA AD OGNI POSIZIONE UN VALORE, SE NON NE SEI A CONOSCENZA METTI 0 \n");
printf("Dimmi il numero in posizione [1][1]");
scanf("%d", &a);
A[1][1]=a;
printf("Dimmi il numero in posizione [1][2]");
scanf("%d", &a);
A[1][2]=a;
printf("Dimmi il numero in posizione [1][3]");
scanf("%d", &a);
A[1][3]=a;
printf("Dimmi il numero in posizione [1][4]");
scanf("%d", &a);
A[1][4]=a;
printf("Dimmi il numero in posizione [1][5]");
scanf("%d", &a);
A[1][5]=a;
printf("Dimmi il numero in posizione [1][6]");
scanf("%d", &a);
A[1][6]=a;
printf("Dimmi il numero in posizione [1][7]");
scanf("%d", &a);
A[1][7]=a;
printf("Dimmi il numero in posizione [1][8]");
scanf("%d", &a);
A[1][8]=a;
printf("Dimmi il numero in posizione [1][9]");
scanf("%d", &a);
A[1][9]=a;
//seconda fila
printf("Dimmi il numero in posizione [2][1]");
scanf("%d", &a);
A[2][1]=a;
printf("Dimmi il numero in posizione [2][2]");
scanf("%d", &a);
A[2][2]=a;
printf("Dimmi il numero in posizione [2][3]");
scanf("%d", &a);
A[2][3]=a;
printf("Dimmi il numero in posizione [2][4]");
scanf("%d", &a);
A[2][4]=a;
printf("Dimmi il numero in posizione [2][5]");
scanf("%d", &a);
A[2][5]=a;
printf("Dimmi il numero in posizione [2][6]");
scanf("%d", &a);
A[2][6]=a;
printf("Dimmi il numero in posizione [2][7]");
scanf("%d", &a);
A[2][7]=a;
printf("Dimmi il numero in posizione [2][8]");
scanf("%d", &a);
A[2][8]=a;
printf("Dimmi il numero in posizione [2][9]");
scanf("%d", &a);
A[2][9]=a;
//terza fila
printf("Dimmi il numero in posizione [3][1]");
scanf("%d", &a);
A[3][1]=a;
printf("Dimmi il numero in posizione [3][2]");
scanf("%d", &a);
A[3][2]=a;
printf("Dimmi il numero in posizione [3][3]");
scanf("%d", &a);
A[3][3]=a;
printf("Dimmi il numero in posizione [3][4]");
scanf("%d", &a);
A[3][4]=a;
printf("Dimmi il numero in posizione [3][5]");
scanf("%d", &a);
A[3][5]=a;
printf("Dimmi il numero in posizione [3][6]");
scanf("%d", &a);
A[3][6]=a;
printf("Dimmi il numero in posizione [3][7]");
scanf("%d", &a);
A[3][7]=a;
printf("Dimmi il numero in posizione [3][8]");
scanf("%d", &a);
A[3][8]=a;
printf("Dimmi il numero in posizione [3][9]");
scanf("%d", &a);
A[3][9]=a;
//quarta fila
printf("Dimmi il numero in posizione [4][1]");
scanf("%d", &a);
A[4][1]=a;
printf("Dimmi il numero in posizione [4][2]");
scanf("%d", &a);
A[4][2]=a;
printf("Dimmi il numero in posizione [4][3]");
scanf("%d", &a);
A[4][3]=a;
printf("Dimmi il numero in posizione [4][4]");
scanf("%d", &a);
A[4][4]=a;
printf("Dimmi il numero in posizione [4][5]");
scanf("%d", &a);
A[4][5]=a;
printf("Dimmi il numero in posizione [4][6]");
scanf("%d", &a);
A[4][6]=a;
printf("Dimmi il numero in posizione [4][7]");
scanf("%d", &a);
A[4][7]=a;
printf("Dimmi il numero in posizione [4][8]");
scanf("%d", &a);
A[4][8]=a;
printf("Dimmi il numero in posizione [4][9]");
scanf("%d", &a);
A[4][9]=a;
//seconda fila
printf("Dimmi il numero in posizione [5][1]");
scanf("%d", &a);
A[5][1]=a;
printf("Dimmi il numero in posizione [5][2]");
scanf("%d", &a);
A[5][2]=a;
printf("Dimmi il numero in posizione [5][3]");
scanf("%d", &a);
A[5][3]=a;
printf("Dimmi il numero in posizione [5][4]");
scanf("%d", &a);
A[5][4]=a;
printf("Dimmi il numero in posizione [5][5]");
scanf("%d", &a);
A[5][5]=a;
printf("Dimmi il numero in posizione [5][6]");
scanf("%d", &a);
A[5][6]=a;
printf("Dimmi il numero in posizione [5][7]");
scanf("%d", &a);
A[5][7]=a;
printf("Dimmi il numero in posizione [5][8]");
scanf("%d", &a);
A[5][8]=a;
printf("Dimmi il numero in posizione [5][9]");
scanf("%d", &a);
A[5][9]=a;
//seconda fila
printf("Dimmi il numero in posizione [6][1]");
scanf("%d", &a);
A[6][1]=a;
printf("Dimmi il numero in posizione [6][2]");
scanf("%d", &a);
A[6][2]=a;
printf("Dimmi il numero in posizione [6][3]");
scanf("%d", &a);
A[6][3]=a;
printf("Dimmi il numero in posizione [6][4]");
scanf("%d", &a);
A[6][4]=a;
printf("Dimmi il numero in posizione [6][5]");
scanf("%d", &a);
A[6][5]=a;
printf("Dimmi il numero in posizione [6][6]");
scanf("%d", &a);
A[6][6]=a;
printf("Dimmi il numero in posizione [6][7]");
scanf("%d", &a);
A[6][7]=a;
printf("Dimmi il numero in posizione [6][8]");
scanf("%d", &a);
A[6][8]=a;
printf("Dimmi il numero in posizione [6][9]");
scanf("%d", &a);
A[6][9]=a;
//settima fila
printf("Dimmi il numero in posizione [7][1]");
scanf("%d", &a);
A[7][1]=a;
printf("Dimmi il numero in posizione [7][2]");
scanf("%d", &a);
A[7][2]=a;
printf("Dimmi il numero in posizione [7][3]");
scanf("%d", &a);
A[7][3]=a;
printf("Dimmi il numero in posizione [7][4]");
scanf("%d", &a);
A[7][4]=a;
printf("Dimmi il numero in posizione [7][5]");
scanf("%d", &a);
A[7][5]=a;
printf("Dimmi il numero in posizione [7][6]");
scanf("%d", &a);
A[7][6]=a;
printf("Dimmi il numero in posizione [7][7]");
scanf("%d", &a);
A[7][7]=a;
printf("Dimmi il numero in posizione [7][8]");
scanf("%d", &a);
A[7][8]=a;
printf("Dimmi il numero in posizione [7][9]");
scanf("%d", &a);
A[7][9]=a;
//ottava fila
printf("Dimmi il numero in posizione [8][1]");
scanf("%d", &a);
A[8][1]=a;
printf("Dimmi il numero in posizione [8][2]");
scanf("%d", &a);
A[8][2]=a;
printf("Dimmi il numero in posizione [8][3]");
scanf("%d", &a);
A[8][3]=a;
printf("Dimmi il numero in posizione [8][4]");
scanf("%d", &a);
A[8][4]=a;
printf("Dimmi il numero in posizione [8][5]");
scanf("%d", &a);
A[8][5]=a;
printf("Dimmi il numero in posizione [8][6]");
scanf("%d", &a);
A[8][6]=a;
printf("Dimmi il numero in posizione [8][7]");
scanf("%d", &a);
A[8][7]=a;
printf("Dimmi il numero in posizione [8][8]");
scanf("%d", &a);
A[8][8]=a;
printf("Dimmi il numero in posizione [8][9]");
scanf("%d", &a);
A[8][9]=a;
//nona fila
printf("Dimmi il numero in posizione [9][1]");
scanf("%d", &a);
A[9][1]=a;
printf("Dimmi il numero in posizione [9][2]");
scanf("%d", &a);
A[9][2]=a;
printf("Dimmi il numero in posizione [9][3]");
scanf("%d", &a);
A[9][3]=a;
printf("Dimmi il numero in posizione [9][4]");
scanf("%d", &a);
A[9][4]=a;
printf("Dimmi il numero in posizione [9][5]");
scanf("%d", &a);
A[9][5]=a;
printf("Dimmi il numero in posizione [9][6]");
scanf("%d", &a);
A[9][6]=a;
printf("Dimmi il numero in posizione [9][7]");
scanf("%d", &a);
A[9][7]=a;
printf("Dimmi il numero in posizione [9][8]");
scanf("%d", &a);
A[9][8]=a;
printf("Dimmi il numero in posizione [9][9]");
scanf("%d", &a);
A[9][9]=a;
for(i=1; i<10; i++)
for(j=1; j<10; j++)
{
if(A[j]==0)
{
for(A[j]=1; A[j]<10; A[j]++)
{
if(A[1][1]!=A[1][2]!=A[1][3]!=A[1][4]!=A[1][5]!=A[1][6]!=A[1][7]!=A[1][8]!=A[1][9] && A[1][1]!=A[2][1]!=A[3][1]!=A[4][1]!=A[5][1]!=A[6][1]!=A[7][1]!=A[8][1]!=A[9][1] && A[1][1]+A[1][2]+A[1][3]+A[1][4]+A[1][5]+A[1][6]+A[1][7]+A[1][8]+A[1][9]==45 && A[1][1]+A[2][1]+A[3][1]+A[4][1]+A[5][1]+A[6][1]+A[7][1]+A[8][1]+A[9][1]==45)
{
B[j]=A[j];
}
}
}
}
//prima riga
printf("La soluzione è: \n");
printf("%d \t", B[1][1] );
printf("%d \t", B[1][2] );
printf("%d \t", B[1][3] );
printf("%d \t", B[1][4] );
printf("%d \t", B[1][5] );
printf("%d \t", B[1][6] );
printf("%d \t", B[1][7] );
printf("%d \t", B[1][8] );
printf("%d \t \n", B[1][9] );
//seconda riga
printf("%d \t", B[2][1] );
printf("%d \t", B[2][2] );
printf("%d \t", B[2][3] );
printf("%d \t", B[2][4] );
printf("%d \t", B[2][5] );
printf("%d \t", B[2][6] );
printf("%d \t", B[2][7] );
printf("%d \t", B[2][8] );
printf("%d \t \n", B[2][9] );
//terza riga
printf("%d \t", B[3][1] );
printf("%d \t", B[3][2] );
printf("%d \t", B[3][3] );
printf("%d \t", B[3][4] );
printf("%d \t", B[3][5] );
printf("%d \t", B[3][6] );
printf("%d \t", B[3][7] );
printf("%d \t", B[3][8] );
printf("%d \t \n", B[3][9] );
//quarta riga
printf("%d \t", B[4][1] );
printf("%d \t", B[4][2] );
printf("%d \t", B[4][3] );
printf("%d \t", B[4][4] );
printf("%d \t", B[4][5] );
printf("%d \t", B[4][6] );
printf("%d \t", B[4][7] );
printf("%d \t", B[4][8] );
printf("%d \t \n", B[4][9] );
//quinta riga
printf("%d \t", B[5][1] );
printf("%d \t", B[5][2] );
printf("%d \t", B[5][3] );
printf("%d \t", B[5][4] );
printf("%d \t", B[5][5] );
printf("%d \t", B[5][6] );
printf("%d \t", B[5][7] ),
printf("%d \t", B[5][8] );
printf("%d \t \n", B[5][9] );
//sesta riga
printf("%d \t", B[6][1] );
printf("%d \t", B[6][2] );
printf("%d \t", B[6][3] );
printf("%d \t", B[6][4] );
printf("%d \t", B[6][5] );
printf("%d \t", B[6][6] );
printf("%d \t", B[6][7] );
printf("%d \t", B[6][8] );
printf("%d \t \n", B[6][9] );
//settima riga
printf("%d \t", B[7][1] );
printf("%d \t", B[7][2] );
printf("%d \t", B[7][3] );
printf("%d \t", B[7][4] );
printf("%d \t", B[7][5] );
printf("%d \t", B[7][6] );
printf("%d \t", B[7][7] );
printf("%d \t", B[7][8] );
printf("%d \t \n", B[7][9] );
//ottava riga
printf("%d \t", B[8][1] );
printf("%d \t", B[8][2] );
printf("%d \t", B[8][3] );
printf("%d \t", B[8][4] );
printf("%d \t", B[8][5] );
printf("%d \t", B[8][6] );
printf("%d \t", B[8][7] );
printf("%d \t", B[8][8] );
printf("%d \t \n", B[8][9] );
//nona riga
printf("%d \t", B[9][1] );
printf("%d \t", B[9][2] );
printf("%d \t", B[9][3] );
printf("%d \t", B[9][4] );
printf("%d \t", B[9][5] );
printf("%d \t", B[9][6] );
printf("%d \t", B[9][7] );
printf("%d \t", B[9][8] );
printf("%d \t \n", B[9][9] );
system("pause");
}
La seconda è che parti dalla posizione 2 invece che 1. Gli array iniziano da 0 non 1
 
  • Mi piace
Reactions: Mursey

sandrulino

Nuovo Utente
La seconda è che parti dalla posizione 2 invece che 1. Gli array iniziano da 0 non 1
Giusto, non ci avevo pensato.. ho cambiato ma non funziona comunque, qualche altra idea?

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>

int main()
{
int a;
int i;
int j;
int A[8][8];
int B[8][8];
printf("ASSEGNA AD OGNI POSIZIONE UN VALORE, SE NON NE SEI A CONOSCENZA METTI 0 \n");
//prima fila
printf("Dimmi il numero in posizione [0][0]");
scanf("%d", &a);
A[0][0]=a;
printf("Dimmi il numero in posizione [0][1]");
scanf("%d", &a);
A[0][1]=a;
printf("Dimmi il numero in posizione [0][2]");
scanf("%d", &a);
A[0][2]=a;
printf("Dimmi il numero in posizione [0][3]");
scanf("%d", &a);
A[0][3]=a;
printf("Dimmi il numero in posizione [0][4]");
scanf("%d", &a);
A[0][4]=a;
printf("Dimmi il numero in posizione [0][5]");
scanf("%d", &a);
A[0][5]=a;
printf("Dimmi il numero in posizione [0][6]");
scanf("%d", &a);
A[0][6]=a;
printf("Dimmi il numero in posizione [0][7]");
scanf("%d", &a);
A[0][7]=a;
printf("Dimmi il numero in posizione [0][8]");
scanf("%d", &a);
A[0][8]=a;
//seconda fila
printf("Dimmi il numero in posizione [1][0]");
scanf("%d", &a);
A[1][0]=a;
printf("Dimmi il numero in posizione [1][1]");
scanf("%d", &a);
A[1][1]=a;
printf("Dimmi il numero in posizione [1][2]");
scanf("%d", &a);
A[1][2]=a;
printf("Dimmi il numero in posizione [1][3]");
scanf("%d", &a);
A[1][3]=a;
printf("Dimmi il numero in posizione [1][4]");
scanf("%d", &a);
A[1][4]=a;
printf("Dimmi il numero in posizione [1][5]");
scanf("%d", &a);
A[1][5]=a;
printf("Dimmi il numero in posizione [1][6]");
scanf("%d", &a);
A[1][6]=a;
printf("Dimmi il numero in posizione [1][7]");
scanf("%d", &a);
A[1][7]=a;
printf("Dimmi il numero in posizione [1][8]");
scanf("%d", &a);
A[1][8]=a;
//terza fila
printf("Dimmi il numero in posizione [2][0]");
scanf("%d", &a);
A[2][0]=a;
printf("Dimmi il numero in posizione [2][1]");
scanf("%d", &a);
A[2][1]=a;
printf("Dimmi il numero in posizione [2][2]");
scanf("%d", &a);
A[2][2]=a;
printf("Dimmi il numero in posizione [2][3]");
scanf("%d", &a);
A[2][3]=a;
printf("Dimmi il numero in posizione [2][4]");
scanf("%d", &a);
A[2][4]=a;
printf("Dimmi il numero in posizione [2][5]");
scanf("%d", &a);
A[2][5]=a;
printf("Dimmi il numero in posizione [2][6]");
scanf("%d", &a);
A[2][6]=a;
printf("Dimmi il numero in posizione [2][7]");
scanf("%d", &a);
A[2][7]=a;
printf("Dimmi il numero in posizione [2][8]");
scanf("%d", &a);
A[2][8]=a;
//quarta fila
printf("Dimmi il numero in posizione [3][0]");
scanf("%d", &a);
A[3][0]=a;
printf("Dimmi il numero in posizione [3][1]");
scanf("%d", &a);
A[3][1]=a;
printf("Dimmi il numero in posizione [3][2]");
scanf("%d", &a);
A[3][2]=a;
printf("Dimmi il numero in posizione [3][3]");
scanf("%d", &a);
A[3][3]=a;
printf("Dimmi il numero in posizione [3][4]");
scanf("%d", &a);
A[3][4]=a;
printf("Dimmi il numero in posizione [3][5]");
scanf("%d", &a);
A[3][5]=a;
printf("Dimmi il numero in posizione [3][6]");
scanf("%d", &a);
A[3][6]=a;
printf("Dimmi il numero in posizione [3][7]");
scanf("%d", &a);
A[3][7]=a;
printf("Dimmi il numero in posizione [3][8]");
scanf("%d", &a);
A[3][8]=a;
//quinta fila
printf("Dimmi il numero in posizione [4][0]");
scanf("%d", &a);
A[4][0]=a;
printf("Dimmi il numero in posizione [4][1]");
scanf("%d", &a);
A[4][1]=a;
printf("Dimmi il numero in posizione [4][2]");
scanf("%d", &a);
A[4][2]=a;
printf("Dimmi il numero in posizione [4][3]");
scanf("%d", &a);
A[4][3]=a;
printf("Dimmi il numero in posizione [4][4]");
scanf("%d", &a);
A[4][4]=a;
printf("Dimmi il numero in posizione [4][5]");
scanf("%d", &a);
A[4][5]=a;
printf("Dimmi il numero in posizione [4][6]");
scanf("%d", &a);
A[4][6]=a;
printf("Dimmi il numero in posizione [4][7]");
scanf("%d", &a);
A[4][7]=a;
printf("Dimmi il numero in posizione [4][8]");
scanf("%d", &a);
A[4][8]=a;
//sesta fila
printf("Dimmi il numero in posizione [5][0]");
scanf("%d", &a);
A[5][0]=a;
printf("Dimmi il numero in posizione [5][1]");
scanf("%d", &a);
A[5][1]=a;
printf("Dimmi il numero in posizione [5][2]");
scanf("%d", &a);
A[5][2]=a;
printf("Dimmi il numero in posizione [5][3]");
scanf("%d", &a);
A[5][3]=a;
printf("Dimmi il numero in posizione [5][4]");
scanf("%d", &a);
A[5][4]=a;
printf("Dimmi il numero in posizione [5][5]");
scanf("%d", &a);
A[5][5]=a;
printf("Dimmi il numero in posizione [5][6]");
scanf("%d", &a);
A[5][6]=a;
printf("Dimmi il numero in posizione [5][7]");
scanf("%d", &a);
A[5][7]=a;
printf("Dimmi il numero in posizione [5][8]");
scanf("%d", &a);
A[5][8]=a;
//settima fila
printf("Dimmi il numero in posizione [6][0]");
scanf("%d", &a);
A[6][0]=a;
printf("Dimmi il numero in posizione [6][1]");
scanf("%d", &a);
A[6][1]=a;
printf("Dimmi il numero in posizione [6][2]");
scanf("%d", &a);
A[6][2]=a;
printf("Dimmi il numero in posizione [6][3]");
scanf("%d", &a);
A[6][3]=a;
printf("Dimmi il numero in posizione [6][4]");
scanf("%d", &a);
A[6][4]=a;
printf("Dimmi il numero in posizione [6][5]");
scanf("%d", &a);
A[6][5]=a;
printf("Dimmi il numero in posizione [6][6]");
scanf("%d", &a);
A[6][6]=a;
printf("Dimmi il numero in posizione [6][7]");
scanf("%d", &a);
A[6][7]=a;
printf("Dimmi il numero in posizione [6][8]");
scanf("%d", &a);
A[6][8]=a;
//ottava fila
printf("Dimmi il numero in posizione [7][0]");
scanf("%d", &a);
A[7][0]=a;
printf("Dimmi il numero in posizione [7][1]");
scanf("%d", &a);
A[7][1]=a;
printf("Dimmi il numero in posizione [7][2]");
scanf("%d", &a);
A[7][2]=a;
printf("Dimmi il numero in posizione [7][3]");
scanf("%d", &a);
A[7][3]=a;
printf("Dimmi il numero in posizione [7][4]");
scanf("%d", &a);
A[7][4]=a;
printf("Dimmi il numero in posizione [7][5]");
scanf("%d", &a);
A[7][5]=a;
printf("Dimmi il numero in posizione [7][6]");
scanf("%d", &a);
A[7][6]=a;
printf("Dimmi il numero in posizione [7][7]");
scanf("%d", &a);
A[7][7]=a;
printf("Dimmi il numero in posizione [7][8]");
scanf("%d", &a);
A[7][8]=a;
//nona fila
printf("Dimmi il numero in posizione [8][0]");
scanf("%d", &a);
A[8][0]=a;
printf("Dimmi il numero in posizione [8][1]");
scanf("%d", &a);
A[8][1]=a;
printf("Dimmi il numero in posizione [8][2]");
scanf("%d", &a);
A[8][2]=a;
printf("Dimmi il numero in posizione [8][3]");
scanf("%d", &a);
A[8][3]=a;
printf("Dimmi il numero in posizione [8][4]");
scanf("%d", &a);
A[8][4]=a;
printf("Dimmi il numero in posizione [8][5]");
scanf("%d", &a);
A[8][5]=a;
printf("Dimmi il numero in posizione [8][6]");
scanf("%d", &a);
A[8][6]=a;
printf("Dimmi il numero in posizione [8][7]");
scanf("%d", &a);
A[8][7]=a;
printf("Dimmi il numero in posizione [8][8]");
scanf("%d", &a);
A[8][8]=a;
for(i=1; i<10; i++)
for(j=1; j<10; j++)
{
if(A[j]==0)
{
for(A[j]=1; A[j]<10; A[j]++)
{
if(A[1][1]!=A[1][2]!=A[1][3]!=A[1][4]!=A[1][5]!=A[1][6]!=A[1][7]!=A[1][8]!=A[1][9] && A[1][1]!=A[2][1]!=A[3][1]!=A[4][1]!=A[5][1]!=A[6][1]!=A[7][1]!=A[8][1]!=A[9][1] && A[1][1]+A[1][2]+A[1][3]+A[1][4]+A[1][5]+A[1][6]+A[1][7]+A[1][8]+A[1][9]==45 && A[1][1]+A[2][1]+A[3][1]+A[4][1]+A[5][1]+A[6][1]+A[7][1]+A[8][1]+A[9][1]==45)
{
B[j]=A[j];
}
}
}
}
printf("La soluzione è: \n");
//prima riga
printf("%d \t", B[0][0] );
printf("%d \t", B[0][1] );
printf("%d \t", B[0][2] );
printf("%d \t", B[0][3] );
printf("%d \t", B[0][4] );
printf("%d \t", B[0][5] );
printf("%d \t", B[0][6] );
printf("%d \t", B[0][7] );
printf("%d \t", B[0][8] );
//seconda riga
printf("%d \t", B[1][0] );
printf("%d \t", B[1][1] );
printf("%d \t", B[1][2] );
printf("%d \t", B[1][3] );
printf("%d \t", B[1][4] );
printf("%d \t", B[1][5] );
printf("%d \t", B[1][6] );
printf("%d \t", B[1][7] );
printf("%d \t", B[1][8] );
//terza riga
printf("%d \t", B[2][0] );
printf("%d \t", B[2][1] );
printf("%d \t", B[2][2] );
printf("%d \t", B[2][3] );
printf("%d \t", B[2][4] );
printf("%d \t", B[2][5] );
printf("%d \t", B[2][6] );
printf("%d \t", B[2][7] );
printf("%d \t", B[2][8] );
//quarta riga
printf("%d \t", B[3][0] );
printf("%d \t", B[3][1] );
printf("%d \t", B[3][2] );
printf("%d \t", B[3][3] );
printf("%d \t", B[3][4] );
printf("%d \t", B[3][5] );
printf("%d \t", B[3][6] );
printf("%d \t", B[3][7] );
printf("%d \t", B[3][8] );
//quinta riga
printf("%d \t", B[4][0] );
printf("%d \t", B[4][1] );
printf("%d \t", B[4][2] );
printf("%d \t", B[4][3] );
printf("%d \t", B[4][4] );
printf("%d \t", B[4][5] );
printf("%d \t", B[4][6] );
printf("%d \t", B[4][7] );
printf("%d \t", B[4][8] );
//sesta riga
printf("%d \t", B[5][0] );
printf("%d \t", B[5][1] );
printf("%d \t", B[5][2] );
printf("%d \t", B[5][3] );
printf("%d \t", B[5][4] );
printf("%d \t", B[5][5] );
printf("%d \t", B[5][6] );
printf("%d \t", B[5][7] ),
printf("%d \t", B[5][8] );
//settima riga
printf("%d \t", B[6][0] );
printf("%d \t", B[6][1] );
printf("%d \t", B[6][2] );
printf("%d \t", B[6][3] );
printf("%d \t", B[6][4] );
printf("%d \t", B[6][5] );
printf("%d \t", B[6][6] );
printf("%d \t", B[6][7] );
printf("%d \t", B[6][8] );
//ottava riga
printf("%d \t", B[7][0] );
printf("%d \t", B[7][1] );
printf("%d \t", B[7][2] );
printf("%d \t", B[7][3] );
printf("%d \t", B[7][4] );
printf("%d \t", B[7][5] );
printf("%d \t", B[7][6] );
printf("%d \t", B[7][7] );
printf("%d \t", B[7][8] );
//nona riga
printf("%d \t", B[8][0] );
printf("%d \t", B[8][1] );
printf("%d \t", B[8][2] );
printf("%d \t", B[8][3] );
printf("%d \t", B[8][4] );
printf("%d \t", B[8][5] );
printf("%d \t", B[8][6] );
printf("%d \t", B[8][7] );
printf("%d \t", B[8][8] );
system("pause");
}
 

rodhellas

Utente Attivo
1,469
394
Hardware Utente
CPU
Intel i5 3470
Scheda Madre
AsRock H77 pro4/mvp
Hard Disk
120GB SSD + 1TB HD
RAM
12GB Corsair XMS3 1333mhz
Scheda Video
Gigabyte GTX 960 OC
Scheda Audio
Integrata
Monitor
SyncMaster 223BW
Alimentatore
Antec HCG-520M
Case
Thermaltake Commander Ms-i Snow Edition
Sistema Operativo
Windows 10 64bit
  • Mi piace
Reactions: Mursey

Hobet

Utente Attivo
609
222
Hardware Utente
CPU
i5 6600k
Dissipatore
AIO H100
Scheda Madre
ASUS z170 Deluxe
Hard Disk
1 WD Blue 1 TB; evo 850 500gb
RAM
Vengeance 4x4
Scheda Video
GTX 1070ti MSI
Scheda Audio
Nope
Monitor
MG278Q
Case
750D Corsair
Internet
Fastweb 200/30
Sistema Operativo
PucyBuntu
Stavo provando tramite l'utilizzo di 2 matrici di creare un programma che risolve i sudoku, so che ci sono metodi più semplici ma volevo capire cos'è sbagliato in questo programmino che ho fatto:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>

int main()
{
int a;
int i;
int j;
int A[9][9];
int B[9][9];
//Prima fila
printf("ASSEGNA AD OGNI POSIZIONE UN VALORE, SE NON NE SEI A CONOSCENZA METTI 0 \n");
printf("Dimmi il numero in posizione [1][1]");
scanf("%d", &a);
A[1][1]=a;
printf("Dimmi il numero in posizione [1][2]");
scanf("%d", &a);
A[1][2]=a;
printf("Dimmi il numero in posizione [1][3]");
scanf("%d", &a);
A[1][3]=a;
printf("Dimmi il numero in posizione [1][4]");
scanf("%d", &a);
A[1][4]=a;
printf("Dimmi il numero in posizione [1][5]");
scanf("%d", &a);
A[1][5]=a;
printf("Dimmi il numero in posizione [1][6]");
scanf("%d", &a);
A[1][6]=a;
printf("Dimmi il numero in posizione [1][7]");
scanf("%d", &a);
A[1][7]=a;
printf("Dimmi il numero in posizione [1][8]");
scanf("%d", &a);
A[1][8]=a;
printf("Dimmi il numero in posizione [1][9]");
scanf("%d", &a);
A[1][9]=a;
//seconda fila
printf("Dimmi il numero in posizione [2][1]");
scanf("%d", &a);
A[2][1]=a;
printf("Dimmi il numero in posizione [2][2]");
scanf("%d", &a);
A[2][2]=a;
printf("Dimmi il numero in posizione [2][3]");
scanf("%d", &a);
A[2][3]=a;
printf("Dimmi il numero in posizione [2][4]");
scanf("%d", &a);
A[2][4]=a;
printf("Dimmi il numero in posizione [2][5]");
scanf("%d", &a);
A[2][5]=a;
printf("Dimmi il numero in posizione [2][6]");
scanf("%d", &a);
A[2][6]=a;
printf("Dimmi il numero in posizione [2][7]");
scanf("%d", &a);
A[2][7]=a;
printf("Dimmi il numero in posizione [2][8]");
scanf("%d", &a);
A[2][8]=a;
printf("Dimmi il numero in posizione [2][9]");
scanf("%d", &a);
A[2][9]=a;
//terza fila
printf("Dimmi il numero in posizione [3][1]");
scanf("%d", &a);
A[3][1]=a;
printf("Dimmi il numero in posizione [3][2]");
scanf("%d", &a);
A[3][2]=a;
printf("Dimmi il numero in posizione [3][3]");
scanf("%d", &a);
A[3][3]=a;
printf("Dimmi il numero in posizione [3][4]");
scanf("%d", &a);
A[3][4]=a;
printf("Dimmi il numero in posizione [3][5]");
scanf("%d", &a);
A[3][5]=a;
printf("Dimmi il numero in posizione [3][6]");
scanf("%d", &a);
A[3][6]=a;
printf("Dimmi il numero in posizione [3][7]");
scanf("%d", &a);
A[3][7]=a;
printf("Dimmi il numero in posizione [3][8]");
scanf("%d", &a);
A[3][8]=a;
printf("Dimmi il numero in posizione [3][9]");
scanf("%d", &a);
A[3][9]=a;
//quarta fila
printf("Dimmi il numero in posizione [4][1]");
scanf("%d", &a);
A[4][1]=a;
printf("Dimmi il numero in posizione [4][2]");
scanf("%d", &a);
A[4][2]=a;
printf("Dimmi il numero in posizione [4][3]");
scanf("%d", &a);
A[4][3]=a;
printf("Dimmi il numero in posizione [4][4]");
scanf("%d", &a);
A[4][4]=a;
printf("Dimmi il numero in posizione [4][5]");
scanf("%d", &a);
A[4][5]=a;
printf("Dimmi il numero in posizione [4][6]");
scanf("%d", &a);
A[4][6]=a;
printf("Dimmi il numero in posizione [4][7]");
scanf("%d", &a);
A[4][7]=a;
printf("Dimmi il numero in posizione [4][8]");
scanf("%d", &a);
A[4][8]=a;
printf("Dimmi il numero in posizione [4][9]");
scanf("%d", &a);
A[4][9]=a;
//seconda fila
printf("Dimmi il numero in posizione [5][1]");
scanf("%d", &a);
A[5][1]=a;
printf("Dimmi il numero in posizione [5][2]");
scanf("%d", &a);
A[5][2]=a;
printf("Dimmi il numero in posizione [5][3]");
scanf("%d", &a);
A[5][3]=a;
printf("Dimmi il numero in posizione [5][4]");
scanf("%d", &a);
A[5][4]=a;
printf("Dimmi il numero in posizione [5][5]");
scanf("%d", &a);
A[5][5]=a;
printf("Dimmi il numero in posizione [5][6]");
scanf("%d", &a);
A[5][6]=a;
printf("Dimmi il numero in posizione [5][7]");
scanf("%d", &a);
A[5][7]=a;
printf("Dimmi il numero in posizione [5][8]");
scanf("%d", &a);
A[5][8]=a;
printf("Dimmi il numero in posizione [5][9]");
scanf("%d", &a);
A[5][9]=a;
//seconda fila
printf("Dimmi il numero in posizione [6][1]");
scanf("%d", &a);
A[6][1]=a;
printf("Dimmi il numero in posizione [6][2]");
scanf("%d", &a);
A[6][2]=a;
printf("Dimmi il numero in posizione [6][3]");
scanf("%d", &a);
A[6][3]=a;
printf("Dimmi il numero in posizione [6][4]");
scanf("%d", &a);
A[6][4]=a;
printf("Dimmi il numero in posizione [6][5]");
scanf("%d", &a);
A[6][5]=a;
printf("Dimmi il numero in posizione [6][6]");
scanf("%d", &a);
A[6][6]=a;
printf("Dimmi il numero in posizione [6][7]");
scanf("%d", &a);
A[6][7]=a;
printf("Dimmi il numero in posizione [6][8]");
scanf("%d", &a);
A[6][8]=a;
printf("Dimmi il numero in posizione [6][9]");
scanf("%d", &a);
A[6][9]=a;
//settima fila
printf("Dimmi il numero in posizione [7][1]");
scanf("%d", &a);
A[7][1]=a;
printf("Dimmi il numero in posizione [7][2]");
scanf("%d", &a);
A[7][2]=a;
printf("Dimmi il numero in posizione [7][3]");
scanf("%d", &a);
A[7][3]=a;
printf("Dimmi il numero in posizione [7][4]");
scanf("%d", &a);
A[7][4]=a;
printf("Dimmi il numero in posizione [7][5]");
scanf("%d", &a);
A[7][5]=a;
printf("Dimmi il numero in posizione [7][6]");
scanf("%d", &a);
A[7][6]=a;
printf("Dimmi il numero in posizione [7][7]");
scanf("%d", &a);
A[7][7]=a;
printf("Dimmi il numero in posizione [7][8]");
scanf("%d", &a);
A[7][8]=a;
printf("Dimmi il numero in posizione [7][9]");
scanf("%d", &a);
A[7][9]=a;
//ottava fila
printf("Dimmi il numero in posizione [8][1]");
scanf("%d", &a);
A[8][1]=a;
printf("Dimmi il numero in posizione [8][2]");
scanf("%d", &a);
A[8][2]=a;
printf("Dimmi il numero in posizione [8][3]");
scanf("%d", &a);
A[8][3]=a;
printf("Dimmi il numero in posizione [8][4]");
scanf("%d", &a);
A[8][4]=a;
printf("Dimmi il numero in posizione [8][5]");
scanf("%d", &a);
A[8][5]=a;
printf("Dimmi il numero in posizione [8][6]");
scanf("%d", &a);
A[8][6]=a;
printf("Dimmi il numero in posizione [8][7]");
scanf("%d", &a);
A[8][7]=a;
printf("Dimmi il numero in posizione [8][8]");
scanf("%d", &a);
A[8][8]=a;
printf("Dimmi il numero in posizione [8][9]");
scanf("%d", &a);
A[8][9]=a;
//nona fila
printf("Dimmi il numero in posizione [9][1]");
scanf("%d", &a);
A[9][1]=a;
printf("Dimmi il numero in posizione [9][2]");
scanf("%d", &a);
A[9][2]=a;
printf("Dimmi il numero in posizione [9][3]");
scanf("%d", &a);
A[9][3]=a;
printf("Dimmi il numero in posizione [9][4]");
scanf("%d", &a);
A[9][4]=a;
printf("Dimmi il numero in posizione [9][5]");
scanf("%d", &a);
A[9][5]=a;
printf("Dimmi il numero in posizione [9][6]");
scanf("%d", &a);
A[9][6]=a;
printf("Dimmi il numero in posizione [9][7]");
scanf("%d", &a);
A[9][7]=a;
printf("Dimmi il numero in posizione [9][8]");
scanf("%d", &a);
A[9][8]=a;
printf("Dimmi il numero in posizione [9][9]");
scanf("%d", &a);
A[9][9]=a;
for(i=1; i<10; i++)
for(j=1; j<10; j++)
{
if(A[j]==0)
{
for(A[j]=1; A[j]<10; A[j]++)
{
if(A[1][1]!=A[1][2]!=A[1][3]!=A[1][4]!=A[1][5]!=A[1][6]!=A[1][7]!=A[1][8]!=A[1][9] && A[1][1]!=A[2][1]!=A[3][1]!=A[4][1]!=A[5][1]!=A[6][1]!=A[7][1]!=A[8][1]!=A[9][1] && A[1][1]+A[1][2]+A[1][3]+A[1][4]+A[1][5]+A[1][6]+A[1][7]+A[1][8]+A[1][9]==45 && A[1][1]+A[2][1]+A[3][1]+A[4][1]+A[5][1]+A[6][1]+A[7][1]+A[8][1]+A[9][1]==45)
{
B[j]=A[j];
}
}
}
}
//prima riga
printf("La soluzione è: \n");
printf("%d \t", B[1][1] );
printf("%d \t", B[1][2] );
printf("%d \t", B[1][3] );
printf("%d \t", B[1][4] );
printf("%d \t", B[1][5] );
printf("%d \t", B[1][6] );
printf("%d \t", B[1][7] );
printf("%d \t", B[1][8] );
printf("%d \t \n", B[1][9] );
//seconda riga
printf("%d \t", B[2][1] );
printf("%d \t", B[2][2] );
printf("%d \t", B[2][3] );
printf("%d \t", B[2][4] );
printf("%d \t", B[2][5] );
printf("%d \t", B[2][6] );
printf("%d \t", B[2][7] );
printf("%d \t", B[2][8] );
printf("%d \t \n", B[2][9] );
//terza riga
printf("%d \t", B[3][1] );
printf("%d \t", B[3][2] );
printf("%d \t", B[3][3] );
printf("%d \t", B[3][4] );
printf("%d \t", B[3][5] );
printf("%d \t", B[3][6] );
printf("%d \t", B[3][7] );
printf("%d \t", B[3][8] );
printf("%d \t \n", B[3][9] );
//quarta riga
printf("%d \t", B[4][1] );
printf("%d \t", B[4][2] );
printf("%d \t", B[4][3] );
printf("%d \t", B[4][4] );
printf("%d \t", B[4][5] );
printf("%d \t", B[4][6] );
printf("%d \t", B[4][7] );
printf("%d \t", B[4][8] );
printf("%d \t \n", B[4][9] );
//quinta riga
printf("%d \t", B[5][1] );
printf("%d \t", B[5][2] );
printf("%d \t", B[5][3] );
printf("%d \t", B[5][4] );
printf("%d \t", B[5][5] );
printf("%d \t", B[5][6] );
printf("%d \t", B[5][7] ),
printf("%d \t", B[5][8] );
printf("%d \t \n", B[5][9] );
//sesta riga
printf("%d \t", B[6][1] );
printf("%d \t", B[6][2] );
printf("%d \t", B[6][3] );
printf("%d \t", B[6][4] );
printf("%d \t", B[6][5] );
printf("%d \t", B[6][6] );
printf("%d \t", B[6][7] );
printf("%d \t", B[6][8] );
printf("%d \t \n", B[6][9] );
//settima riga
printf("%d \t", B[7][1] );
printf("%d \t", B[7][2] );
printf("%d \t", B[7][3] );
printf("%d \t", B[7][4] );
printf("%d \t", B[7][5] );
printf("%d \t", B[7][6] );
printf("%d \t", B[7][7] );
printf("%d \t", B[7][8] );
printf("%d \t \n", B[7][9] );
//ottava riga
printf("%d \t", B[8][1] );
printf("%d \t", B[8][2] );
printf("%d \t", B[8][3] );
printf("%d \t", B[8][4] );
printf("%d \t", B[8][5] );
printf("%d \t", B[8][6] );
printf("%d \t", B[8][7] );
printf("%d \t", B[8][8] );
printf("%d \t \n", B[8][9] );
//nona riga
printf("%d \t", B[9][1] );
printf("%d \t", B[9][2] );
printf("%d \t", B[9][3] );
printf("%d \t", B[9][4] );
printf("%d \t", B[9][5] );
printf("%d \t", B[9][6] );
printf("%d \t", B[9][7] );
printf("%d \t", B[9][8] );
printf("%d \t \n", B[9][9] );
system("pause");
}
Tralasciando gli errori di sintassi, è sbagliato l'approccio del programma. Un sudoku si può risolvere solo in 2 modi:

Ricorsione
Iterazione

Ti consiglio di dare uno sguardo alla pagina di wikipedia:

https://en.wikipedia.org/wiki/Sudoku_solving_algorithms
 

Entra

oppure Accedi utilizzando