không luôn luôn đúng... Gi i toán trên máy tính... Gi i toán trên máy tính... Gi i toán trên máy tính... Gi i toán trên máy tính... Gi i toán trên máy tính... Gi i toán trên máy tính.
Trang 1GVGD: Tr ng Ph c H i
T ng quan gi i thu t
Trang 3Bài toán và gi i thu t
Khái ni m bài toán
ta ho c h tr m t ph n
Trang 4Bài toán và gi i thu t
Mô t bài toán
Bài toán đ c mô t thông qua các thành ph n input và
Trang 5Bài toán và gi i thu t
Trang 6Bài toán và gi i thu t
Ví d không ph i bài toán
khoa CNTT Cho bi t sinh viên có đi m thi cao nh t
thi môn gi i thu t
Trang 7Bài toán và gi i thu t
Khái ni m gi i thu t (thu t toán)
t xác đ nh đ t o ra output t input c a bài toán
Phân bi t gi i thu t và thu t gi i:
Gi i thu t: luôn cho k t qu đúng v i m i tr ng h p
c a input
không luôn luôn đúng
Trang 8Bài toán và gi i thu t
Trang 9Bài toán và gi i thu t
Trang 10Bài toán và gi i thu t
Ví d u ng thu c
Trang 11Bài toán và gi i thu t
Trang 12Bài toán và gi i thu t
Trang 14Bi u di n gi i thu t
Li t kê các b c thi hành
V s đ kh i thi hành
Mã gi đi u khi n
Trang 20if (n % 2 = 0) then dem = dem + 1
Trang 22Gi i toán trên máy tính
Các b c gi i m t bài toán trên máy tính:
Xác đ nh bài toán: xác đ nh input, output
L a ch n ho c thi t k gi i thu t, bi u di n gi i thu t
L p trình đ a gi i thu t lên máy tính
Trang 23Gi i toán trên máy tính
Xác đ nh bài toán:
Trang 24Gi i toán trên máy tính
Trang 25Gi i toán trên máy tính
Trang 26Gi i toán trên máy tính
Trang 27Gi i toán trên máy tính
Xét bài toán tìm UCLN(M, N) v i M, N Z+
Trang 28Gi i toán trên máy tính
Xét bài toán tìm UCLN(M, N) v i M, N Z+
Cách 3: thu t toán Euclide
M 0 UCLN(M, 0) = M
M, N 0 UCLN(M, N) = UCLN(N, M mod N)
Thu t toán Euclide là ph ng pháp t t nh t đ tìm UCLN(a, b)
Trang 29Gi i toán trên máy tính
Vi t ch ng trình
S d ng m t ngôn ng l p trình c th đ th hi n gi i thu t lên máy tính: C, C++, Pascal, Java, C#, VB.Net, …
ph i có k thu t l p trình t t
đ n ch ng trình không đ t hi u qu cao
Trang 30Gi i toán trên máy tính
Hi u ch nh
hi n l i và đi u ch nh ch ng trình c ng là m t k n ng khá quan tr ng
Trang 31Gi i toán trên máy tính
Trang 32Gi i toán trên máy tính
Trang 33Gi i toán trên máy tính
Trang 35Thi t k gi i thu t
Ph ng pháp top-down
nh t
nh t là đ n v ch ng trình
Trang 36lên thì cho m t s Palindrome