Tải bản đầy đủ (.pptx) (15 trang)

Bai 6 Giai bai toan tren may tinh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (720.17 KB, 15 trang )

<span class='text_page_counter'>(1)</span>GiẢI BÀI TOÁN TRÊN MÁY TÍNH.

<span class='text_page_counter'>(2)</span> Em hãy nêu các bước làm một bài toán trên giấy? Các bước giải một Các bước giải một bài toán trên máy tính bài toán trên giấy 1. Xác định giả thiết, kết luận 2. Lựa chọn hoặc thiết kế cách giải 3. Viết lời giải 4. Chỉnh sửa sai sót 5. Nộp bài. 1. Xác định bài toán 2. Lựa chọn hoặc thiết kế thuật toán 3. Viết chương trình 4. Hiệu chỉnh 5. Viết tài liệu.

<span class='text_page_counter'>(3)</span> 1. Xác định bài toán -Xác định Input -Xác định Output -Xác định mối quan hệ giữa Input và Output. Ví dụ: Tìm UCLN của hai số nguyên dương M và N Input: Số nguyên dương M,N Output: UCLN của M và N Mối quan hệ: UCLN là số nguyên dương lớn nhất mà M và N cùng chia hết..

<span class='text_page_counter'>(4)</span> Một bài toán có thể có bao nhiêu thuật toán để giải? Bài toán. Có thể có nhiều. thuật toán để giải Chỉ giải một bài toán. Một thuật toán có thể giải bao nhiêu bài toán?  ta cần chọn hoặc thiết kế thuật toán tốt nhất..

<span class='text_page_counter'>(5)</span> 2. Lựa chọn hoặc thiết kế thuật toán Đây là bước quan trọng nhất để giải một bài toán. a. Lựa chọn hoặc thiết kế thuật toán Lựa chọn thuật toán - Khi có từ một thuật toán trở lên. Thiết kế thuật toán khi chưa có thuật toán..

<span class='text_page_counter'>(6)</span> Ví dụ 1: Tìm UCLN của hai số nguyên dương M, N Thuật toán 1: Sử dụng phép trừ Nếu M=N thì UCLN(M,N)=N Nếu M<N thì UCLN(M,N)=UCLN(M,N-M) Nếu M>N thì UCLN(M,N)=UCLN(M-N,N). M = 30, N = 8. Thuật toán 2: Sử dụng phép chia Nếu M chia hết cho N thì UCLN(M,N)=N Nếu M<N thì CLN(M,N)=UCLN(N,M) Nếu M>N thì LN(M,N)=UCLN(N,phần dư của M chia N). M = 30, N = 8. UCLN(30,8) = UCLN(22,8) UCLN(22,8) = UCLN(14,8) UCLN(14,8) = UCLN(6,8) UCLN(6,8) = UCLN (6,2) UCLN(6,2) = UCLN(4,2) UCLN(4,2) = UCLN (2,2) UCLN(2,2) = 2. UCLN(30,8) = UCLN(8,6) UCLN(8,6) = UCLN(6,2); UCLN(6,2) = 2;. Tiêu chí thời gian.

<span class='text_page_counter'>(7)</span> Tiêu chí lựa chọn thuật toán + Thời gian + Hiệu quả về không gian + Tính khả thi khi cài đặt thuật toán.

<span class='text_page_counter'>(8)</span> b. Diễn tả thuật toán Ví dụ: Tìm ƯCLN của hai số nguyên dương M và N Bước 1: Nhập M, N; Bước 2: Nếu M =N thì xuất N rồi kết thúc; Bước 3: Nếu M<N thì N ←N-M, rồi quay lại bước 2; Bước 4: M ←M –N,rồi quay lại bước 2;. Nhập hai số M và N. Đ Xuất M và kết thúc.. M=N. S N←N-M. M>N Đ S M←M-N. Liệt kê. Sơ đồ khối.

<span class='text_page_counter'>(9)</span> 3. Viết chương trình •Lựa chọn cấu trúc dữ liệu và NNLT để mô tả các thao tác của thuật toán. •Viết chương trình trong NNLT nào ta cần phải tuân theo đúng quy định ngữ pháp của NNLT đó.

<span class='text_page_counter'>(10)</span> 4. Hiệu chỉnh Thử lại chương trình bằng cách thực hiện bài toán với một số bộ Test tiêu biểu nếu sai thì sửa sau đó thử lại Test là các bộ input tiêu biểu mà đã biết trước Output Ví dụ: Với chương trình giải phương trình bậc 2: ax2 + bx + c =0 (a≠0) Ta có bộ test là các trường hợp a, b, c làm cho ∆ > 0 ; ∆ =0; ∆ < 0; a = 1; b = -5; c = 6 →x1 =3 ; x2=2 a = 1; b = -4; c = 4 →Nghiệm kép = 2 a = 1; b = 4; c = 8 →Pt vô nghiệm.

<span class='text_page_counter'>(11)</span> Ví dụ: Kiểm tra tính nguyên tố của số nguyên dương N. Hãy đưa ra các test tiêu biểu. Test 1. Trường hợp N=1 Input : N=1 Output: không là số nguyên tố Input: N=2 Test 2. Trường hợp N=2 Output: Là số nguyên tố. Test 2. Trường hợp N=3 Input: N=3. Output: Là số nguyên tố. Test 4. Trường hợp N>4 và N là số nguyên tố Input: N=11 Output: là số nguyên tố. Test 5. Trường hợp N>4 và N không là số nguyên tố Input: N=12 Output: không là số nguyên tố.

<span class='text_page_counter'>(12)</span> 5. Viết tài liệu Mô tả chi tiết 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 sử dụng..

<span class='text_page_counter'>(13)</span> Các bước giải bài toán trên máy tính 1. Xác định bài toán 2. Lựa chọn hoặc thiết kế thuật toán 3. Viết chương trình 4. Hiệu chỉnh 5. Viết tài liệu.

<span class='text_page_counter'>(14)</span> Câu hỏi trắc nghiệm Câu 1: Giải bài toán trên máy tính được tiến hành qua mấy bước? A. 2 bước B. 3 bước C. 4 bước D. 5 bước D. 5 bước Câu 2: Tiêu chí lựa chọn hoặc thiết kế thuật toán là? A. Hiệu quả về thời gian B. Hiệu quả về không gian C. Khả thi khi cài đặt. D. cả Tấtđều cả đều D. Tất đúngđúng. Câu 3: Viết chương trình là? A. Biểu diễn thuật toán B. Dùng NNLT để diễn đạt bài toán C. Dùng và cấu hợpliệu để thích diễn tả thuật ngôn ngữ lập trúc trìnhdữ và liệu cấuthích trúc dữ hợp để C. Dùng NNLT toán tả thuật toán diễn D. Tất cả đều đúng.

<span class='text_page_counter'>(15)</span>

<span class='text_page_counter'>(16)</span>

×