Ph¸t hiÖn sai sãt vµ chØnh söa th«ng qua c¸c Test.[r]
(1)18 6 Giải toán m¸y tÝnh
Bướcư1.ưXácưđịnhưbàiưtốn
Bướcư2.ưLựaưchọnưhoặcưthiếtưkếưthuậtưtốn
Bướcư3.ưViếtưchươngưtrình Bướcư4.ưHiệuưchỉnh
(2)1.ưXácưđịnhưbàiưtoán
Việc xác định toán Xác định Input/Output mối liên hệ chúng
Các thông tin cần đ ợc nghiên cứu để lựa chọn thuật toán, cách thể hiện, đại l ợng phát sinh ngơn ngữ lập trình thích hợp
Tiết 18 Bài 6 Giải toán máy tÝnh
Ví dụ : Tìm đ a nghiệm ph ơng trình ax +b = * Xác định toán
- Input:
- Output:
C¸c sè thùc a, b
(3)2.ưLựaưchọnưhoặcưthiếtưkếưthuậtưtoán a Lựa chọn thuật toán
Thit k hoc lựa chọn thuật tốn đ có để giải tốn.ã
Các tài nguyên nh : Thời gian thực hiện, số l ợng ô nhớ
La chn thut tốn cho việc viết ch ơng trình cho thuật tốn phức tạp
Cần vào l ợng tài ngun mà thuật tốn địi hỏi l ợng tài nguyên thực tế cho phép
(4)b Diễn tả thuật toán
Ví dụ 1: Tìm ớc chung lớn (ƯCLN) hai số nguyên d ơng M N
* Xỏc nh tốn
- Input: Cho M, vµ N
- Output: ¦CLN(M, N)
* ý t ëng: Sư dụng điều đ biết sau:Ã
- Nu M = N giá trị chung ƯCLN M N - Nếu M < N ƯCLN(M, N) = ƯCLN(M, N - M)
(5)Thuật toán
* Cách liệt kê
B íc 1: NhËp M, N
B ớc 2: Nếu M = N lấy giá trị chung làm ƯCLN chuyển đến b ớc
B íc 3: NÕu M > N th× M M N– råi quay l¹i b íc
B íc 4: N N – M råi quay l¹i b íc
(6)* Sơ đồ khối
NhËp M vµ N
M = N ?
§ a M råi kÕt thóc
§óng
M > N ? Sai
M M - N
N N - M
§óng
(7)Ví dụ 2: Tìm đ a nghiệm ph ơng trình ax +b = * Xác định tốn
- Input: C¸c sè thực a, b
- Output: Tất số thùc x tho¶ m n ax+b = 0·
* ý t ởng: Sử dụng điều đ biết sau:Ã - Nếu a=0, b0 thông báo vô nghiệm
- Nếu a=0, b=0 thơng báo ph ơng trình nghiệm với giá trị
(8)3.ưViếtưchươngưtrình
Khi viết ch ơng trình cần lựa chọn cách tổ chức liệu sử dụng ngôn ngữ lập trình để diễn tả thuật tốn
* Cách liệt kê Thuật toán
B ớc 2: Nếu a=0, b0 thông báo vô nghiệm, kết thúc B ớc 3: Nếu a=0, b=0 thông báo ph ơng trình nghiệm
ỳng vi mi giỏ tr, kết thúc
B íc 4: NÕu a≠0 th× x=-b/a thông báo ph ơng trình
có nghiệm nhÊt lµ x, råi kÕt thóc
(9)4.HiƯuchØnh
Begin
Dùng ch ơng trình soạn thảo văn (EDITOR) để viết sửa lỗi ch ng trỡnh
Gọi ch ơng trình dịch COMPILER và ch ơng trình kết nối
Có lỗi cú pháp
Chạy thử ch ơng trình vừa đ ợc dịch xong
Có lỗi giải thuật?
Có
Có Không
Không
(10)5.ưViếtưtàiưliệu
Mô tả ch ơng trình h ớng dẫn sư dơng
(11)Ghiưnhớ:ưCácưbướcưgiảiưbàiưtốnưtrênưmáyưtính
- Xác định toán:
Xác định Input/Output mối liên hệ chúng - L a chọn xây dựng thuật toán:
Thiết kế lựa chọn thuật toán đ có để giải tốn.ã
- ViÕt ch ơng trình: Lựa chọn cách tổ chức liệu
sử dụng ngơn ngữ lập trình để diễn tả thuật toán - Hiệu chỉnh:
(12)