Bonsoir
Le turbo pascal est un language de progammation comme le C++,le visual Basic etc...
Puisque tu ne le connais pas je ne crois pas que tu pourra comprendre quelque chose mais je le poste quand même puisque tu me le demande

le voilà:
uses wincrt;
type t=array[1..9,1..9] of integer;
r=array[1..9,1..9,1..9] of integer;
function veri(x:integer;s:t;i,j:integer):boolean;var p,q,k,n,v:integer;b:boolean;
begin v:=1;if x<>0 then begin
for p:=1 to 9 do if ((p<>i)and(s[p,j]=x))or((p<>j)and(s[i,p]=x))then begin v:=0;p:=9;end;
if v=1 then begin n:=3*((i-1) div 3)+1;k:=3*((j-1) div 3)+1;
for p:=n to n+2 do for q:=k to k+2 do if((p<>i) or(q<>j))and(s[p,q]=x)then begin v:=0;p:=n+2;q:=k+2;end;end;
end;if v=1 then veri:=true else veri:=false;;end;
var q,n,i,k,j,m,p,tr1,f,v,g1,g2:integer;s,max,pos:t;tr:r;b,b1:boolean;
begin
writeln('remplissez le tableau (si une case est vide appuyez sur 0)');n:=1;
for i:=1 to 9 do for j:=1 to 9 do begin s[i,j]:=0;pos[i,j]:=0;end;
for i:=1 to 9 do for j:=1 to 9 do begin repeat gotoxy(3*i-2,j+1);readln(p);until p in [0..9];s[i,j]:=p;
if veri(p,s,i,j)=false then begin i:=9;j:=9;n:=0;gotoxy(1,12);writeln('le sudoku est faux !!');end
else begin max[i,j]:=1;tr[i,j,1]:=p;end;end;
if n=1 then begin for i:=1 to 9 do for j:=1 to 9 do if s[i,j]=0 then begin max[i,j]:=0;for p:=1 to 9 do begin
if veri(p,s,i,j)then begin inc(max[i,j]);tr[i,j,max[i,j]]:=p;end;end;if max[i,j]=1 then s[i,j]:=tr[i,j,1]
else if max[i,j]=0 then begin gotoxy(1,12);write('le sudoku est faux');n:=0;end;end;end;
if n=1 then begin i:=0;f:=0;
repeat q:=1;if f>1 then begin gotoxy(1,15);write(f);end;gotoxy(1,17);readln(v);n:=f;inc(f);if(f>1)then i:=g2-1 else n:=f;
repeat if f>n then begin n:=f;j:=g1-1;end else j:=0;i:=i+1;;repeat j:=j+1;m:=max[i,j];if m>1 then begin p:=pos[i,j];
if p=m then b:=false else repeat inc(p);tr1:=tr[i,j,p];b:=(veri(tr1,s,i,j));until (b or(p=m));
if b then begin s[i,j]:=tr1;pos[i,j]:=p;g1:=j;g2:=i;end
else begin s[i,j]:=0;pos[i,j]:=0;if(i>1)or(j>1)then begin repeat if j=1 then begin i:=i-1;j:=10;end;
repeat j:=j-1;p:=pos[i,j];m:=max[i,j];b1:=((p<m)and(m>1));
if p=m then begin s[i,j]:=0;pos[i,j]:=0;end;until((j=1)or b1);until(b1 or(i=1));
if b1 then begin if j>1 then j:=j-1 else begin i:=i-1;j:=9 end;end
else begin q:=0;i:=9;j:=9;gotoxy(1,12);if f=1 then writeln('le sudoku est faux ')
else writeln('y a plus de solutions');end;end else q:=0;
end;end;
until(j=9)or(q=0);until(i=9)or(q=0);
if q=1 then for i:=1 to 9 do for j:=1 to 9 do begin gotoxy(3*i+30,j+1);writeln(s[i,j]);end;
until(q=0);end;end.
Tu n'a qu'à telecharger le turbo pascal l'installer puis tu fais copier coller au programme si dessus et enfin tu apuie sur Ctrl+F9.Une fenêtre d'exécution appaîtra alors tu donnes les valeurs données par le sudoku une par une en appuyant sur entrée aprés chaque valeur(l'affichage sera comme mon poste de 10/03/2006 à 02:00)lorsque une case est vide tu appuies sur 0.
une fois le tableau est remplie tu tape n'importe quel numéro puis entrée à chaque fois que tu veux voir une nouvelle solution.
Bien évidament s'il n ya plus de solution le programme te le dira.