intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Kỹ thuật lập trình: Chương 4 - Trần Quang

Chia sẻ: _ _ | Ngày: | Loại File: PDF | Số trang:32

8
lượt xem
2
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Kỹ thuật lập trình: Chương 4 - Cấu trúc rẽ nhánh, được biên soạn gồm các nội dung chính sau: Đặt vấn đề; Câu lệnh; Chương trình; Cấu trúc: if; Cấu trúc: if-else; Cấu trúc: if-else lồng nhau; Cấu trúc: switch-case. Mời các bạn cùng tham khảo!

Chủ đề:
Lưu

Nội dung Text: Bài giảng Kỹ thuật lập trình: Chương 4 - Trần Quang

  1. Chương 04 CẤU TRÚC RẼ NHÁNH Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 1
  2. Nội dung  Đặt vấn đề  Câu lệnh  Chương trình  Cấu trúc: if  Cấu trúc: if-else  Cấu trúc: if-else lồng nhau  Cấu trúc: switch-case Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 2
  3. Đặt vấn đề Bài toán 1: nhập một ngày (gồm ngày, tháng, năm)  Một chương trình tốt không được giả sử người dùng phải nhập đúng ngày, tháng, năm (đã thuộc miền giá trị cho phép)  Để kiểm tra trường hợp nhập sai tháng, ta có thể sử dụng cấu trúc: if ( (tháng < 0) hoặc (tháng > 12) ) // Xử lý lỗi với tháng nhập sai endif Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 3
  4. Đặt vấn đề Bài toán 2: Giải phương trình bậc 2  Chương trình cần yêu cầu nhập các hệ số A, B, C  Tuy nhiên A và B nhập vào không chắc sẽ khác 0 -> có thể suy biến về phương trình bậc 1  Dùng cấu trúc rẽ nhánh để kiểm tra các điều kiện nói trên Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 4
  5. Câu lệnh  Câu lệnh là một câu viết bằng ngôn ngữ lập trình. Kết thúc câu lệnh là dấu chấm phẩy (;)  Các loại câu lệnh  Câu lệnh đơn (câu đơn)  Ví dụ: câu khai báo biến, câu lệnh gán, …  Câu lệnh phức (câu phức)  Nhiều câu lệnh được đặt trong cặp ngoặc { … }  Cạu lệnh thuộc cấu trúc điều khiển như: if, if- else, switch, for, while, do … while  Câu lệnh rỗng:  Chỉ có dấu ; đứng cuối Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 5
  6. Chương trình  Chương trình là một danh sách tuyến tính (có thứ tự) của các câu lệnh (đơn, phức, …)  Mặc định máy tính sẽ thực hiện lần lượt từ câu đầu tiên đến câu lệnh cuối cùng.  Trừ khi gặp các cấu trúc điều khiển như:  Rẽ nhánh  if, if-else, switch  Lặp  for, while, do … while Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 6
  7. Câu lệnh: if  Cú pháp: if () if () if () { } Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 7
  8. Câu lệnh: if : false Biểu thức luận lý hoặc phải chuyển đổi sang luận lý được true : một trong các loại câu lệnh đơn, kép hay rỗng Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 8
  9. Câu lệnh: if  Cú pháp + phong cách lập trình: if () if () { //có thể có 1 hay nhiều câu lệnh if () } if () { TAB //có thể có 1 hay nhiều câu lệnh } TAB Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 9
  10. Câu lệnh: if-else  Cú pháp: if () else Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 10
  11. Câu lệnh: if-else : false Biểu thức luận lý hoặc phải chuyển đổi sang luận lý được true , : một trong các loại câu lệnh đơn, kép hay rỗng Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 11
  12. Câu lệnh: if-else  Cú pháp + phong cách lập trình if () else if () { if () { //... //... } } else else { { //... //... } } Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 12
  13. Cần phân rã các công việc con trong đó để có giải thuật hoàn thiện Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 13
  14. Giải Phương trình bậc 2 #include #include void main(){ float a, b, c, delta; printf("Nhap vao gia tri cac so a, b, c: \n"); scanf("%f%f%f", &a, &b, &c); if(a == 0) { // giai phuong trinh bac 1 } else { delta = b*b - 4*a*c; if(delta < 0) // tiep tuc giai phuong trinh bac 2 ... } getch(); } Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 14
  15. Câu lệnh: if-else lồng nhau Bài toán: xếp loại học sinh dựa theo điểm  Yếu: điểm thuộc [0, 5]  Trung bình: điểm thuộc [5, 6.5)  Khá: điểm thuộc [6.5, 8)  Giỏi: điểm thuộc [8, 9.5)  Xuất sắc: điểm thuộc [9.5, 10] Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 15
  16. Câu lệnh: if-else lồng nhau Đầu vào: điểm false false false false diem < 5 diem < 6.5 diem < 8 diem < 9.5 true true true true loai = “G” loai = “XS” loai = “K” loai = “TB” loai = “Y” Đầu ra: loại Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 16
  17. Câu lệnh: if-else lồng nhau Có nhiều cách biểu diễn if () else if () else if () else if () else if () else if () else Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 17
  18. Câu lệnh: if-else lồng nhau if () else if () else if () else if () else if () else if () else Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 18
  19. Câu lệnh: if-else lồng nhau #include #include void main(){ float diem = 8.7f; Phong cách: if(diem < 5.0f) Canh lề thẳng đứng printf("%s", "Yeu"); else if(diem < 6.5f) printf("%s", "Trung Binh"); else if(diem < 8.5f) printf("%s", "Kha"); else if(diem < 9.5f) printf("%s", "Gioi"); else printf("%s", "Xuat sac"); getch(); } Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 19
  20. Biểu thức điều kiện ? : Cú pháp : ? : nếu đúng thì trả về , ngược lại trả về Ví dụ: lệnh if (hours > 40) rate = 0.45; else rate = 0.02; có thể thay bằng : rate = (hours > 40) ? 0.45 : 0.02; Trần Quang Kỹ thuật lập trình Chương 04: Cấu trúc rẽ nhánh © 2016 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
4=>1