Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
SpiralMatrix
// cau8_c3_b.cpp : Defines the entry point for the console application. #include<iostream> #include<iomanip> #define max 100 using namespace std; void nhap(int a[],int &n)// nhap mang goc { /*cout<<"Nhap vao cap cua ma tran: ";cin>>n; int *p=(int *)a,k=n*n; for(int i=0;i<k;i++) { cout<<"a["<<i/n<<"]["<<i%n<<"]= ";cin>>*(p+i); }*/ n = 4; int b [16] = { 12, 15, 3, 5, 21, 1, 9, 11, 7, 6, 34, 8, 31, 2, 4, 23 }; for(int i=0;i<16;i++) { a[i]= b[i]; } } void xuat(int a[],int n) //xuat mang goc hoac phu { cout<<endl; int *p=(int *)a; for(int i=0;i<n;i++) for(int j=0;j<n;j++) { cout<<setw(3)<<*(p+i*n+j);if(j%n==n-1) cout<<endl; } } void sx(int a[],int n)// sap xap mang phu de gan vao mang goc { int *p=(int *)a,k=n*n; for(int i=0;i<k-1;i++) for(int j=i+1;j<k;j++) if(*(p+i)>*(p+j)) { int tam; tam=*(p+i); *(p+i)=*(p+j); *(p+j)=tam; } } void cpy(int a[],int b[],int n)//tao ra mang phu de sap xep cac gia tri tang { int *p=(int *)a; int *q=(int *)b,k=n*n; for(int i=0;i<k;i++) *(q+i)=*(p+i); } void xoanoc(int a[],int b[],int n)//duyet mang nhap vao theo duong xoan oc va lan luot gan gia tri cua mang phu da sap xep cho mang goc { int *p=(int *)a; int *q=(int *)b; int tren=0,duoi=n-1,trai=0,phai=n-1; int dem=0,cs=0,k=n*n; while(cs<k)//trong khi chua di het mang phu { switch(dem)//di chuyen lan luot 4 phia cua ma tran goc { case 0: for(int j=trai;j<=phai;j++)//di tu trai(ben ten) sang phai(ben tren) { *(q+tren*n+j)=*(p+cs);//gan gia tri cua mang phu da sap xep cho mang goc ++cs;//phan tu tiep theo cua mang phu } tren++;//dat lai dia chi tren dem=1;break;//dat dem bang 1 de duyet tu tren(ben phai) ->duoi(ben phai) case 1: for(int i=tren;i<=duoi;i++)//di tu tren(pai) xuong duoi(phai) { *(q+i*n+phai)=*(p+cs);//tuong tu.... ++cs; } phai--; dem=2;break; case 2: for(int j=phai;j>=trai;j--) { *(q+duoi*n+j)=*(p+cs); ++cs; } duoi--; dem=3;break; case 3: for(int i=duoi;i>=tren;i--) { *(q+i*n+trai)=*(p+cs); ++cs; } trai++; dem=0;break; } } } int main() { int a[max],b[max],n; nhap(a,n); xuat(a,n); sx(a,n); cpy(a,b,n); xuat(b,n); xoanoc(a,b,n); xuat(b,n); }
run
|
edit
|
history
|
help
0
Shortest path in binary tree
check Prime
vector destruction - gcc
Big O Notation array problem
GET ALL PRIME FACTORS OF A NUMBER
HW0
Eratosfen final
HeapSort
Collatz Conjecture
threadpool02