Bài 13-Vòng lặp while trong Kotlin


bài 12 chúng ta đã nắm chắc được cách thức hoạt động của vòng lặp for, trong bài này Tui sẽ hướng dẫn các bạn cấu trúc lặp với while. Đây cũng là một trong những cấu trúc lặp khá phổ biến trong các ngôn ngữ lập trình không riêng gì Kotlin, cú pháp:

while(expression)

{

  statement

}

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

  • B1: Expression được định trị
  • B2: Nếu kết quả là true thì statement thực thi và quay lại B1
  • B3: Nếu kết quả là false thì thoát khỏi vòng lặp while.

Để thoát vòng lặp: dùng break

Để di chuyển sớm qua lần lặp tiếp theo : dùng continue

Lưu ý: Lệnh trong while có thể không được thực hiện lần nào do ngay từ đầu expression không thỏa

Lưu đồ hoạt động:

Ví dụ 1: Viết chương trình tính 5 giai thừa


fun main(args: Array<String>) {
var n:Int = 5
var gt:Int=1
var i:Int = 1
while (i <= n)
{
gt *= i
i++
}
println("$n! =$gt")
}

Giải thích chi tiết quá trình chạy:

Khởi tạo n=5, gt=1, i=1

Lần 1: kiểm tra i<=n <=>1<=5=>đúng => làm body while:

gt=gt*i=1*1=1

i++=>i=i+1=1+1=2

Lần 2: kiểm tra i<=n <=> 2<=5 => đúng => làm body while:

gt=gt*i=1*2=2

i++=>i=i+1= 2+1=3

Lần 3: kiểm tra i<=n <=> 3 <=5 => đúng => làm body while:

gt=gt*i=2*3=6

i++=>i=i+1=3+1=4

Lần 4: Kiểm tra i<=n <=> 4<=5 => đúng => làm body while:

gt=gt*i=6*4=24

i++=>i=i+1=4+1=5

Lần 5: Kiểm tra i<=n <=> 5<=5 => đúng => làm body while:

gt=gt*i=24*5=120

i++=>i=i+1=5+1=6

Lần 6: kiểm tra i<=n <=> 6<=5 => sai => ngừng while

Kết thúc chương trình ta được giai thừa =120

Ta có thể kết hợp các vòng lặp khác nhau lại, ví dụ có thể kết hợp vòng while và for, ví dụ dưới đây sẽ minh họa việc kết hợp này:

Ví dụ 2: Viết chương trình Kiểm tra một số bất kỳ có phải là số nguyên tố hay không(số nguyên tố là số chỉ chia hết cho 1 và chính nó, số 0 và số 1 không phải là số nguyên tố), chương trình cho phép hỏi người dùng có muốn tiếp tục nữa hay không?


fun main(args: Array<String>) {
var n:Int=0
var s:String?
println("Chào mừng đến với Chương trình kiểm tra số Nguyên Tố")
while (true)
{
println("Nhập số nguyên:")
s= readLine()
if(s!=null)
n=s.toInt()
var dem:Int=0
for(i in 1..n)
{
if(n%i==0)
dem++
}
if(dem==2)
println("$n là số nguyên tố")
else
println("$n ko phải là số nguyên tố")
print("Tiếp không?(c/k):")
s= readLine()
if(s=="k")
break;
}
println("Chào tạm biệt")
}

Chạy chương trình và nhập các giá trị sau để xem kết quả:

Chào mừng đến với Chương trình kiểm tra số Nguyên Tố
Nhập số nguyên:
5
5 là số nguyên tố
Tiếp không?(c/k):c
Nhập số nguyên:
7
7 là số nguyên tố
Tiếp không?(c/k):c
Nhập số nguyên:
6
6 ko phải là số nguyên tố
Tiếp không?(c/k):k
Chào tạm biệt

Như vậy tới đây Tui đã hướng dẫn xong vòng lặp while trong Kotlin, các bạn chú ý học kỹ và hiểu được nó thông qua các ví dụ ở trên nhé. Đặc biệt nắm được cách thức vận hành của while để có thể áp dụng tốt vào các dự án thực tế của mình.

Các bạn có thể tải source code bài này ở đây:http://www.mediafire.com/file/gv9pj5v721374qr/HocWhile.rar

Hẹn gặp các bạn ở những bài tiếp theo

Chúc các bạn thành công!

Trần Duy Thanh (http://ssoftinc.com/)

One response

  1. […] bài 13 chúng ta đã hiểu được cấu trúc lặp while, trong bài này chúng ta qua một cấu […]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: