Cách tính giá trị của các biến trong câu lệnh của for...do không theo 1 cách tính cụ thể, cũng chỉ có thể lấy ra giấy nháp và tính
Với một số bài có thể tính được giá trị:
VD: S:=0; for i:=1 to 5 do S:=S+2;
thì ta thấy S tăng thêm 2 đơn vị 5 lần `=>` S=0+5*2=10
Nhưng một số bài lại không như vậy
S:=0; for i:=1 to 5 do S:=S+i;
Ta chỉ có thể lấy S:=0+1+2+3+4+5
Và có một số bài phức tạp hơn thế nữa
S:=0; j:=0;
for i:=1 to 5 do
begin
j:=j*2+i;
S:=S+j;
end;
ta không thể tính theo 1 công thức nào được mà phải làm ra giấy:
S=0; j=0;
i=1; j=j*2+i=0*2+1=1; S=S+j=0+1=1
i=2; j=j*2+i=1*2+2=4; S=S+j=1+4=5
i=3; j=j*2+i=4*2+3=11; S=S+j=5+11=16
i=4; j=j*2+i=11*2+4=26; S=S+j=16+26=42
i=5; j=j*2+i=26*2+5=57; S=S+j=42+57=99
Như vậy ta chỉ có thể tùy trường hợp để tính, cái nào có thể không cần nháp thì tính theo công thức