Sands,или кто-нибудь еще помогите плизз
у меня вот есть,но это не совсем то...мне бы надо...чтоб есть допустим исходная матрица
2 4
5 1
он красным цветом выделяет допустим 1
жмем ентер он ниже выводит массив 1
затем красным выделяем, 2
ентер..и ниже....
1 2
и тд со всеми элементами
пока не будет
1 2
4 5
вот мой код,спасите
#include <stdio.h>
#include <conio.h>
#define gor 2
#define ver 2
typedef int bool;
const true = 1, false = 0;
int mas[gor][ver],i,j,ii,jj,len,mini,minj,temp,tmp;
bool is;
int k,n=0;
void outitem(short int x, short int y, char* text) {
gotoxy(x,y);
textcolor (22);
cprintf("%s", text);
}
void write(int i) {
outitem((i)*4+1,1, "T===");
outitem((i)*4+1,gor*2+1 ,"ª===");
outitem(1,(i+1)*2-1, "ª");
outitem(1,(i+1)*2, "ª");
outitem(gor*4+1,(i+1)*2-1, "ª");
outitem(gor*4+1,(i+1)*2, "ª");
outitem(i*4+1,gor*2, "ª");
outitem(2,i*2+1, "===");
}
void vivod(short int x, short int y) {
gotoxy(x,y);
textcolor (15);
}
int main() {
clrscr();
outitem(1,2, "ª");
outitem(gor*4+1,2, "ª");
outitem(1,1, "a===");
outitem(gor*4+1,1, "¼");
outitem(1,gor*2+1, "L===");
outitem(gor*4+1,gor*2+1, "-");
for(i=1;i<gor;i++)
{
write(i);
}
for(i=1;i<gor;i++)
for(j=1;j<gor;j++)
{
outitem((i)*4+1,j*2+ 1, "T===");
outitem((i)*4+1,j*2, "ª");
}
//////////////zapolnenie tablici
for(i=0;i<gor;i++)
{
for(j=0;j<ver;j++)
{ gotoxy(2+4*k,2+2*n);
scanf("%3d",&mas[i][j]);
k++;
}
k=0;
n++;
}
//////// vivod massiva
vivod(40,2);
printf("Icxodnij massiv");
vivod(40,2);
printf("Icxodnij massiv");
vivod(40,8);
for(i=0;i<gor;i++)
{
vivod(40,3+k);
for(j=0;j<ver;j++)
{
cprintf("%3d",mas[i][j]);
}
printf("\n");
k++;
}
is = true;
k = 0;
while(is)
{
is = false;
for (i = 0; i < ver; i++)
{
for(j = 0; j < gor; j++)
if ( mas[i][j] < mas[i][j-1] )
{
gotoxy(40 + 3*j,3 + i);
sleep(1);
textcolor(10);
cprintf("%3d",mas[i][j]);
temp = mas[i][j];
mas[i][j] = mas[i][j-1];
mas[i][j-1] = temp;
gotoxy(40 + 3*j,3 + i);
textcolor(15);
cprintf("%3d",mas[i][j]);
if(j>0)
{
gotoxy(40 + 3*(j-1),3 + i);
sleep(1);
textcolor(12);
cprintf("%3d",mas[i][j-1]);
}
else
{
gotoxy(40 + 3*j,3 + i - 1);
sleep(1);
textcolor(12);
cprintf("%3d",mas[i][j-1]);
}
// gotoxy(40 + 3*(j-1),3 + i);
is = true;
}
}
}
/*k = 0;
for(i=0;i<gor;i++)
{
vivod(40,3+k);
for(j=0;j<ver;j++)
{
cprintf("%3d",mas[i][j]);
}
printf("\n");
k++;
} */
getch();
}