Nhiệm vụ
Tìm tổng của tất cả các số nguyên trong khoảng từ 100 đến 500.
Hãy viết chương trình giải bài toán này mà không sử dụng công thức. Nếu chúng ta chỉ viết kết quả của phép cộng vào biến
s
, chẳng hạn như
\(s=100+101+102+103+...+500\),
chúng ta sẽ dành nhiều thời gian cho việc ghi âm, vì máy tính sẽ không hiểu cách sử dụng dấu chấm lửng trong một biểu thức số học và chúng ta sẽ phải viết tất cả các số từ 100 đến 500. Và giá trị của một chương trình như vậy sẽ là không đáng kể. Đặc biệt nếu chúng ta muốn thay đổi số của mình và lấy một phạm vi khác.
Chúng ta nên làm gì?
Nếu chúng tôi chú ý đến mục ở trên, thì chúng tôi liên tục sử dụng phép cộng "
+
".
Bạn có thể thử thêm dần các số vào biến
s
. Ví dụ, sử dụng ký hiệu này
s = s + i
.
Những gì chúng tôi đã làm:
1) ở bên phải, chúng tôi đặt biểu thức s + i
, , nghĩa là chúng tôi lấy giá trị của biến s
và thêm giá trị của biến đối với nó i
;
2) ở bên trái, chúng tôi đặt tên của biến s
, nghĩa là toàn bộ kết quả tính toán bên phải sẽ được lưu trữ trong cùng một biến s
, vì vậy chúng ta sẽ thay đổi giá trị của biến s
.
Nó chỉ còn lại để thay đổi giá trị của biến i
trong phạm vi mong muốn. Điều này có thể được thực hiện với vòng lặp for
.
Các số từ 100 đến 500 nằm trong phạm vi của chúng ta sẽ lần lượt đi vào biến
i
.
Ví dụ
// QUAN TRỌNG! Trước tiên, bạn cần đặt lại biến s,
// để ở bước đầu tiên, số 100 được thêm vào số 0,
// chứ không phải những gì trong bộ nhớ!
s=0;
for ( i = 100; i <= 500; i++) // tiêu đề vòng lặp trong đó biến i
s = s + i; // thay đổi giá trị của nó từ 100 thành 500 với gia số 1,
// trong thân vòng lặp dần dần đến biến s,
// thêm giá trị của biến thay đổi i,
// và kết quả được lưu vào biến s
Giải pháp này rất giống với cách tính tổng theo các hành động:
\(s = 0 + 100 = 100, \\ s = 100 + 101 = 201, \\ s = 201 + 102 = 303 \\ ... \)