Cú pháp 1 Fortodo Y nghĩa: do! "#$ %&'()*%+! Cú pháp 2: ForDownTodo nghĩa: ",-% .,'/ +0123 %&'()4%+! 5 6 !"#$%& 6 ' ( )!*"#$%& 6 +,,- ./ +,,0. 12131213"(!"#$% 40"#$%& 7 !"#$ % !&'()'*+%(,-. /01 $ i,s,n: integer; 23 write(‘Nhap n = ’); readln(n); 4 i:=1 n 4 odd(i) 3 s:=s+i; writeln(‘s = ’, s:4); readln; 5 8 V d 2. V d 2. Vi!t chương tr%nh tnh Vi!t chương tr%nh tnh 6$1*7 $89/:37 93$7 23 ;3<= >?@73$<@7 9>; 9> A<BCD @7 ;3<=E$ 9?8 99F@7 3$7 5 9 : 6$1*G/7 $89/:37 93$7 23 ;3<= >?@73$<@7 9> 9> A<BC<HD@D @7 ;3<=E$ 9?8 99F@7 3$7 5 I/JK+L $9 I/JK+L $9 5;5 5;58 5;7: 5;8< 5;9= 5;:5 5;>8 5;<: 5;?< 7;7 7;5: 7;7? 7;85 7;99 7;:< 7;>5 7;<58 7;?5> 8;8 8;5< 8;75 8;8: 8;95= 8;:58 8;>5< 8;<75 8;?7: 9;9 9;5= 9;79 9;85= 9;959 9;:7= 9;>79 9;<8= 9;?89 :;: :;55 :;7< :;858 :;97= :;:7: :;>85 :;<8< :;?98 >;> >;58 >;75 >;85< >;979 >;:85 >;>8? >;<9: >;?:7 <;< <;5: <;758 <;875 <;98= <;:8< <;>9: <;<:8 <;?>5 ?;? ?;5< ?;75> ?;87: ?;989 ?;:98 ?;>:7 ?;<>5 ?;?< > *$8M9/:37 /3 ;3<=2$9?@ 9> /3 M9> ;3<==988?N?8M8?>=8CM9@7 ;37 37 3$7 3 !405& 670891:;*< *= < OP;3 OP;3 %% while<biu thc boolean> do begin <công vic>; end >? 6 @ABC'1D'1D'E<công vic> <biu thc logic> #FTrue! 6 G0,H#'1Dwhile,<biu thc logic> FFalse. ? 6 @+A!.13 ITrue<công vic>. IFalse0#'1Dwhile. F-#'1D,J()'0! 6 #7+" .# 125 & 6 ; + " . B C D E 8 7 %F$!GHG9I 6 6! + " . %F B + A !. ! * "#$%& 6 B 13 40 13 $% + A !. 12 J - K !$ F L ) & = [...]... tính sẽ lặp đi lặp lại nếu còn có giá trị True - Thoát khỏi vòng lặp Repeat khi có while True giá trị False 15 Chú ý - - - được thực hiện trước, kiểm tra điều kiện sau được thực hiện ít nhất 1 lần Khi điều kiện còn sai còn được thực hiện Khi điều kiện đúng thoát khỏi vòng lặp Các lệnh... được thực hiện Khi điều kiện đúng thoát khỏi vòng lặp Các lệnh không cần đặt giữa begin… end; Trong phải có lệnh thay đổi giá trị thoát khỏi vòng lặp Có thể biết trước số bước lặp nếu lệnh thay đổi giá trị được gán mỗi lần tăng hoặc giảm 1 giá trị xác định 16 Program Dan_so; Uses crt; var ds: Real; i: Integer; Begin Clrscr; ds:=0.75e8; i:=0;