Xem mẫu

  1. Chương 6 LẬP KẾ HOẠCH VIẾT CHƯƠNG TRÌNH TRÊN MÁY TÍNH 1
  2. Nội dung 11.1. Mục đích của việc lập kế hoạch chương trình 11.2 Thuật giải 11.3. Lưu đồ 11.4. Bảng quyết định 11.5. Mã giả 2
  3. Mục đích của việc lập kế hoạch chương trình  Mục đích: để tạo một chương trình hiệu quả. Kế hoạch của một chương trình bao gồm định nghĩa các bước thực hiện của chương trình.  Các bước thực hiện:  Thu thập thông tin: xác định dữ liệu nhập và xuất  Xây dựng cấu trúc dữ liệu: xác định các kiểu dữ liệu, cách tổ chức và cài đặt dữ liệu  Xây dựng thuật giải: xác định các công việc cần phải giải quyết 3
  4. Thuật giải là gì?  Còn gọi là thuật toán là tập các bước có thể tính toán được để đạt được kết quả mong muốn.  Được xây dựng trên cơ sở của cấu trúc dữ liệu đã được chọn.  Có thể được minh họa bằng ngôn ngữ tự nhiên (natural language), bằng sơ đồ (flow chart) hoặc bằng mã giả (pseudo code). 4
  5. Thuật giải là gì?  Chất lượng của một thuật giải phải có những đặc điểm sau:  Mỗi lệnh phải rõ ràng và chính xác.  Mỗi lệnh nên thực hiện trong thời gian giới hạn.  Một hay nhiều lệnh không nên lặp lại vô hạn.  Sau khi thực hiện các chỉ thị, thuật giải kết thúc thì phải thu được kết quả mong đợi. 5
  6. Các mẫu của thuật giải  Ví dụ: Xây dựng các thuật giải sau:  Tính tổng, hiệu, tích, thương của hai số nguyên.  Nhập điểm toán, lý, hóa. Tính điểm trung bình  Viết chương trình giải phương trình bậc nhất  Tính lương cho nhân viên biết Luong = LCB + Thuong Thảo luận 6
  7. Chất lượng của giải thuật Các yếu tố chính thường dùng để đánh giá chất lượng của một thuật toán là:  Yêu cầu thời gian: là thời gian yêu cầu để thực thi một chương trình trên hệ thống máy tính. Nếu thời gian yêu cầu ít thì đó là một thuật toán tốt.  Yêu cầu bộ nhớ: là vùng nhớ trống yêu cầu để thực thi một chương trình trên hệ thống máy tính. Nếu yêu cầu bộ nhớ ít thì đó là một thuật toán tốt.  Độ chính xác  Tính tổng quát: có thể xử lý hàng loạt các dữ liệu đầu vào. 7
  8. Mô tả của giải thuật  Các cách mô tả một thuật toán:  Bằng chương trình (ngôn ngữ tự nhiên) - As programs  Bằng lưu đồ - As flowcharts  Bằng mã giả - As pseudocodes  Bằng bảng quyết định - As decision tables 8
  9. Lưu đồ - Flowcharts  Lưu đồ là một bản vẽ mô tả một thuật toán.  Lưu đồ hoạt động như một lộ trình cho lập trình viên và hướng dẫn họ cách đi từ điểm bắt đầu đến điểm kết thúc. 9
  10. Tại sao phải sử dụng lưu đồ?  Khi vẽ một lưu đồ, lập trình viên không quan tâm đến yếu tố ngôn ngữ lập trình. Họ quan tâm hoàn toàn đến tính luận lý của thủ tục.  Bất kỳ lỗi logic nào của thủ tục có thể bị bỏ qua một cách dễ dàng trong một chương trình.  Khi một lưu đồ đã có, lập trình viên có thể bỏ qua tính luận lý và chỉ quan tâm đến viết mã lệnh cho những thao tác theo lưu đồ.  Thường dùng cho những người mới bắt đầu lập trình để giảm bớt số lỗi và những sơ sót trong chương trình. 10
  11. Các kí hiệu cơ bản của lưu đồ 11
  12. Các kí hiệu cơ bản của lưu đồ 12
  13. Các kí hiệu cơ bản của lưu đồ 13
  14. Các kí hiệu cơ bản của lưu đồ 14
  15. Các kí hiệu cơ bản của lưu đồ 15
  16. 16
  17. Các kí hiệu bổ sung của lưu đồ 17
  18. Các kí hiệu bổ sung của lưu đồ 18
  19. Các kí hiệu của lưu đồ  Ví dụ: Một sinh viên có mặt trong một kì thi với tổng cộng 10 môn học, mỗi môn học có điểm tối đa là 100 điểm.  Mỗi sinh viên gồm: Mã số của sinh viên, tên điểm các môn học.  Vẽ một lưu đồ cho giải thuật để tính và in ra tỷ lệ phần trăm điểm của mỗi sinh viên trong kì thi này và sau đó in ra theo mã sinh viên và tên sinh viên. 19
  20. Các kí hiệu của lưu đồ  Example 1: Make a list of only students who have passed (obtained 30% marks) in the examination. And print out the total number of such as students. + Assume: input data is terminated by sentinel value is 9999999 Solution: There are two decision symbols.  The first one checks for a trailer record by comparing Rollno against the value 9999999 to determine if the processing is complete.  The second one checks whether student has passed or failed by comparing percentage marks 20 obtained against 30.
nguon tai.lieu . vn