Tiết 11 - cấu trúc rẽ nhánh

15 957 17
Tiết 11 - cấu trúc rẽ nhánh

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Chương 3: Chương 3: Cấu trúc rẽ nhánh và lặp Cấu trúc rẽ nhánh và lặp  Bài 9: Bài 9: CẤU TRÚC RẼ NHÁNH CẤU TRÚC RẼ NHÁNH  Hiểu nhu cầu của cấu trúc rẽ Hiểu nhu cầu của cấu trúc rẽ nhánh trong biểu diễn thuật toán. nhánh trong biểu diễn thuật toán.  Hiểu câu lệnh rẽ nhánh (dạng Hiểu câu lệnh rẽ nhánh (dạng thiếu và dạng đủ). thiếu và dạng đủ).  Hiểu câu lệnh ghép. Hiểu câu lệnh ghép.  Sử dụng cấu trúc rẽ nhánh trong Sử dụng cấu trúc rẽ nhánh trong mô tả thuật toán của một số bài toán mô tả thuật toán của một số bài toán đơn giản. đơn giản.  Viết được các lệnh rẽ nhánh thiếu, Viết được các lệnh rẽ nhánh thiếu, rẽ nhánh đầy đủ và áp dụng để thể rẽ nhánh đầy đủ và áp dụng để thể hiện được thuật toán của một số bài hiện được thuật toán của một số bài toán đơn giản. toán đơn giản. Bài học hôm nay cần biết gì? Yêu cầu nội dung bài học Yêu cầu nội dung bài học : : Để giải phương trình trên, trước tiên ta cần tính gì?   Bài toán: Bài toán: Viết chương trình giải phương trình bậc hai: Viết chương trình giải phương trình bậc hai: ax ax 2 2 + bx + c=0; + bx + c=0; Sau đó ta làm gì?   Tính Tính   =b =b 2 2 - 4ac - 4ac Sau đó, tuỳ thuộc vào giá trò Sau đó, tuỳ thuộc vào giá trò   mà ta có mà ta có kết luận nghiệm hay không. kết luận nghiệm hay không. Cụ thể: Cụ thể:   - - Nếu Nếu   < 0 < 0 thì phương trình vô nghiệm thì phương trình vô nghiệm   - - Nếu Nếu   0≥ 0≥ thì phương trình có nghiệm thì phương trình có nghiệm   1. Khái niệm rẽ nhánh 1. Khái niệm rẽ nhánh Kiểm tra Kiểm tra   ≥ ≥ 0 0 Thông báo vô nghiệm Thông báo vô nghiệm Tính và đưa ra nghiệm Tính và đưa ra nghiệm Kết thúc Kết thúc Đúng Đúng Sai Sai Sơ đồ Sơ đồ   Bài toán: Bài toán: Viết chương trình giải phương trình bậc hai: Viết chương trình giải phương trình bậc hai: ax ax 2 2 + bx + c=0; + bx + c=0;   1. Khái niệm rẽ nhánh 1. Khái niệm rẽ nhánh Kiểm tra Kiểm tra   ≥ ≥ 0 0 Thông báo vô nghiệm Thông báo vô nghiệm Tính và đưa ra nghiệm Tính và đưa ra nghiệm Kết thúc Kết thúc   Kết luận Kết luận : : Nếu < 0 thì phương trình vô nghiệm, ngược lại thì phương trình có nghiệm. Thuật toán trên xuất hiện mệnh đề gì? Mệnh đề: - Nếu . . . thì . . . - - Nếu . . . thì . . . ngược lại thì . . . . . .  Các NNLT thường cung cấp các câu lệnh để mô tả các cấu trúc rẽ nhánh, Pascal sử dụng câu lệnh nào để mô tả?   Cấu trúc này được gọi là cấu trúc rẽ nhánh.  D ng thi u (1):ạ ế D ng thi u (1):ạ ế  IF < ki n> THEN <L NH>Đ ệ Ệ IF < ki n> THEN <L NH>Đ ệ Ệ  D ng y (2):ạ đầ đủ D ng y (2):ạ đầ đủ  IF < ki n> THEN <L NH Đ ệ Ệ IF < ki n> THEN <L NH Đ ệ Ệ 1> 1>  ELSE <L NH 2>Ệ ELSE <L NH 2>Ệ   2. Câu lệnh If - Then 2. Câu lệnh If - Then   - Pascal dùng câu lệnh If-Then để mô tả việc rẽ nhánh tương ứng, có 2 loại mệnh đề rẽ nhánh.   Trong đó:   - Đkiện: Là biểu thức quan hệ hoặc logic   - Lệnh, Lệnh 1, Lệnh 2 là nh ng câu lệnh ữ của Pascal. Biểu thức quan hệ hoặc logic nhận 2 giá trò nào? Đkiện chỉ có giá trò True (Đúng) hoặc False (sai) (1) Nếu <Điều kiện > đúng -> Thực hiện câu lệnh sau Then; Ý nghóa của câu lệnh If ở dạng đầy đủ? (2) Nếu <điều kiện> đúng -> thực hiện L NH 1 (sau Ệ Then), ngược lại thực hiện L NH 2 (sau Ệ Else)  Ý nghóa:  - Dạng thiếu: Nếu điều kiện đúng thì thực hiện LỆNH , nếu điều kiện sai thì không thực hiện gì.  - Dạng đầy đủ: Nếu điều kiện đúng thì thực hiện LỆNH 1, (ngược lại) nếu điều kiện sai thì thực hiện LỆNH 2  VD1:If (x mod 2=0) Then Write(x,‘là so chan’);  VD2: If Dela<0 Then Write(‘PT vo nghiem’) Else Write(‘PT co nghiem’); Ý nghóa các câu lệnh trong ví dụ?  Ví dụ 3: Tìm giá trò lớn nhất (max) của hai số a và b.  Cách 1 Cách 1 : :  Max:=a; Max:=a;  If If b>a b>a then then Max:=b Max:=b ; ;  Cách 2:  If a>b Then Max:=a  Else Max:=b; Cách nào nhanh hơn,tiện hơn? Vì sao? Cách 2: Tiện hơn, hay hơn vì chỉ sử dụng 1 câu lệnh.   3. 3. Câu lệnh ghép Câu lệnh ghép   - Trong ngôn ngữ Pascal, câu lệnh ghép có dạng:   Begin   <Các câu lệnh>;   End;   Chú ý: - Cu i câu lệnh trước ố Else không có dấu chấm phẩy(;) Trong câu lệnh IF - THEN hoặc IF – THEN – ELSSE muốn thực hiện nhiều lệnh sau Then hay nhiều lệnh sau Else làm thế nào? Ví dụ:Ta có đoạn chương trình sau If Delta<0 Then Writeln(‘Phuong trinh vo nghiem’) Else Begin x1:=(-b-SQRT(Delta))/(2*a); x2:= -b/a - x1; Writeln(‘ x1= ’, x1 , ’x2= ‘, x2); End; Chỉ rõ đâu là lệnh ghép trong đoạn chương trình này. [...]... toán? Input: N nhập từ bàn phím Output: Đưa số ngày của năm N ra màn hình Mô phỏng Hãy khoanh tròn vào câu đúng nhất Câu 1: Trong ngôn ngữ lập trình Pascal, phát biểu nào sau đây là đúng với câu lệnh rẽ nhánh if then? a) Nếu sau Then muốn thực hiện nhiều câu lệnh thì các lệnh phải đặt giữa hai dấu ngoặc đơn; b) Nếu sau Then muốn thực hiện nhiều câu lệnh thì các lệnh phải đặt giữa Begin và End; c) . Chương 3: Cấu trúc rẽ nhánh và lặp Cấu trúc rẽ nhánh và lặp  Bài 9: Bài 9: CẤU TRÚC RẼ NHÁNH CẤU TRÚC RẼ NHÁNH  Hiểu nhu cầu của cấu trúc rẽ Hiểu nhu. nhu cầu của cấu trúc rẽ nhánh trong biểu diễn thuật toán. nhánh trong biểu diễn thuật toán.  Hiểu câu lệnh rẽ nhánh (dạng Hiểu câu lệnh rẽ nhánh (dạng

Ngày đăng: 01/06/2013, 08:47

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan