[Số học] – Thuật toán tính tổng một dãy số

Thuật toán tính tổng một dãy số rất hay gặp trong thực tế, đây cũng là bài toán đầu tiên bạn thường gặp khi làm quen với thuật toán.

Yêu cầu

Viết chương trình nhập vào một số n và tính tổng của các số từ 1..n.

Phân tích tìm cách giải

  • Đầu vào: cần nhập giá trị cho n, khởi tạo biến tổng bằng 0
  • Đầu ra: Tính tổng các giá trị

Các bước thực hiện:

Nhập giá trị cho biến n
Khởi tạo biến tổng sum=0
Kiểm tra n
Nếu n <=0
     Thông báo nhập lại giá trị lớn hơn 0
Nếu n >0
     Lặp biến i chạy từ 1 đến n
         Cộng i vào tổng sum=sum +i
     Kết thúc vòng lặp in biến tổng.

Cách biểu diễn thuật toán tính tổng một dãy số

Trong trường hợp này, tôi sử dụng ngôn ngữ giả.

Declare int n, i, sum=0

Input n

If n<0 then

    Print ‘Lỗi, n phải lớn hơn 0. Vui lòng nhập lại’

Else

    Loop i=1 to n

        Sum=sum+i

    Print sum

Bạn có thể download đoạn chương trình bằng Java ở đây.

Kỹ thuật Dry Run

Khi bạn sử dụng thuật toán, nếu bạn không chắc chắn thuật toán của bạn đúng. Bạn có thể sử dụng kỹ thuật Dry Run để kiểm tra.

Để áp dụng kỹ thuật này, bạn lập một bảng các biến quan trọng của chương trình và cập nhật giá trị của nó qua từng bước, bạn sẽ hiểu cách thức một chương trình hoạt động.

Ví dụ bài toán trên khi ta nhập n=10, đáp án sẽ là sum=55.

Bạn sử dụng kỹ thuật Dry Run để kiểm tra như sau:

Dry Run

Kỹ thuật này cực kỳ đơn giản nhưng rất lợi hại, nó sẽ giúp bạn dễ dàng hiểu được cách làm việc của các vòng lặp hoặc các chương trình phức tạp sau này.

Bài tiếp: Thuật toán về dãy số Fibonacci

Bài trước: Các thuật toán về số học

Đối tác tuyển dụng