The My Opera forums have been replaced with forums.opera.com. Please head over there to discuss Opera's products and features
See the new ForumsYou need to be logged in to post in the forums. If you do not have an account, please sign up first.
Vòng lặp do__while
-Tiếp theo Bình xin giới thiệu cho các bạn vòng lặp do__while-Vòng lặp do … while giống như vòng lặp for, while, dùng để lặp lại một công việc nào đó khi điều kiện còn đúng.
Cú pháp:
do <Công việc> while (<Biểu thức điều kiện>)
-do__while nói Nôm na là thực hiện rồi kiểm tra sau.
Lưu đồ:
Giải thích:
- <Công việc>: được thể hiện bằng 1 câu lệnh hay 1 khối lệnh.
- Trước tiên công việc được thực hiện trước, sau đó mới kiểm tra Biểu thức điều kiện.
- Nếu điều kiện sai thì thoát khỏi lệnh do …while.
- Nếu điều kiện còn đúng thì thực hiện công việc rồi quay lại kiểm tra điều kiện tiếp.
Lưu ý:
- Lệnh do…while thực hiện công việc ít nhất 1 lần.
- Vòng lặp dừng lại khi điều kiện sai.
- Chú ý xem vòng vòng vô tận.
Ví dụ 1: Viết chương trình in từ 0 đến 100
var i:int; // gán biến
do{
trace(i); // in ra i
i++; //tăng i lên.
}while(i<=100)// điều kiện i <100, khi đến 101 thì điều kiện không đúng sẽ thoát khỏi vòng lặp
Ví dụ 2: Tính tổng các số nguyên tứ 0->100
var i:int;
var tong:int;//ban đầu tổng=0
do{
tong=tong+i;//gán tổng= tổng + i
i++;
}while(i<= 100)//xét điều kiện
trace(tong);
Ví dụ 3: tính tổng các số lẽ từ 0->100
var i:int;
var tong:int;
do{
if(i%2==1) // kiểm tra có phải số lẽ không
{
tong=tong+i; // gán tổng
}
i++;//
}while(i<=100); // kiểm tra điều kiện
trace(tong);
ví dụ 4: Xem 1 số có phải là số nguyên tố hay không.
/*
i phải gán bằng 2 vì để mặt định bằng 0 khi đó nó sẽ có i bằng 1 ma bẳng 1 thì dẫn đến sẽ bị chia hết => flag=false.
*/
var i:int=2;
var so:int = 13; // thay 12 cchang hạn
var flag:Boolean;
flag=true;
trace("Cờ ban đầu: flag=" + flag);
trace("Số cần kiểm tra là : " + so);
do{
if(so%i==0)
{
flag=false; //Nếu xuất hiện 1 số chia hết cho i (hiện tại) thi đánh cờ bằng false
break; // sau khi đánh cờ rồi thoát khỏi vòng lặp
}
i++;
}while(i<so)// kiểm tra i có nhỏ hơn số hay không
trace("Cờ sau khi kiểm tra: flag=" + flag);
if(flag==true)
{
trace( "Vậy " +so + " Là số nguyên tố");
}else{
trace("Vậy " +so + " Không phải là số nguyên tố");
}
Tải fiel soucre tại đây: http://www.mediafire.com/?dfslygzeofmqiy8
Như trong dự kiến mình sẽ giới thiệu vòng lặp for in, for each. Nhưng do chưa học mảng , các mục tập hợp nên không giới thiệu khi nào học đến sẽ dùng. Nên dự kiến sẽ giới thiệu về Hàm (function), mảng(Array) cho các bạn, mong các bạn ủng hộ.