PDA

View Full Version : سوال: خطا در برنامه شیفت یک ماتریس دایره ای



Microprogammer
جمعه 08 خرداد 1388, 23:34 عصر
این برنامه شیفت یک ماتریس دایره ای است ولی error داره یکی کمکم کنه
3 2 1
4 9 8
5 6 7
بعد از پردازش برنامه
2 1 9
3 8 7
4 5 6


__________________________________________


#include <iostream.h>
#include <conio.h>
void Move (int,int,int *,int,int,int,int);
void main()
{
clrscr(); //Cleaning Screen
int Mat[3][3],i,j,Firstrow=0,Lastrow=2,Firstcolum=0,Lastcolum=2 ; //Defining Angry
for(i=0;i<3;i++) //"For" for ROW
{
for(j=0;j<3;j++) //"For" for COLUM
{
cout<<"Please Enter The Limb"<<"["<<i<<"] ["<<j<<":"; //Giving Matris
cin>>Mat[i][j];
cout<<Mat[i][j];
}
cout<<"\n";
}
cout<<"\n\n\n\n\n";
for(i=0;i<3;i++)
for(j=0;j<3;j++)
Move(i,j,Mat,Firstrow,Lastrow,Firstcolum,Lastcolum ); //Calling Subject
for(i=0;i<3;i++) //"For" for ROW
{
for(j=0;j<3;j++) //"For" for COLUM
cout<<Mat[i][j]; //Reciving Proccecing Data
cout<<"\n";
}
getch();
}
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
void Move(int x,int y,int *Mat,int Firstrow,int Lastrow,int Firstcolum,int Lastcolum)
{
if(x==Firstrow)
y++;
if(x==Lastrow)
y--;
if(y==Firstcolum)
x--;
if(y==Lastcolum)
x++;
else
Move(int i,int j,*Mat,Firstrow+1,Lastrow-1,Firstcolum+1,Lastcolum-1);
}
از تمامی عزیزان که بنده را راهنمایی کردند تشکر می کنم.

tdkhakpur
شنبه 09 خرداد 1388, 11:29 صبح
سلام
جایی رو که برات اشکال میگیره رو بگید.
ولی فکر کنم ادر این خط اشکال دارید.


cout<<"Please Enter The Limb"<<"["<<i<<"] ["<<j<<":"; //Giving Matris

اگه اشتباه نکرده باشم به این شکل اصلاح کنید.


cout<<"Please Enter The Limb"<<"\["<<i<<"\] \["<<j<<"\:"; //Giving Matris