Bài 172: Cho mảng chiều số nguyên Hãy viết hàm tìm bội chung nhỏ tất phần tử mảng #include #include #include #define MAX 100 void nhap (int a[], int &n) { { printf("\nNhap so phan tu: "); scanf("%d", &n); if(n MAX) { printf("\nSo phan tu khong hop le Xin kiem tra lai !"); } }while(n MAX); for(int i = 0; i < n; i++) { printf("\nNhap a[%d]: ", i); scanf("%d", &a[i]); } } void xuat(int a[], int n) { for(int i = 0; i < n; i++) { printf("%4d", a[i]); } } int TimSoLonNhat(int a[], int n) { int max = a[0]; for(int i = 1; i < n; i++) { if(a[i] > max) { max = a[i]; } } return max; } /* Tìm BCNN vị trí i Khởi tạo BCNN = i = 0: % == -> BCNN = //max = (max>A[i]) ? max : A[i]; i = 1: % != -> BCNN = + = 6, i = -1 sau i++ i lúc lại reset lại từ BCNN BCNN = i = 0: % == -> BCNN = i = 1: % == -> BCNN = i = 2: % == -> BCNN = */ int TimBoiChungNhoNhat(int a[], int n) { int BoiSo = TimSoLonNhat(a, n); for(int i = 0; i < n; i++) { if(BoiSo % a[i] != 0) { BoiSo += TimSoLonNhat(a, n); i = -1; } } return BoiSo; } int main() { int n; // reset lại i int a[MAX]; nhap(a, n); xuat(a, n); int Kq = TimBoiChungNhoNhat(a, n); printf("\nBoi chung nho nhat cua mang la %d", Kq); getch(); return 0; }