Hôm nay mình sẽ cùng các bạn giải quyết yêu cầu: Nhập vào một ma trận và kiểm tra xem hàng nào của ma trận là cấp số cộng, cấp số nhân.
Mạn phép mô tả 1 chút về thuật toán: Ta sẽ dùng 2 vòng lặp để kiểm tra từng cặp 2 phần tử trong từng hàng.
Nhưng trước khi kiểm tra ta cần tính công sai và công bội của từng hàng. Công sai và công bội mình sẽ tính dựa vào 2 phần tử đầu của mỗi hàng:
Công sai = Phần tử 2 – Phần tử 1
Công bội = Phần tử 2 / Phần tử 1
Sau khi có công sai và công bội ta duyệt để kiểm tra từng cặp phần tử liền nhau. Nếu phần tử trước mà cộng (nhân) với công sai (công bội) mà đúng bằng phần tử sau liền kề thì đúng và kiểm tra đến cuối hàng nếu vẫn đúng thì kết luận hàng đó là hàng cấp số cộng (cấp số nhân) và chuyển qua hàng sau tiếp tục công việc. Còn nếu ở bất kỳ cặp phần tử kiểm tra nào không đúng thì báo ngay là không phải hàng cấp số cộng (cấp số nhân) dừng việc kiểm tra ở hàng đó và nhảy xuống kiểm tra hàng dưới liền.
Bạn có thể tải mã nguồn tại đây: https://www.box.com/s/6x9qkkl1i1osvnx9y985
Huỳnh Mai Anh Kiệt