BluePink BluePink
XHost
Gazduire site-uri web nelimitata ca spatiu si trafic lunar la doar 15 eur / an. Inregistrare domenii .ro .com .net .org .info .biz .com.ro .org.ro la preturi preferentiale. Pentru oferta detaliata accesati site-ul BluePink

Program C++

#include<iostream.h>;
int sol[100] [2],l[10 [10], m,n,i,j,lin,col;;
int vizitat(int k, int lin, int col)
{
int v=o;
for(i=1;i<=k;i++)
if (sol[i][0]==lin && sol[i][1]==col)
v=1;
return v;
}
void tipar(int k, int lin, int col)
{
cout<<" solutie"<<endl;
for(i=1;i<=k-1;i++)
cout<<sol[i][0]<<" ";
cout<<sol[i][1]<<endl;
if (lin==0)
cout<<" iesirea prin nord ";
cout<<endl;
else
if (lin==m+1)
cout<<" iesirea prin sud ";
cout<<endl;
else
if (col==0)
cout<<" iesirea prin vest ";
cout<<endl;
else
cout<<" iesirea prin est ";
cout<<endl;
}
void back(int k, int lin, int col)
{
if (lin==0 || lin==m+1 || col==0 || col==n+1)
tipar (k,lin,col)
{
else
sol[k][0]=lin;
sol[k][1]=col;
for(i=1;i<=4;i++)
switch(i);
{
case 1:
if (l[lin][col] & 8 && ! vizitat(k, lin-1,col))
back(k+1, lin-1, col);
break;
case 2:
if (l[lin][col] & 4 && ! vizitat(k, lin,col+1))
back(k+1, lin, col+1);
break;
case 3:
if (l[lin][col] & 2 && ! vizitat(k, lin+1,col))
back(k+1, lin+1, col);
break;
case 4:
if (l[lin][col] & 1 && ! vizitat(k, lin1,col-1)))
back(k+1, lin, col-1);
break;
}
}
}
main()
{
cout<<"M="; cin>>m;
cout<<"N="; cin>>n;
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
cout<<"l["<<i<<"" , "<<j<<"]=";
cin>>l[i][j];
}
cout<<"linie=";
cin>>lin;
cout<<"Coloana=";
cin>>col;
back(1,lin,col);
}