Liệt kê các dòng có nhiều số hoàn thiện nhất

5 651 2
Liệt kê các dòng có nhiều số hoàn thiện nhất

Đang tải... (xem toàn văn)

Thông tin tài liệu

Bài 389: Liệt kê dòng có nhiều số hoàn thiện #include #include #include #define MAX 100 void NhapMang(int a[][MAX], int &dong, int &cot) { //Nhập số dòng { printf("\nNhap vao so dong: "); // Cách tà đạo: scanf("dong =%d",&dong); // Lúc nhập phải viết thêm scanf("%d",&dong); if(dong < || dong > MAX) { printf("\nSo dong khong hop le Xin kiem tra lai!"); } }while(dong < || dong > MAX); //Nhập số cột { chữ ( dong = ) khung console printf("\nNhap vao so cot: "); scanf("%d",&cot); if(cot < || cot > MAX) { printf("\nSo cot khong hop le Xin kiem tra lai!"); } }while(cot < || cot > MAX); for(int i = 0; i < dong; i++) { for(int j = 0; j < cot; j++) { printf("\nNhap a[%d][%d] = ", i, j); scanf("%d", &a[i][j]); } } } void XuatMang(int a[][MAX], int dong, int cot) { for(int i = 0; i < dong; i++) { for(int j = 0; j < cot; j++) { printf("%4d", a[i][j]); } printf("\n\n"); } } int KiemTraHoanThien(int n) { int tong = 0; for(int i = 1; i < n; i++) { if(n % i == 0) { tong += i; } } if(tong == n) { return 1; } return 0; } void LietKeCacDongCoNhieuSoHoanThienNhat(int a[][MAX], int dong, int cot) { int dem[MAX] = {0}; for(int i = 0; i < dong; i++) { for(int j = 0; j < cot; j++) { if(KiemTraHoanThien(a[i][j]) == 1) { dem[i]++; } } } int Max = dem[0]; for(int i = 1; i < dong; i++) { Max = (Max > dem[i]) ? Max : dem[i]; } for(int i = 0; i < dong; i++) { if(Max == dem[i]) { printf("\nDong %d co so hoan thien nhieu nhat: %d so hoan thien", i, Max); } } } int main() { int a[MAX][MAX], dong, cot; NhapMang(a, dong, cot); XuatMang(a, dong, cot); LietKeCacDongCoNhieuSoHoanThienNhat(a, dong, cot); getch(); return 0; }

Ngày đăng: 22/10/2016, 20:04

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan