Cấu Trúc Rẽ Nhánh Trong Pascal - WIKIPASCAL
Có thể bạn quan tâm
Chuyển đến nội dung chính
Xin chào các bạn, Hôm nay WIKIPASCAL sẽ hướng dẫn các bạn về Dữ liệu kiểu tệp trong Pascal Dữ liệu kiểu tệp trong Pascal Đọc thêm
Đây là phần hơi nâng cao một chút, vậy bạn nào có niềm đam mê thì hãy cùng Wiki Pascal tìm hiểu nhé ! Màn hình, bàn phím, âm thanh trong Pascal (Phần 1) Đọc thêm
Xin chào các bạn, Hôm nay WIKIPASCAL sẽ hướng dẫn các bạn về Dữ liệu có cấu trúc - Phần 3: Record trong Pascal trong Pascal Dữ liệu có cấu trúc - Phần 3: Record trong Pascal Đọc thêm
Cấu trúc rẽ nhánh trong Pascal
| Cấu trúc rẽ nhánh trong Pascal - Wiki Pascal |
I – Cấu trúc If…Then…Else…
Hai mẫu câu lệnh như sau : Code : IF THEN ; IF THEN ELSE ; Theo lệnh này, nếu nhận giá trị True thì máy sẽ thực hiện , còn nếu không thì hoặc kết thúc ( tức không làm gì cả ) đối với mẫu câu thứ nhất, hoặc máy sẽ đi thực hiện lệnh khác tức làtrong mẫu câu lệnh thứ 2. Như vậy mẫu thứ nhất thực ra là mẫu thứ hai thu gọn với là rỗng. Ví dụ 1: để thực hiện phép chia hai số a, b với điều kiện b < > 0, ta viết : Code: If b < > 0 Then t := a / b Else Writeln (' Mẫu số bằng 0 ! Không chia được ! ') ; Ví dụ 2: tìm giá trị min và max của hai số a, b. Code: If a < b Then Begin Max := b ; Min := a ; End Else Begin Max := a ; Min := b ; End ; Chú ý: trước Else không bao giờ có dấu chấm phẩy. Trong ví dụ này, ta thấy luôn vai trò của lệnh hợp thành ( lệnh ghép ). Giả sử ta viết một lệnh như sau : Code: If a < b Then Begin Max := b ; Min := a ; End ; Nghĩa là nếu a < b ta phải thực hiện lần lượt hai lệnh là Max := b và Min := a ( được đặt giữa Begin và End ). Nếu không có Begin và End như sau : Code: If a < b Then Max := b ; Min := a ; thì ta phải hiểu là lệnh max := b được thực hiện chỉ khi a < b còn lệnh min := a được thực hiện trong mọi trường hợp. Cũng trong ví dụ này ta thấy cách viết có cấu trúc nhô ra nhô vào để bố trí chương trình Pascal cho đẹp và thể hiện đươcï thuật toán của chương trình. Đây là một tiêu chuẩn cần phải có cho một chương trình viết bằng Pascal. Chữ Begin và End tương ứng bao giờ cũng cùng ở một cột. Tất nhiên ta có thể viết tùy ý như sau nhưng không đẹp: Code: If a < b Then Begin max := b ; Min := a ; End Else Begin Max := a ; Min := b ; End ; Lưu ý : cách viết lệnh If như sau là hoàn toàn đúng : Code: If Then If Then Else ; song rất dễ dẫn đến nhầm lẫn không biết tương ứng với Else của If nào. Vì vậy nên sửa lại cho rõ ràng như sau : Code: If Then Begin If < Bieu_thuc_Boolean_2 > Then < viec_1> Else < viec_2 > End ;II – Cấu trúc Case…Of…
Hai mẫu câu lệnh If ở bài trước chỉ thực hiện rẽ hai nhánh tương ứng với 2 giá trị của biểu thức Boolean. Việc thử và chọn một trong nhiều nhánh sẽ được thực hiện với câu lệnh Case như sau : Mẫu 1 : Code: Case Of Gia_tri_1 : ; Gia_tri_2 : ; .................. Gia_tri_n : ; End ; Mẫu 2 : Code: Case Of Gia_tri_1 : < viec_1> ; Gia_tri_2 : < viec_2> ; .................. Gia_tri_n : Else ; End ; Trong đó không còn chỉ là biểu thức Boolean như trong lệnh If … Nó có thể là có các kiểu vô hướng đếm được (kể cả kiểu liệt kê, kiểu khoảng con sẽ học sau nhưng không được là kiểu Real ) nên nó có thể có nhiều giá trị khác nhau. Mẫu 2 sẽ thực hiện ( được viết sau từ khóa Else ) nếu như < Bieu_thuc> không rơi vào các giá trị 1, giá trị 2,… giá trị n kể trên. Cần chú ý rằng câu lệnh Case bao giờ cũng kết thúc bằng từ khóa End. Ví dụ 1 : Với I là một biến nguyên Code: Case I + 1 Of 1 : writeln (' So 1 ') ; 2 : writeln (' So 2 ') ; 3 : writeln (' So 3 ') ; 4 : writeln (' So 4 ') ; End ; Ví dụ 2 :Tính số ngày của một tháng ; Code: Var so_ngay, thang, nam : integer ; BEGIN Write ('Thang : ') ; readln ( thang) ; Write ('Nam : ') ; readln ( nam) ; Case thang Of 4, 6, 9, 11 : so_ngay := 30 ; 2 : case nam of 0 : so_ngay := 29 ; 1, 2, 3 : songay := 28 ; end Else so_ngay := 31 ; End ; Writeln (' So ngay cua thang ', thang,' nam ', nam,' la ', so_ngay) ; END. Đến đây các bạn có thể hỏi liệu bài toán Giải phương trình bậc 2 có thể dùng Case cho ba trường hợp của biến Delta không ? Điều này không thể được vì biến Delta thuộc kiểu Real, kiểu không đếm được.Bài tập:
1. Viết chương trình giải phương trình bậc 2. Đưa nghiệm ra màn hình với 3 số phần thập phân. Gợi ý hàm lấy căn bậc hai là sqrt();. 2. Biết chương trình kiểm tra số nhập vào là số lẻ hay số chẵn.Nhận xét
Đăng nhận xét
Bài đăng phổ biến từ blog này
Dữ liệu kiểu tệp trong Pascal
Xin chào các bạn, Hôm nay WIKIPASCAL sẽ hướng dẫn các bạn về Dữ liệu kiểu tệp trong Pascal Dữ liệu kiểu tệp trong Pascal Đọc thêm Màn hình, bàn phím, âm thanh trong Pascal (Phần 1)
Đây là phần hơi nâng cao một chút, vậy bạn nào có niềm đam mê thì hãy cùng Wiki Pascal tìm hiểu nhé ! Màn hình, bàn phím, âm thanh trong Pascal (Phần 1) Đọc thêm Dữ liệu có cấu trúc - Phần 3: Record trong Pascal
Xin chào các bạn, Hôm nay WIKIPASCAL sẽ hướng dẫn các bạn về Dữ liệu có cấu trúc - Phần 3: Record trong Pascal trong Pascal Dữ liệu có cấu trúc - Phần 3: Record trong Pascal Đọc thêm Lưu trữ
- tháng 5 201616
Nhãn
- Bài tập Pascal
- Cơ bản
Báo cáo vi phạm
Từ khóa » Cách Viết Câu Lệnh Rẽ Nhánh Trong Pascal
-
Tin Học 11 Bài 9: Cấu Trúc Rẽ Nhánh - Hoc247
-
Trong Pascal, Cú Pháp Câu Lệnh Rẽ Nhánh If-then Dạng đủ Là
-
Học Pascal/Câu Lệnh Rẽ Nhánh – Wikibooks Tiếng Việt
-
Tin Học 11 Bài 9: Cấu Trúc Rẽ Nhánh
-
Câu Lệnh Rẽ Nhánh Trong Pascal
-
Bài 9: Cấu Trúc Rẽ Nhánh - Tìm đáp án, Giải Bài Tập, để Học Tốt
-
Lệnh Rẽ Nhánh Trong Pascal, Khái Niệm Và Cấu Trúc - Thủ Thuật
-
CẤU TRÚC RẼ NHÁNH TRONG LẬP TRÌNH PASCAL Tin Học 11
-
“Cách Viết Nào Dưới đây Là Cách Viết đúng Của Câu Lệnh Rẽ Nhánh ...
-
Bài 9: Cấu Trúc Rẽ Nhánh - Hoc24
-
Viết Câu Lệnh Rẽ Nhánh Tính: - Hoc24
-
Viết Câu Lệnh Rẽ Nhánh Tính: D - Vietjack.online
-
Câu Lệnh If - Then - Else - Hoàn Chân • Blog