PHP Code:
#include "stdafx.h"
#define MAX 100
void nhapmatran( int &d, int &c, int a[][MAX],int b[])
{
int i,j,k=0;
printf("Nhap vao so dong: ");
scanf("%d",&d);
printf("Nhap vao so cot: ");
scanf("%d",&c);
for(i=0;i<d;i++)
for(j=0;j<c;j++)
{
printf("A[%d][%d]: ",i,j);
scanf("%d",&a[i][j]);
b[k]=a[i][j];//do mang 2 chieu vao mang 1 chieu
k++;
}
}
void sapxeptang(int d, int c,int b[])// sap xep mang 1 chieu tang dan
{
int i,j,t=0;
for (i=0;i<d*c;i++)
for (j=0;j<d*c-1;j++)
if (b[j]>b[j+1])
{
t=b[j];
b[j]=b[j+1];
b[j+1]=t;
}
}
void matranxoanoc(int d,int c, int a[][MAX], int b[])
{
int i,j,k=0;
///////////////////////////////
for(j=0;j<(int(d/2));j++)// int(d/2) la so vong xoan
{
for (i=j;i<(c-(j+1));i++)
{
a[j][i]=b[k];
k++;
//////////////////////////////
for (i=j;i<(d-(j+1));i++)
{
a[i][c-(j+1)]=b[k];
k++;
};
//////////////////////////////
for (i=(c-(j+1));i>j;i--)
{
a[(d-(j+1))][i]=b[k];
k++;
};
///////////////////////////////
for (i=(d-(j+1));i>j;i--);
{
a[i][j]=b[k];
k++;
printf ("gia tri k: %d",k);
printf("\n");
};
if (k==d*c)
break;
}
}
void xuatmang(int d,int c,int a[][MAX])
{
int i,j;
for(i=0;i<d;i++)
for(j=0;j<c;j++)
{
printf("%d\t",a[i][j]);
if (j==c-1)
printf("\n");
}
}
void main()
{
int d,c,a[MAX][MAX],b[10000],k=0;
nhapmatran(d,c,a,b);
sapxeptang(d,c,b);
matranxoanoc(d,c,a,b);
xuatmang(d,c,a);
}
file.png
Comment