< Return to Video

Intro to While Loops | Computer Programming | Khan Academy

  • 0:01 - 0:07
    Trong video này, ta cùng tìm hiểu về vòng
    lặp. Trên khung, ta có vòng lặp while giúp ta
    viết rất nhiều dòng văn bản chỉ bằng vài câu lệnh đơn.
  • 0:07 - 0:10
    Nếu ta thay đổi nội dung
    của một dòng văn bản,
  • 0:10 - 0:12
    thì tất cả các dòng khác cũng thay đổi.
  • 0:12 - 0:16
    Vậy vòng lặp hoạt động như thế nào?
    Ta có thể quay lại mã này sau.
  • 0:16 - 0:19
    Trước tiên, ta cần suy nghĩ
    cách lập trình chương trình này
  • 0:19 - 0:22
    bằng các kiến thức đã học mà
    không sử dụng vòng lặp.
  • 0:22 - 0:27
    Để làm điều này, có vẻ như ta sẽ chỉ
    viết đi viết lại rất nhiều văn bản.
  • 0:27 - 0:33
    Ta nhập lệnh "text", trong ngoặc là biến
    "message" và tham số chỉ vị trí văn bản.
  • 0:33 - 0:36
    Để các văn bản lặp lại, ta sẽ
    sao chép lại câu lệnh và sửa các tham số.
  • 0:36 - 0:39
    Và nếu làm như vậy, ta
    sẽ tốn nhiều thời gian.
  • 0:39 - 0:43
    Hoặc nếu ta muốn các dòng
    văn bản đứng gần nhau hơn.
  • 0:43 - 0:47
    Giả sử, ta muốn đổi tham số 70 thành 60,
  • 0:47 - 0:51
    Như vậy, ta cũng sẽ phải sửa
    tham số của các dòng lệnh khác
  • 0:51 - 0:55
    để khoảng cách các dòng văn bản đều nhau.
  • 0:55 - 0:58
    Như vậy, ta sẽ càng
    mất nhiều thời gian hơn.
  • 0:58 - 1:02
    Để giải quyết vấn đề này,
    ta có một công cụ hữu ích là vòng lặp.
  • 1:02 - 1:06
    Trong lập trình, khi
    thấy các câu lệnh lặp lại
  • 1:06 - 1:10
    Hãy nghĩ ngay đến vòng lặp. Vòng lặp sẽ giúp ta
  • 1:10 - 1:14
    lặp đi lặp lại các mã và ta chỉ
    cần sửa một chút ở các dòng lệnh.
  • 1:14 - 1:18
    Sau đây là cách sử dụng vòng lặp để viết lại mã này. Đầu tiên, ta nhập "while"
  • 1:18 - 1:22
    sau đó là dấu ngoặc đơn và dấu ngoặc nhọn. Người bạn của chúng ta hiện lên với một thông điệp
  • 1:22 - 1:26
    bởi vì ta chưa hoàn thành dòng mã này. Đừng lo, người bạn ấy sẽ biến mất khi ta hoàn thành.
  • 1:26 - 1:31
    Mỗi khi viết một vòng lặp, bạn
    cần trả lời được 3 câu hỏi quan trọng:
  • 1:31 - 1:33
    3 câu hỏi đó là
  • 1:33 - 1:37
    "Bạn muốn lặp lại cái gì?"
  • 1:37 - 1:41
    Thông điệp mà ta cần lặp lại phải
    được viết bên trong dấu ngoặc nhọn.
  • 1:41 - 1:46
    Trong trường hợp này, ta muốn lặp lại lệnh "text" nên ta sẽ dán lệnh đó vào trong dấu ngoặc nhọn.
  • 1:46 - 1:50
    Nhìn nó hơi kỳ cục. Bởi vì chúng ta chỉ đang
  • 1:50 - 1:52
    lặp đi lặp lại cùng một lệnh "text".
  • 1:52 - 1:58
    Ta cần phải thay đổi một thứ gì đó. Vì vậy, ta có câu hỏi thứ hai là "Bạn muốn thay đổi điều gì ở mỗi lần lặp lại?"
  • 1:58 - 2:01
    Ta muốn thay đổi tọa độ y thành 60
  • 2:01 - 2:06
    và sau đó là 80. Thay vào đó,
    ta sẽ biến nó thành một biến.
  • 2:06 - 2:09
    Gọi biến đó là Y vì nó đại diện cho tọa độ y. Ta sẽ khai báo biến này
  • 2:09 - 2:12
    ở bên trên lệnh "while". Giá trị đầu tiên là 40.
  • 2:12 - 2:18
    Bây giờ, ta chỉ cần thay đổi giá trị của biến y thành y bằng y cộng 20.
  • 2:18 - 2:20
    Các giá trị sau sẽ lớn hơn.
  • 2:20 - 2:24
    Ta có thể áp dụng bài học
    về các phím tắt tăng ở đây.
  • 2:24 - 2:28
    Ta chỉ cần dùng phím tắt ở đây. Vậy là ta đã trả lời xong hai câu hỏi.
  • 2:28 - 2:33
    Bây giờ, ta cần trả lời câu hỏi thứ ba:
    "Các thông điệp cần lặp lại trong bao lâu?"
  • 2:33 - 2:37
    Ta không hề muốn các thông
    điệp này lặp lại vô hạn.
  • 2:37 - 2:41
    Bởi vì nếu làm vậy, thứ nhất là sẽ mất rất nhiều thời gian và thứ hai là trình duyệt có thể sập.
  • 2:41 - 2:43
    Nhưng mong là nó sẽ không sập.
  • 2:43 - 2:47
    Ta chỉ muốn lặp lại các thông
    điệp này tới cuối khung kết quả.
  • 2:47 - 2:51
    Tức là ta sẽ lặp lại các thông điệp miễn là y nhỏ hơn 400.
  • 2:51 - 2:56
    Ta nhập "y nhỏ hơn 400" vào lệnh "while và các lệnh đã được lặp lại tới cuối khung kết quả.
  • 2:56 - 3:00
    Có thể thấy, cách làm này đơn giản hơn cách làm trước đó,
  • 3:00 - 3:04
    cách làm trước mất nhiều thời gian để viết mã hơn mà mãi vẫn chưa hoàn thành thông điệp.
  • 3:04 - 3:08
    Ta xóa các lệnh trước đó đi và ta đã hoàn thành chương trình.
  • 3:08 - 3:11
    Bây giờ, ta sẽ tìm hiểu
    kỹ hơn về vòng lặp.
  • 3:11 - 3:15
    Để làm điều đó, ta sẽ in y ra mỗi lần điều kiện thỏa mãn.
    Ta có thông điệp là "y is now"
  • 3:15 - 3:19
    Ở lệnh "text", ta gắn y vào "message"
    để thấy các giá trị của biến y.
  • 3:19 - 3:23
    Các giá trị đang tăng
    lên 20 đơn vị.
  • 3:23 - 3:26
    Ta có thể thay đổi điều này bằng
    cách thay đổi biến y ở dưới.
  • 3:26 - 3:31
    Ta sẽ sửa thành 50.
    Bây giờ, các giá trị sẽ tăng 50 đơn vị.
  • 3:31 - 3:36
    Ta có thể thay đổi giá trị của biến y tùy thích.
  • 3:36 - 3:39
    Việc thay đổi điều kiện của lệnh "while" sẽ ảnh hưởng đến việc chương trình dừng lại ở đâu.
  • 3:41 - 3:46
    Để hiểu kỹ hơn, ta hãy liên tưởng tới câu lệnh "if".
  • 3:46 - 3:49
    Coi điều kiện này là biểu thức
    Boolean mà ta đã học.
  • 3:49 - 3:52
    Sau đó, ta tạo phần thân của lệnh "if".
  • 3:52 - 3:55
    Lệnh text chỉ xảy ra khi giá trị
    của biểu thức Boolean là "true".
  • 3:55 - 3:57
    Còn nếu không, ta sẽ chuyển luôn sang phần cuối cùng.
  • 3:57 - 4:04
    Một điều thú vị là trong vòng lặp while, ta có một câu lệnh đó là "go back to the start of the loop" ở cuối.
  • 4:06 - 4:11
    Câu lệnh này nghĩa là thay
    vì dừng lại và để vòng lặp tiếp tục,
  • 4:11 - 4:15
    giống như lệnh "if" thì mỗi khi tạo thân
    của vòng lặp ta sẽ quay lại và kiểm tra xem
  • 4:15 - 4:17
    liệu điều kiện vẫn
    đang thỏa mãn hay không.
  • 4:17 - 4:20
    Nếu điều kiện vẫn thoả mãn
    thì ta sẽ lặp lại một lần nữa
  • 4:20 - 4:22
    và ở lần lặp lại thứ hai,
    ta vẫn làm tương tự.
  • 4:22 - 4:28
    Ta sẽ quay lại và kiểm tra xem liệu
    y vẫn nhỏ hơn 279 hay không.
  • 4:28 - 4:31
    Nếu có thì ta sẽ lặp lại các lệnh
    một lần nữa và tiếp tục kiểm tra điều kiện.
  • 4:31 - 4:36
    Nếu không thì ta quay lại điều kiện
    của lệnh "while" và vòng lặp sẽ dừng lại.
  • 4:36 - 4:38
    Ta sẽ tiếp tục lập trình
    chương trình của mình.
  • 4:38 - 4:42
    Có nhiều cách thú vị hơn để sử dụng
    vòng lặp và ta sẽ sớm tìm hiểu.
  • 4:42 - 4:46
    Nhưng hiện tại, chúng ta đã
    có một khởi đầu tuyệt vời về vòng lặp.
Title:
Intro to While Loops | Computer Programming | Khan Academy
Description:

more » « less
Video Language:
English
Team:
Khan Academy
Duration:
04:46

Vietnamese subtitles

Incomplete

Revisions Compare revisions