Bài 207: Tính tổng phần tử “cực trị” mảng Một phần tử gọi cực trị #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]); } } /* Các phần tử cực trị phần tử lớn nhỏ phần tử xung quanh */ int TinhTongCacPhanTuCucTri(int a[], int n) { int Tong = 0; for(int i = 0; i < n; i++) { if(i == && a[i] != a[i + 1]) // xét đầu { Tong += a[i]; } else if(i == n - && a[i] != a[i - 1]) // xét đuôi { Tong += a[i]; } else if((a[i] < a[i + 1] && a[i] < a[i - 1]) || (a[i] > a[i + 1] && a[i] > a[i - 1])) { Tong += a[i]; } } return Tong; } int main() { int n; int a[MAX]; nhap(a, n); xuat(a, n); int Tong = TinhTongCacPhanTuCucTri(a, n); printf("\nTong = %d", Tong); getch(); return 0; }