Slide lập kế hoạch cho chương trình máy tính

59 872 1
Slide lập kế hoạch cho chương trình máy tí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

Planning the Computer Program (Lập kế hoạch cho chương trình máy tính) Nội dung  Mục đích việc lập kế hoạch chương trình  Thuật giải  Lưu đồ  Mã giả  Bảng định Mục đích việc lập kế hoạch chương trình Mục đích: – Để viết chương trình hiệu – Logic chương trình phức tạp, để viết chương trình đúng, người lập trình cần lập kế hoạch trước Do đó, trước tìm hiểu làm để viết chương (chương kế) tìm hiểu làm để lập kế hoạch cho chương trình máy tính Cách thực hiện: – Thu thập thông tin: xác định liệu nhập xuất – Xác định kiểu liệu, cách tổ chức cài đặt liệu – Xác định công việc cần phải giải Thuật giải -Algorithm  Thuật toán: – Liên quan đến tính logic chương trình – tập bước tính toán (là tập hợp hàm, thủ tục, cấu trúc điều khiển xếp theo trình tự) nhằm thực toán định để đạt kết mong muốn – Được xây dựng sở cấu trúc liệu chọn Thuật giải -Algorithm  Ví dụ: thuật toán để giải phương trình bậc ax + b = Nếu a = Nếu b = phương trình có vô số nghiệm Nếu b ≠ phương trình vô nghiệm Nếu a ≠ Phương trình có nghiệm x = -b/a Thuật giải -Algorithm Thuật giải phải có đặc điểm sau: • Mỗi lệnh phải rõ ràng xác • Mỗi lệnh nên thực 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 thực thị, thuật giải kết thúc phải thu kết mong đợi Thuật giải -Algorithm  Có loại Giải thuật: – Xác định: Là giải thuật áp dụng cho toán mà lời giải biểu diễn dạng toán học Trong loại giải thuật bước giải toán, vòng lặp sử dụng, xác định từ trước sử dụng cấu trúc rẽ nhánh Ví dụ: Tính tổng số từ tới 100 – Không xác định: Là giải thuật áp dụng cho toán mà lời giải chưa có sẵn mà có bước định Ví dụ: Nhập số nguyên dương ngẫu nhiên, tính tổng số từ tới số Thuật giải -Algorithm  Ví dụ: Tìm số lớn số A, B, C Giải: -Bắt đầu -B1: Nhập số A, B, C -B2: Tìm số lớn số A B, lưu vào biến Max_AB -B3: Tìm số lớn số Max_AB C -Xuất giá trị Max -Kết thúc Thuật giải -Algorithm Ví dụ: Xây dựng thuật giải sau: – Nhập số nguyên Tính tổng, hiệu, tích, thương hai số nguyên – Nhập điểm toán, lý, hóa Tính điểm trung bình – Tính trung bình N số nguyên – Viết chương trình giải phương trình bậc hai: ax2+ bx+c=0( với a# 0) – Tính lương cho nhân viên biết: Luong = LCB + Thuong Thảo luận Chất lượng giải thuật Các yếu tố thường dùng để đánh giá chất lượng thuật toán là: Yêu cầu thời gian: thời gian yêu cầu để thực thi chương trình hệ thống máy tính Nếu thời gian yêu cầu thuật toán tốt Yêu cầu nhớ: vùng nhớ trống yêu cầu để thực thi chương trình hệ thống máy tính Nếu yêu cầu nhớ thuật toán tốt Độ xác : độ xác cách giải cho vấn đề Tính tổng quát: xử lý hàng loạt liệu đầu vào Mã giả cho cấu trúc điều khiển Có ba cấu trúc điều khiển logic sau : Logic trình tự, Logic lựa chọn, Logic lặp (hay vòng lặp) Logic (Sequence Logic)  Logic dùng để thực lệnh theo trình tự Cấu trúc lưu đồ mã giả Lệnh Lệnh Lệnh Lệnh (a) Lưu đồ (b) Mã giả Cấu trúc lưu đồ mã giả Logic lựa chọn  Còn gọi logic định, dùng để đưa định  loại logic lựa chọn thường sử dụng: IF….THEN…ELSE, IF… THEN, CASE If…THEN ELSE Logic lựa chọn If…THEN Logic lựa chọn CASE Logic lặp lại (hay vòng lặp)  Sử dụng có nhiều lệnh thực thi vài lần phụ thuộc vào vài điều kiện  cấu trúc lặp thường sử dụng: – DO WHILE – REPEAT….UNTIL Logic lặp lại (hay vòng lặp) DO WHILE Logic lặp lại (hay vòng lặp) REPEAT…UNTIL Ví Dụ Về Mẫu mã giả Ví Dụ Về Mẫu mã giả ???? Ví Dụ Về Mẫu mã giả Viết mã giả cho thuật giải sau: – Nhập điểm toán, lý, hóa Tính điểm trung bình – In tất số nguyên từ đến N – Tính tổng N số nguyên – Viết chương trình giải phương trình bậc hai: ax2+ b2+c=0( với a# 0) – Tính lương cho nhân viên biết: Luong = LCB + Thuong Thảo luận lớp Ưu điểm Nhược diểm mã giả Ưu điểm: • Biến đổi mã giả thành ngôn ngữ lập trình dễ dàng so với lưu đồ hay bảng định • Dễ điều chỉnh • Lối viết mã giả tốn thời gian hơn, tương đương với cách viết lưu đồ • Mã giả dễ viết ngôn ngữ lập trình có vài luật để tuân theo giúp lập trình viên tập trung vào logic chương trình Ưu điểm Nhược diểm mã giả Nhược điểm: • Mã giả biểu diễn đồ họa chương trình • Khi dùng mã giả luật chuẩn để làm theo Các lập trình viên sử dụng phong cách để viết mã giả nên khó khăn vấn đề truyền đạt nội dung thiếu tiêu chuẩn hoá • Khó cho người học CÂU HỎI VÀ BÀI TẬP Vẽ lưu đồ viết mã giả tương ứng cho toán sau: Nhập vào số nguyên phép toán Nếu phép toán ‘+’, ‘-‘, ‘*’ in kết qua tổng, hiệu, tích số Nếu phép toán ‘/’ kiểm tra xem số thứ có khác không hay không? Nếu khác không in thương chúng, ngược lại in thông báo “Không thể chia số cho 0!” Yêu cầu người thực chương trình nhập vào số nguyên dương tháng năm in số ngày tháng - Tháng có 31 ngày: 1, 3, 5, 7, 8, 10, 12 - Tháng có 30 ngày: 4, 6, 9, 11 - Tháng có 28 29 ngày : - Nếu nhập vào số 12 in câu thông báo “Không có tháng vậy” CÂU HỎI VÀ BÀI TẬP Có ba số nhập vào biến A, B, C Sau in số lớn ba số In tất sinh viên 20 tuổi lớp Mẫu tin đầu vào chứa tên tuổi sinh viên Giả định giá trị kết thúc 99 cho trường tuổi mẫu tin lưu động In tên tuổi sinh viên lớn nhỏ lớp Mẫu tin đầu vào chứa tên tuổi sinh viên Giả định giá trị kết thúc 99 cho trường tuổi mẫu tin lưu động [...]... điểm kết thúc  Lưu đồ như một công cụ kế hoạch của một chương trình để tổ chức một dãy các bước cần thiết nhằm giải quyết một vấn đề bằng máy tính 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. .. diễn một thuật giải: – Bằng chương trình - As programs – Bằng lưu đồ - As flowcharts – Bằng mã giả - As pseudocodes – Bằng bảng quyết định – As decision tables  Khi thuật toán được biểu diễn bằng một ngôn ngữ lập trình thì nó trở thành một chương trình Lưu đồ - Flowcharts  Lưu đồ: là một hình ảnh, 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ọ... 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 Các kí hiệu cơ bản của lưu đồ  Các ký hiệu trong lưu đồ: Các kí hiệu cơ bản của lưu đồ (a)... viên, với số môn học là 10 cho 50 sv Thảo luận tại lớp Các kí hiệu cơ bản của lưu đồ Bài tập 2: Vẽ lưu đồ cho các thuật giải sau: – Nhập điểm toán, lý, hóa Tính điểm trung bình – Tính trung bình của N số nguyên đầu tiên – Viết chương trình giải phương trình bậc hai: ax2+ b2+c=0( với a# 0) – Tính lương cho nhân viên biết: Luong = LCB + Thuong Thảo luận tại lớp Lưu đồ - Flowchart Ví dụ 2: sinh viên có mặt... lưu đồ  Ví dụ1: vẽ lưu đồ thuật toán tính điểm trung bình của sinh viên, với số môn học là 10 Các kí hiệu cơ bản của lưu đồ Bài tập 1: 1 Vẽ lưu đồ cho thuật toán nhập vào 2 số a,b Tính và xuất tổng, tích, hiệu, thương của 2 số 2 Vẽ lưu đồ thuật toán giải phương trình bậc nhất : ax+b=0 3 Vẽ lưu đồ thuật toán tính điểm trung bình của sinh viên, với số môn học là 10 cho 50 sv Thảo luận tại lớp Các kí hiệu... những đường thẳng nối tiếp nhau  Nếu một biểu đồ tiến trình kéo dài hơn một trang thì nên tách tại một điểm nhập vào và điểm xuất ra  Ngoài ra nhũng kết nối nên đặt nhãn để kết nối những phần của biểu đồ trên các trang khác nhau 35 Thuận lợi và hạn chế của lưu đồ Thuận lợi:  Giao tiếp tốt hơn  Phân tích hiệu quả  Kết hợp hiệu quả  Sơ đồ chương trình hợp lý  Tạo mã lệnh hiệu quả  Việc gỡ lỗi hệ... nhất  Duy trì mức độ ổn định cho một biểu đồ  Không xây dựng lược đồ chi tiết hoặc một lược đồ chỉ là một đồ thị biểu diễn từng bước một của một chương trình  Những ký hiệu của biểu đồ nên là những câu phát biểu thông dụng và dễ hiểu  Thống nhất trong việc sử dụng tên và các biến trong biểu đồ Các luật của lưu đồ  Đi từ trái qua phải và từ trên xuống dưới trong quá trình xây dựng biểu đồ  Nên... hiệu quả  Kết hợp hiệu quả  Sơ đồ chương trình hợp lý  Tạo mã lệnh hiệu quả  Việc gỡ lỗi hệ thống dễ dàng  Việc kiểm tra hệ thống hiệu quả  Một biểu đồ tiến trình rất hữu ích trong việc kiểm tra dữ liệu và các hoạt động của chương trình 36 ... câu lệnh n False True default: Kết thúc Các câu lệnh Các kí hiệu cơ bản của lưu đồ Cấu trúc lặp Cấu trúc lặp Dãy biểu thức 1 false Điều kiện true Khối lệnh lặp Dãy biểu thức 2 exit 20 Cấu trúc lặp false Điều kiện true Khối lệnh lặp Thoát 21 Cấu trúc lặp Khối lệnh lặp true Điều kiện false Thoát 22 Các kí hiệu cơ bản của lưu đồ Ví dụ: Vẽ lưu đồ thuật toán nhập vào 1 số và cho biết số đó nhỏ hơn, lớn hơn... 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 để in ra danh sách sinh viên có tỷ lệ phần trăm điểm >=30% trong kỳ thi này, và sau đó in ra theo mã sinh viên và tên sinh viên Giả sử điều kiện kết thúc là Rollno=9999999 28 Các kí hiệu của lưu đồ Bài tập 3: Một sinh viên có mặt trong một kì thi với tổng cộng 10 môn ... tạp, để viết chương trình đúng, người lập trình cần lập kế hoạch trước Do đó, trước tìm hiểu làm để viết chương (chương kế) tìm hiểu làm để lập kế hoạch cho chương trình máy tính Cách thực hiện:... việc lập kế hoạch chương trình  Thuật giải  Lưu đồ  Mã giả  Bảng định Mục đích việc lập kế hoạch chương trình Mục đích: – Để viết chương trình hiệu – Logic chương trình phức tạp, để viết chương. .. công cụ kế hoạch chương trình để tổ chức dãy bước cần thiết nhằm giải vấn đề máy tính Tại phải sử dụng lưu đồ?  Khi vẽ 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ọ

Ngày đăng: 13/12/2015, 01:32

Mục lục

  • Slide 1

  • Nội dung

  • Mục đích của việc lập kế hoạch chương trình

  • Thuật giải -Algorithm

  • Thuật giải -Algorithm

  • Thuật giải -Algorithm

  • Thuật giải -Algorithm

  • Thuật giải -Algorithm

  • Thuật giải -Algorithm

  • Chất lượng của giải thuật

  • Biểu diễn thuật giải

  • Lưu đồ - Flowcharts

  • Tại sao phải sử dụng lưu đồ?

  • Các kí hiệu cơ bản của lưu đồ

  • Các kí hiệu cơ bản của lưu đồ

  • Các kí hiệu cơ bản của lưu đồ

  • Các kí hiệu cơ bản của lưu đồ

  • Slide 18

  • Các kí hiệu cơ bản của lưu đồ

  • Slide 20

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

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

Tài liệu liên quan