Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 11 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
11
Dung lượng
57 KB
Nội dung
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++) { temp[i] = a[d1][i]; a[d1][i] = a[d2][i]; a[d2][i] = temp[i]; } } HOÁN VỊ HAI CỘT MA TRẬN void HoanVi2Cot(int a[][100],int dong,int c1, int c2) { int temp[100]; 1 for (int i=0; i<dong; i++) { temp[i] = a[i][c1]; a[i][c1] = a[i][c2]; a[i][c2] = temp[i]; } } ĐẾM CHỮ SỐ TRONG MA TRẬN SỐ NGUYÊN int DemTungSo(int n) { int dem = 1; n = abs(n); while (n>=10) { n= n/10; dem++; } return dem; } 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 { DonVi = n%10; b[DonVi]++; n=n/10; } while (n>0); } void GiaTriCanTim(int a[][100], int cot, int dong) { int b[10] = {0}; for (int i=0; i<dong;i++) { for (int j=0; j<cot; j++) { ChuSo(a[i][j],b); } } int ChuSoNhieuNhat = 0; for (i=1; i<10; i++) { if (b[ChuSoNhieuNhat] < b[i]) { ChuSoNhieuNhat = i; } } printf("Cac chu so xuat hien nhieu nhat: "); for (i=0; i<10; i++) { if (b[ChuSoNhieuNhat] == b[i]) { printf("%4d", i); } } } 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]) { printf("\nDong %d co tong ptu lon nhat la %d", i,Max); } } } LIỆT KÊ CỘT CÓ TỔNG NHỎ NHẤT void LietKe(int a[][100], int cot, int dong) { int b[100] = {0}; for (int i=0; i<cot; i++) { for (int j=0; j<dong; j++) { b[i]+=a[j][i]; } } //Tong Min int Min = b[0]; for (i=1; i<cot; i++) { Min = (Min<b[i])?Min:b[i]; } //Liet ke Tong Min for (i = 0; i< cot ;i++) { if (Min == b[i]) { printf("\nCot %d co tong ptu nho nhat la %d", i,Min); } } } 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; GiaTri = a[i][j]; Dem = 0; } } } } return GiaTri; } TÌM MAX TRONG MA TRẬN int GiaTriCanTim(int a[][100], int cot, int dong) { int Max = a[0][0]; for (int i=0; i<dong; i++) { for(int j=0; j<cot; j++) { Max = (Max>a[i][j])?Max:a[i][j]; } } return Max; } TÌM SỐ CHẴN ĐẦU TIÊN TRONG MA TRẬN int GiaTriCanTim(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]%2==0) { 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++) { for (int j=0; j<cot; j++) { if (a[i][j]<0) { AmMax = (AmMax>a[i][j])?AmMax:a[i][j]; } } } return AmMax; } TÌM GIÁ TRỊ LỚN NHẤT THỨ HAI TRONG MA TRẬN int GiaTriCanTim(int a[][100], int cot, int dong) { int Max=a[0][0]; for (int i=0; i<dong; i++) { for(int j=0; j<cot; j++) { Max = (Max>a[i][j])?Max:a[i][j]; } } int Max2 = a[0][0]; for (i=0; i<dong; i++) { 6 for(int j=0; j<cot; j++) { if (Max>Max2 && a[i][j]!=Max && Max2<a[i][j]) { 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("\nCot %d: ",i) ; printf("Gia tri min %d",Min); } } LIỆT KÊ DÒNG CÓ CHỨA MAX int GiaTriMax(int a[][100], int cot, int dong) { int Max = a[0][0]; for (int i=0; i<dong; i++) { for(int j=0; j<cot; j++) { Max = (Max>a[i][j])?Max:a[i][j]; } } return Max; } void LietKe(int a[][100], int cot, int dong) 7 { int Max = GiaTriMax(a,cot,dong); for (int i=0; i<dong;i++) { for (int j=0; j<cot; j++) { if (a[i][j]==Max) { printf("\nDong [%d] chua max: ", i); for (j=0; j<cot; j++) { 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 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]; 8 a[x][k] = temp; } } } } SẮP XẾP CÁC PHẦN TỬ TRÊN MỘT CỘT TĂNG 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; } } } } 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) { int flag = 0; for (int i=0; i<dong; i++) { 9 for (int j=0;j<cot;j++) { if (a[i][j]%2!=0) { flag=1; break; } } } return flag; } XÓA MỘT DÒNG TRONG MA TRẬN void Xoa(int a[][100], int cot, int &dong) { printf("Nhap chi so dong ban muon xoa"); int x,i,j; do { scanf("%d", &x); } while ( x<0 || x>=dong); for ( i=x;i<dong-1;i++ ) { for (j=0; j<cot;j++) { a[i][j] = a[i+1][j]; } } 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 . HoanVi2Cot(int a[][100],int dong,int c1 , int c2 ) { int temp[100]; 1 for (int i=0; i<dong; i++) { temp[i] = a[i] [c1 ]; a[i] [c1 ] = a[i] [c2 ]; a[i] [c2 ] = temp[i]; } } ĐẾM CHỮ SỐ TRONG MA TRẬN SỐ NGUYÊN int. 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. i<10; i++) { if (b[ChuSoNhieuNhat] < b[i]) { ChuSoNhieuNhat = i; } } printf("Cac chu so xuat hien nhieu nhat: "); for (i=0; i<10; i++) { if (b[ChuSoNhieuNhat] == b[i])