Thế giới lập trình Bài 4 / Slide và lệnh ngay phía sau vòng lặp sẽ được thực thi.. Thế giới lập trình Bài 4 / Slide Vòng lặp while có cú pháp như sau whileđiều kiện lặpbegin //các câu
Trang 1Thế giới lập trình Bài 4 / Slide
Trang 2Thế giới lập trình Bài 4 / Slide
và lệnh ngay phía sau vòng lặp sẽ được thực thi
Các câu lệnh chứa bên trong vòng lặp gọi là thân của vòng lặp
Ví dụ: vẽ lưu đồ giải thuật nhập vào 10 số và tính tổng 10 số đó
Trang 3Thế giới lập trình Bài 4 / Slide
3 of 16
©NIIT
Trang 4Thế giới lập trình Bài 4 / Slide
Trang 5Thế giới lập trình Bài 4 / Slide
Vòng lặp while có cú pháp như sau
while(điều kiện lặp)begin
//các câu lệnh trong thân vòng lặpend
Nếu ngay từ đầu điều kiện lặp không đúng thì các câu lệnh bên trong vòng lặp while sẽ không được thực hiện
Trang 6Thế giới lập trình Bài 4 / Slide
6 of 16
©NIIT
Vòng lặp while - Ví dụ minh họa:
Jane là giáo viên tại trường Scholar, cô Jane cần tính điểm trung bình cho lớp học của cô phụ trách lớp học của cô Jane có 30 học viên Vẽ lưu đồ giải thuật và
mã giả cho bài tóan trên.
Lưu đồ giải thuật:
Trang 7Thế giới lập trình Bài 4 / Slide
7 of 16
©NIIT
Trang 8Thế giới lập trình Bài 4 / Slide
8 of 16
©NIIT
Mã giả
begin numeric nMarks, nTotal, nCounter, nAvg nMarks = 0
nTotal = 0 nCounter = 0 nAvg = 0 while (nCounter < 30) //while the condition is true begin
display “Enter the total marks of a student”
accept nMarks nTotal = nTotal + nMarks nCounter = nCounter + 1 //increments the counter by one end
nAvg = nTotal / nCounter //calculates the average display “The average marks of the class is”
display nAvg //displays the average end
Trang 9Thế giới lập trình Bài 4 / Slide
// các câu lệnh bên trong vòng lặpend
until (điều kiện lặp)
Trang 10Thế giới lập trình Bài 4 / Slide
10 of 16
©NIIT
Vòng lặp repeat … until (tiếp theo)
Khác với vòng lặp while, vòng lặp repeat … until sẽ thực hiện trước các lệnh bên trong thân vòng lặp trước, sau đó mới xét đến điều kiện lặp Do đó vòng lệnh repeat … until sẽ được thực hiện ít nhất 1 lần
Nếu điều kiện lặp là sai thì vòng lặp repeat … until sẽ quay lại thực hiện tiếp, nếu điều kiện lặp là đúng thì vòng lặp repeat … until sẽ kết thúc
Trang 11Thế giới lập trình Bài 4 / Slide
11 of 16
©NIIT
Vòng lặp repeat … until – ví dụ minh họa
Vẽ lưu đồ giải thuật và viết mã giả cho chương trình nhập vào hai
số sau đó tính tổng của hai số đó Sau đó chương trình có chức năng hỏi người dùng là có muốn tiếp tục không? Nếu người dùng trả lời là “Yes” thì chương trình được tiếp tục thực hiện, nếu người dùng trả lời “No” thì kết thúc chương trình
Lưu đồ giải thuật:
Trang 12Thế giới lập trình Bài 4 / Slide
12 of 16
©NIIT
Trang 13Thế giới lập trình Bài 4 / Slide
13 of 16
©NIIT
Mã giả
begin numeric nNum1, nNum2, nSum character cChoice
repeat begin display “Enter the first number”
accept nNum1 display “Enter the second number”
accept nNum2 nSum = nNum1 + nNum2
display nSum display “Do you wish to calculate the sum of more numbers?” accept cChoice
end until(cChoice = “No”) //until the choice entered is “No”
end
Trang 14Thế giới lập trình Bài 4 / Slide
Trang 15Thế giới lập trình Bài 4 / Slide
15 of 16
©NIIT
Vòng lặp for (tiếp theo)
Biểu thức tăng/giảm biến điều khiển vòng lặp: giá trị của biến điều khiển vòng lặp được tăng hoặc giảm
Cú pháp của vòng lặp for như sau:
for(biểu thức khởi động; điều kiện lặp; biểu thức tăng/giảm biến điều kiển)
begin
//các câu lệnh bên trong vòng lặp forend
Trang 16Thế giới lập trình Bài 4 / Slide
16 of 16
©NIIT
Vòng lặp for - ví dụ minh họa
Vẽ lưu đồ giải thuật và viết mã giả chương trình hiển thị tất cả các
số chẳng bé hơn hoặc bằng 100
Lưu đồ giải thuật
Trang 17Thế giới lập trình Bài 4 / Slide
17 of 16
©NIIT
begin
numeric nCounter for(nCounter=2;nCounter<=100;
nCounter=nCounter+2) begin
display nCounter
end end
Trang 18Thế giới lập trình Bài 4 / Slide
18 of 16
©NIIT
Câu lệnh nhảy goto
Câu lệnh nhảy goto được dùng trong tình huống là sự thực thi của giải thuật không tuân theo một thứ tự tuần tự.
Trong chương trình bạn có thể nhảy đến vị trí bất kỳ bằng câu lệnh goto Để đánh dấu vị trí mà chương trình có thể nhảy đến bạn cần phải gán nhãn cho nó.
Cú pháp lệnh nhãy goto như sau:
nhãn 1:
// các câu lệnh goto nhãn 1;
Trang 19Thế giới lập trình Bài 4 / Slide
19 of 16
©NIIT
Câu lệnh nhảy goto (tiếp theo)
Lệnh nhảy goto cung cấp sự linh động trong việc điều khiển dòng chảy của chương trình trong giải thuật Tuy nhiên lệnh nhảy goto
có một số điểm không thuận lợi như sau:
• Nó phá vở dòng chảy của chương trình vì lệnh nhảy goto cho phép nhảy đến một nhãn bất kỳ
• Nhiều câu lệnh goto được dùng sẽ làm tăng độ phức tạp của chương trình
• Lệnh nhảy goto làm cho chương trình không có tính cấu trúc do đó rất khó để bắt lỗi và sửa lỗi
Trang 20Thế giới lập trình Bài 4 / Slide
20 of 16
©NIIT
Câu lệnh goto – ví dụ minh họa
Viết mã giả cho chương trình hiển thị các số chẵng nhỏ hơn 100
begin
numeric nCounter nCounter=2
Label1:
nCounter=nCounter+2 display nCounter //displays all the even numbers if(nCounter<=100)
goto Label1 //transfers the control to Label1 end
Trang 21Thế giới lập trình Bài 4 / Slide
và lệnh ngay phía sau vòng lặp sẽ được thực thi
Trang 22Thế giới lập trình Bài 4 / Slide