Là ngôn ngữ dùng biểu diễn thuật toán bằng sơ đồ khối A.. Là ngôn ngữ dùng biểu diễn thuật toán thành một chương trình trên máy tính C.. Là ngôn ngữ dùng biểu diễn thuật toán thành
Trang 2Câu 1: Ngôn ngữ lập trình là gì ?
KIỂM TRA BÀI CŨ
A Là ngôn ngữ dùng biểu diễn thuật toán bằng sơ
đồ khối
A Là ngôn ngữ dùng biểu diễn thuật toán bằng sơ
đồ khối
B Là ngôn ngữ dùng biểu diễn thuật toán theo
cách liệt kê
B Là ngôn ngữ dùng biểu diễn thuật toán theo
cách liệt kê
C Là ngôn ngữ dùng biểu diễn thuật toán thành
một chương trình trên máy tính
C Là ngôn ngữ dùng biểu diễn thuật toán thành
một chương trình trên máy tính
D Tất cả đều đúng
Trang 3Câu 2: Có mấy loại ngôn ngữ lập trình ?
Trang 4Câu 3: Chương trình dịch dùng để làm gì ?
KIỂM TRA BÀI CŨ
A Diễn đạt các thao tác của thuật toán
B Biểu diễn thuật toán bằng sơ đồ khối
C Dịch chương trình viết bằng hợp ngữ và
ngôn ngữ bậc cao sang chương trình viết bằng ngôn ngữ máy
D Dùng để diệt Virus
Trang 5Có phải máy tính
thông minh và làm
được mọi công việc kể
cả việc giải toán?
Máy tính làm một công việc hay giải một bài toán là do con người
đã đưa vào trong máy các cách thức làm việc để hướng dẫn cho máy thực hiện công việc
Việc giải toán trên
máy tính được thực
hiện thông qua
mấy bước?
Để giải bài toán trên máy tính ta thường tiến hành theo 5 bước.
Trang 6Bài 6 - GIẢI BÀI TOÁN TRÊN MÁY TÍNH
Việc giải bài toán trên máy tính thường trải qua 5 bước:
- Bước 1: Xác định bài toán
- Bước 5: Viết tài liệu
- 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
Trang 7Tìm ước số chung lớn nhất của hai số nguyên dương M và N
1 Xác định bài toán
Xác định hai thành phần Input và Output
VD:
Input: M, N là hai số nguyên dương
Output: ƯCLN của hai số đó
Trang 8Bài 6 - GIẢI BÀI TOÁN TRÊN MÁY TÍNH
2 Lựa chọn hoặc thiết kế thuật toán
- Là bước quan trọng nhất khi giải một bài toán
a Lựa chọn thuật toán
- Mỗi bài toán có thể có nhiều thuật toán -> cần
chọn một thuật toán phù hợp với bài toán đã cho
- Khi thiết kế hoặc lựa chọn thuật toán ta thường quan tâm:
+ thời gian thực hiện, số lượng ô nhớ
+ khi viết chương trình thì ít phức tạp nhất
Trang 9Có 2 cách diễn tả thuật toán
+ Cách liệt kê + Dùng sơ đồ khối
b Diễn tả thuật toán
VD Diễn tả thuật toán theo cách liệt kê
Bước 1: Nhập M, N
Bước 2: Nếu M=N thì ƯCLN=M (hoặc N) -> chuyển Bước 5
Bước 4: Nếu M<N thì N <- N-M rồi quay lại Bước 2
Bước 5: Đưa ra ƯCLN rồi kết thúc
Bước 3: Nếu M>N thì M <- M-N rồi quay lại Bước 2
Trang 10Đ
S S
5 10
10
10
5 5
15
25
3 2
1
Lượt
Nhập M ,N
M =N ?
M > N ?
N <-N - M
M <-M - N
Đưa ra M và kết thúc
M= 25, N = 10
25 = 10 ?
15 = 10 ?
5 = 10 ?
5 > 10 ?
N = 10 - 5
M N
VD Diễn tả thuật toán bằng cách dùng sơ đồ khối
Trang 11- Là việc lựa chọn cách tổ chức dữ liệu và sử dụng ngôn ngữ lập trình để diễn đạt thuật toán
- Cần chọn ngôn ngữ lập trình hoặc phần mềm thích hợp với thuật toán
- Phải tuân theo đúng quy định ngữ pháp của ngôn ngữ lập trình đó
3 Viết chương trình
Trang 13M = 8; N = 8 ƯCLN = 8
M = 25; N = 10 ƯCLN = 5
M = 88; N = 121 ƯCLN = 11
M = 17; N = 13 ƯCLN = 1
- Sau khi viết xong, nếu chương trình có lỗi thì phải hiệu chỉnh
->Cần phải thử chương trình với một số bộ Input tiêu biểu (Test) để kiểm tra kết quả
- Một số bộ Test kiểm tra thuật toán tìm ƯCLN
4 Hiệu chỉnh
Trang 14Bài 6 - GIẢI BÀI TOÁN TRÊN MÁY TÍNH
- Mô tả chi tiết về bài toán, thuật toán, chương trình và kết qủa thử nghiệm
- Hướng dẫn cách sử dụng chương trình
- Người sử dụng có thể đề xuất những khả năng hoàn thiện thêm
5 Viết tài liệu
Trang 15GHI NHỚ
Các bước giải bài toán trên máy tính:
- Bước 1: Xác định bài toán
- Bước 5: Viết tài liệu
- 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 3: Viết chương trình
- Bước 4: Hiệu chỉnh
- Bước 4: Hiệu chỉnh
Trang 16Bài 6 - GIẢI BÀI TOÁN TRÊN MÁY TÍNH
BÀI TẬP VẬN DỤNG
Bài 1: Tiêu chuẩn lựa chọn thuật toán là gì ?
a Thuật toán phải phù hợp với bài toán đã cho
b Thời gian thực hiện nhanh, ít tốn bộ nhớ
c Khi viết chương trình ít phức tạp nhất
c Khi viết chương trình ít phức tạp nhất
d Cả 3 ý trên đều đúng
Trang 17BÀI TẬP VẬN DỤNG Bài 2: Nội dung và mục đích của bước hiệu chỉnh?
a Kiểm tra lỗi về thuật toán
b Kiểm tra lỗi cú pháp của ngôn ngữ lập trình dùng viết chương trình
b Kiểm tra lỗi cú pháp của ngôn ngữ lập trình dùng viết chương trình
c Dùng các bộ Test khác nhau để kiểm tra
c Dùng các bộ Test khác nhau để kiểm tra
d Cả 3 ý trên đều đúng
Trang 18Bài 6 - GIẢI BÀI TOÁN TRÊN MÁY TÍNH
BÀI TẬP VỀ NHÀ
Hãy viết thuật toán giải
phương trình bậc nhất ax + b
= 0 và đề xuất các bộ Test
tiêu biểu
Hãy viết thuật toán giải
phương trình bậc nhất ax + b
= 0 và đề xuất các bộ Test
tiêu biểu