Tìm kiếm theo tiêu đề

Tin tức cộng đồng

[MỜI HỢP TÁC] Các kỳ thi Olympic Quốc tế 2026 (IMO - IEO - ISO)

Kính gửi Quý Lãnh đạo, Ban Giám hiệu và Quý Thầy/Cô, FermatTech (Đối tác Google tại VN) phối hợp cùng SCO Ấn Độ trân trọng kính mời tham gia 3 kỳ thi uy tín dành cho HS từ lớp 1 - 12: - IMO: Olympic Toán Quốc tế. - IEO: Olympic Tiếng Anh Quốc tế. - ISO: Olympic Khoa học...
Xem tiếp

Tin tức thư viện

Chức năng Dừng xem quảng cáo trên violet.vn

12087057 Kính chào các thầy, cô! Hiện tại, kinh phí duy trì hệ thống dựa chủ yếu vào việc đặt quảng cáo trên hệ thống. Tuy nhiên, đôi khi có gây một số trở ngại đối với thầy, cô khi truy cập. Vì vậy, để thuận tiện trong việc sử dụng thư viện hệ thống đã cung cấp chức năng...
Xem tiếp

Hỗ trợ kĩ thuật

  • (024) 62 930 536
  • 0919 124 899
  • hotro@violet.vn

Liên hệ quảng cáo

  • (024) 66 745 632
  • 096 181 2005
  • contact@bachkim.vn

Bài 9. Cấu trúc rẽ nhánh

Wait
  • Begin_button
  • Prev_button
  • Play_button
  • Stop_button
  • Next_button
  • End_button
  • 0 / 0
  • Loading_status
Tham khảo cùng nội dung: Bài giảng, Giáo án, E-learning, Bài mẫu, Sách giáo khoa, ...
Nhấn vào đây để tải về
Báo tài liệu có sai sót
Nhắn tin cho tác giả
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Lê Quang Hoài
Ngày gửi: 09h:31' 20-10-2008
Dung lượng: 443.0 KB
Số lượt tải: 79
Số lượt thích: 0 người
Chương 3:
Cấu trúc rẽ nhánh và lặp

Bài 9: CAÁU TRUÙC REÕ NHAÙNH

?
Hiểu nhu cầu của cấu trúc rẽ nhánh trong biểu diễn thuật toán.
Hiểu câu lệnh rẽ nhánh (dạng thiếu và dạng đủ).
Hiểu câu lệnh ghép.
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 đơn giản.
Viết được các lệnh rẽ nhánh thiếu, rẽ nhánh đầy đủ và áp dụng để thể hiện được thuật toán của một số bài 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:
?
Để giải phương trình trên, trước tiên ta cần tính gì?
? Bài toán: Viết chương trình giải phương trình bậc hai:
ax2 + bx + c=0;
Sau đó ta làm gì?
? Tính ?=b2 - 4ac
Sau đó, tuỳ thuộc vào giá trị ? mà ta có
kết luận nghiệm hay không.
Cụ thể:
? - Nếu ? < 0 thì phương trình vô nghiệm
? - Nếu ?? 0 thì phương trình có nghiệm
? 1. Khái niệm rẽ nhánh
?
Đúng
Sai
Sơ đồ
? Bài toán: Viết chương trình giải phương trình bậc hai:
ax2 + bx + c=0;
? 1. Khái niệm rẽ nhánh
Kiểm tra
? ? 0
Thông báo vô nghiệm
Tính và đưa ra nghiệm
Kết thúc
? 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):
IF THEN
D?ng d?y d? (2):
IF THEN
ELSE
? 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:
Max:=a;
If b>a then 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. Câu lệnh ghép
? - Trong ngôn ngữ Pascal, câu lệnh ghép có dạng:
? Begin
? ;
? 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.
?
? 4. Một số ví dụ
Ví dụ 1: Tìm nghiệm thực của phương trình bậc hai
ax2+bx+c=0, với a?0
Xác định input và output của bài toán?
Input: Các hệ số a,b,c; nhập từ bàn phím.
Output: Đưa ra màn hình các nghiệm thực hoặc thông báo "Phuong trinh vo nghiệm".
Mô phỏng
?
4. Một số ví dụ
Ví dụ 2: Tìm số ngày của năm N, biết rằng năm nhuận là năm chia hết cho 400 hoặc chia hết cho 4 nhưng không chia hết cho 100. Ví dụ, các năm 2000, 2004 là năm nhuận, các năm 1900,1945 không phải là năm nhuận.
Xác định input và output của bài 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?
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;
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;
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 . ;
Nếu sau Then muốn thực hiện nhiều câu lệnh thì chỉ cần liệt kê các lệnh ra.
?
Câu 2: Cho đoạn chương trình sau
Begin
x:=a;
if aEnd.
Cho a=20; b=15. Kết quả x bằng bao nhiêu?


b) Cho a=5; b=10. Kết quả x bằng bao nhiêu?

Hãy đánh dấu vào đáp số đúng
?
?
?
Về nhà
Học bài và làm bài tập trong sách bài tập phần chương III
 
Gửi ý kiến