TÍNH TỔNG CÁC SỐ DƯƠNG TRONG MA TRẬN
int TongSoDuong(int **a, int n, int m)
{
int s=0;
for (int i=0; i<n; i++)
{
for (int j=0; j<m; j++)
{
if (a[i][j]>0)
{
s+=a[i][j];
}
}
}
return s;
}
TÍNH TỔNG CÁC GIÁ TRỊ TRÊN MỘT DÒNG CỦA MA TRẬN
int TongDongX(int *a, int m) //chuyền a[x] , x là dòng mà bạn cần tính tổng
{
int S=0;
for (int i=0; i<m; i++)
{
S+=a[i];
}
return S;
}
HOÁN VỊ HAI DÒNG MA TRẬN
void HoanVi2Dong(int a[][100],int cot, int d1, int d2)
{
int temp[100];
for (int i=0; i<cot; i++)
int Dem(int a[][100], int dong, int cot)
{
int dem = 0;
for (int i=0;i<dong; i++)
{
for (int j=0; j<cot; j++)
{
dem += DemTungSo(a[i][j]);
}
}
return dem;
}
ĐẾM TẦN SỐ XUẤT HIỆN CỦA 1 GIÁ TRỊ X TRONG MA TRẬN
int DemGiaTriX(float a[][100], int dong, int cot, float x)
{
int dem=0;
for (int i=0;i<dong; i++)
for (int j=0; j<cot; j++)
if (a[i][j]==x)
dem++;
return dem;
}
TÌM CÁC CHỮ SỐ XUẤT HIỆN NHIỀU NHẤT TRONG MẢNG
2
void ChuSo(int n, int b[])
{
int DonVi;
n = abs(n);
do
{
}
}
LIỆT KÊ DÒNG CÓ TỔNG LỚN NHẤT
int tong(int a[], int cot)
{
int s=0;
for (int i=0; i<cot; i++)
{
s+=a[i];
}
return s;
}
void LietKe(int a[][100], int cot, int dong)
{
int b[100];
for (int i=0; i<dong; i++)
{
b[i] = tong(a[i],cot);
3
}
//Tong Max
int Max = b[0];
for (i=1; i<dong; i++)
{
Max = (Max>b[i])?Max:b[i];
}
//Liet ke Tong Max
for (i = 0; i< dong ;i++)
{
if (Max == b[i])
}
TÌM GIÁ TRỊ XUẤT HIỆN NHIỀU NHẤT
int GiaTriCanTim(int a[][100], int cot, int dong)
{
int flag[100][100] = {0};
int GiaTri , Dem = 0,Dem1=0;
for (int i=0; i<dong; i++)
{
for(int j=0; j<cot; j++)
{
if (flag[i][j]==0)
{
4
for (int k=i; k<dong; k++)
{
for (int h=0; h<cot;h++)
{
if (flag[k][h]==0)
{
if (a[i][j] == a[k][h])
{
flag[k][h] = 1;
Dem++;
}
}
}
}
if (Dem > Dem1)
{
Dem1 = Dem;
return a[i][j];
}
}
}
return -1;
}
5
TÌM GIÁ TRỊ ÂM LỚN NHẤT TRONG MA TRẬN
int AmDauTien(int a[][100], int cot, int dong)
{
for (int i=0; i<dong; i++)
{
for (int j=0; j<cot; j++)
{
if (a[i][j]<0)
{
return a[i][j];
}
}
}
return 0;
}
int GiaTriCanTim(int a[][100], int cot, int dong)
{
int AmMax = AmDauTien(a,cot,dong);
if (AmMax == 0)
{
return 0;
}
for (int i=0; i<dong;i++)
Max2 = a[i][j];
}
}
}
return Max2;
}
TÌM GIA TRỊ LỚN NHẤT TRÊN MỘT DONG
void LietKe(int a[][100], int cot, int dong)
{
for (int i=0; i<dong;i++)
{
int Max = a[i][0];
for (int j=0; j<cot; j++)
{
Max = (Max>a[i][j])?Max:a[i][j];
}
printf("\nDong %d: ",i) ;
printf("Gia tri max %d",Max);
}
}
TÌM GIÁ TRỊ NHỎ NHẤT TRÊN MỘT CỘT
void LietKe(int a[][100], int cot, int dong)
{
for (int i=0; i<cot;i++)
{
int Min = a[0][i];
for (int j=0; j<dong; j++)
{
Min = (Min<a[j][i])?Min:a[j][i];
}
printf("%4d", a[i][j]);
}
}
}
}
}
SẮP XẾP CÁC PHẦN TỬ TRÊN MỘT DÒNG TĂNG TỪ TRÁI SANG
PHẢI
void SapXep(int a[][100], int cot, int dong)
{
int x;
printf("Nhap dong muon sap xep: ");
scanf("%d",&x);
for (int j=0; j<cot-1; j++)
{
for (int k=j+1; k<cot;k++)
{
if (a[x][j]>a[x][k])
{
int temp = a[x][j];
a[x][j] = a[x][k];
a[x][k] = temp;
}
}
}
}
SẮP XẾP CÁC PHẦN TỬ TRÊN MỘT DÒNG GIẢM TỪ TRÁI SANG
PHẢI
void SapXep(int a[][100], int cot, int dong)
{
int temp = a[i][x];
a[i][x] = a[j][x];
a[j][x] = temp;
}
}
}
}
SẮP XẾP CÁC PHẦN TỬ TRÊN MỘT CỘT GIẢM DẦN TỪ TRÊN
XUỐNG DƯỚI
void SapXep(int a[][100], int cot, int dong)
{
int x;
printf("Nhap cot muon sap xep: ");
scanf("%d",&x);
for (int i=0; i<dong-1; i++)
{
for (int j=i+1; j<dong;j++)
{
if (a[i][x]<a[j][x])
{
int temp = a[i][x];
a[i][x] = a[j][x];
a[j][x] = temp;
}
}
}
}
KIỂM TRA MA TRẬN CÓ SỐ LẺ HAY KHÔNG
int Ktra(int a[][100],int dong,int cot)
{
}
dong ;
}
XOA MỘT CỘT TRONG MA TRẬN
void Xoa(int a[][100], int &cot, int dong)
{
printf("Nhap chi so cot ban muon xoa");
int x,i,j;
do
{
scanf("%d", &x);
} while ( x<0 || x>=cot);
for ( i=x;i<cot-1;i++ )
{
for (j=0; j<dong;j++)
{
a[j][i] = a[j][i+1];
}
}
cot ;
}
10
11