Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 15 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
15
Dung lượng
2,42 MB
Nội dung
Bµi 6. Gi¶i bµi to¸n trªn m¸y tÝnh BÀI6.GIẢIBÀITOÁNTRÊNMÁYTÍNHBài toán: Tìm ước số chung lớn nhất (ƯCLN) của 2 số nguyên dương M và N. Với các giá trị: M = 122877; N = 455544 ƯCLN = M = 25; N = 10 ƯCLN = ? ? 5 BÀI6.GIẢIBÀITOÁNTRÊNMÁYTÍNH Các bước giảibàitoántrênmáytính Bước 1. Xác định bàitoán Bước 2. Lựa chọn hoặc thiết kế thuật toán Bước 3. Viết chương trình Bước 4. Hiệu chỉnh Bước 5. Viết tài liệu Để giảibàitoántrênmáytính cần tiến hành theo các bước như thế nào? BÀI6.GIẢIBÀITOÁNTRÊNMÁYTÍNH 1. Xác định bàitoán - Xác định rõ hai thành phần: Input và output - Ví dụ: với bàitoán tìm ƯCLN Input: Output: 2 số nguyên dương M, N ƯCLN(M,N) ? ? BÀI6.GIẢIBÀITOÁNTRÊNMÁYTÍNH 2. Lựa chọn hoặc thiết kế thuật toán a. Lựa chọn thuật toán - Thời gian thực hiện thuật toán - Độ phức tạp của thuật toán - Số lượng ô nhớ liên quan * Ví dụ: với bàitoán tìm ƯCLN - Nếu M=N thì ƯCLN là M (hoặc N); - Nếu M>N thì ƯCLN(M, N)= ƯCLN(M-N,N); - Nếu M<N thì ƯCLN(M, N)= ƯCLN(M,N-M); Quá trình này lặp đi lặp lại cho đến khi M=N BÀI6.GIẢIBÀITOÁNTRÊNMÁYTÍNH 2. Lựa chọn hoặc thiết kế thuật toán b. Diễn tả thuật toán * Liệt kê: B1: Nhập M, N; B2: Nếu M=N thì lấy ƯCLN(M,N)=M rồi đến B5; B3: Nếu M>N thì MM-N rồi quay lại B2; B4: NN-M rồi quay lại B2; Để diễn tả thuật toán có mấy cách? - 2 cách: + Liệt kê các bước + Vẽ sơ đồ khối B5: Đưa ra kết quả ƯCLN rồi kết thúc; * Sơ đồ khối: Đ Đ S S 5101010 551525 321 Lît NhËp M ,N M =N ? M > N ? N ←N - M M ←M - N Đa ra M ; KÕt thóc M= 25, N = 10 25 = 10 ? 25 >10 M ←25 - 10 15 = 10 ? 15 >10 M ←15 - 10 5 = 10 ? 5 > 10 ? N ← 10 - 5 5 = 5 ? ¦CLN (25,10) = 5 M N BÀI6.GIẢIBÀITOÁNTRÊNMÁYTÍNH 3. Viết chương trình - Là tổng hợp giữa việc: + Lựa chọn cách tổ chức dữ liệu. + Sử dụng ngôn ngữ lập trình diễn đạt đúng thuật toán. BÀI6.GIẢIBÀITOÁNTRÊNMÁYTÍNH 4. Hiệu chỉnh - Sau khi viết xong chương trình cần phải thử chương trình bằng 1 số Input tiêu biểu (test). - Trong quá trình thử này nếu phát hiện sai sót thì phải sửa lại chương trình. - Ví dụ: với bàitoán tìm ƯCLN M = 13; N = 17 ƯCLN = 1 M = 25; N = 10 ƯCLN = 5 M = 25; N = 25 ƯCLN = 25 BÀI6.GIẢIBÀITOÁNTRÊNMÁYTÍNH 5. Viết tài liệu - Mô tả chi tiết toàn bộ bài toán, thuật toán, thiết kế chương trình, kết quả thử nghiệm và hướng dẫn cách sử dụng. [...]... bước giảibàitoántrênmáytính Bước 1 Xác định bàitoán Bước 2 Lựa chọn hoặc thiết kế thuật toán Bước 3 Viết chương trình Bước 4 Hiệu chỉnh Bước 5 Viết tài liệu DẶN DÒ - Ôn lại bài học hôm nay, trả lời các câu hỏi sgk-tr51 - Làm Company Logo Xác định toán Lựa chọn thiết kế thuật tốn Viết chương trình Hiệu chỉnh Viết tài liệu Ví dụ : Tìm ước chung lớn (UCLN) hai số nguyên dương M N a.xác định toán ? Input : M,N Output : UCLN(M,N) Xác định toán xác định rõ hai thành phần: - Input - Output a Lựa chọn thuật toán Cách BÀI TỐN Có thể có nhiều cách giải ( thuật tốn ) - Ít phức tạp thời gian thực - Chiếm nhớ - Thực phép tốn, dễ hiểu Cách Cách KẾT QUẢ b) Diễn tả thuật toán Ví dụ :Tìm ước chung lớn (ƯCLN) hai số nguyên dương M N Xác định toán Input: Nhập M , N; Output: ƯCLN(M , N) Ý tưởng Sử dụng điều biết sau: Nếu M = N giá trị chung ƯCLN M N; Nếu M > N ƯCLN(M, N) = ƯCLN(M – N,N) Nếu M < N ƯCLN(M, N) = ƯCLN(M,N- M); Thuật toán a) Thuật toán diễn tả cách liệt kê Bước 1: Nhập M, N; Bước 2: Nếu M = N đưa ƯCLN(M,N)=M ; Kết thúc Bước 3: Nếu M > N M M - N quay lại bước 2; Bước 4: N N - M quay lại bước 2; b) Thuật toán diễn tả sơ đồ khối Nhập M N Sai Đưa M; Kết thúc M>N? Đúng Đúng M=N? Sai M M-N N N-M c) Mô tả số liệu cụ thể Cho hai số: N = 25 M = 10 tìm ƯCLN N=25 Lần duyệt thứ M=10 Lần duyệt thứ N=5 M