Bài giảng Thuật toán và ngôn ngữ lập trình C
Bước 1: Nhập số n
- Bước 2: Nhập số thứ nhất a1
- Bước 3: Gán max=a1
- Bước 4: Gán i=2
- Bước 5: Nếu i<=n thì thực
hiện bước 6, ngược lại thực
hiện bước 9
- Bước 6: Nhập ai
- Bước 7: Nếu max < ai thì gán
max=ai.
- Bước 8: Tăng i lên một đơn vị
và quay lại bước 5
Bước 9: In max - kết thúc
19 trang |
Chia sẻ: nguyenlam99 | Lượt xem: 1012 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Bài giảng Thuật toán và ngôn ngữ lập trình C, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
www.themegallery.com Company Logo
THUẬT TOÁN VÀ
NGÔN NGỮ LẬP TRÌNH C
BÀI GIẢNG
Giáo viên: Hà Nguyên Long
www.themegallery.com Company Logo
THUẬT TOÁN
TỪ BÀI TOÁN ĐẾN CHƯƠNG TRÌNH
1.Mô tả các bước giải bài toán.
2.Vẽ sơ đồ xử lý dựa trên các bước.
3.Dựa trên sơ đồ xử lý để viết chương trình xử lý
bằng ngôn ngữ giả (ngôn ngữ bình thường của
chúng ta).
4.Chọn ngôn ngữ lập trình và chuyển chương trình từ
ngôn ngữ giả sang ngôn ngữ lập trình để tạo thành
một chương trình hoàn chỉnh.
5.Thực hiện chương trình: nhập vào các tham số,
nhận kết quả.
www.themegallery.com Company Logo
THUẬT TOÁN
THUẬT TOÁN
Thuật toán là một hệ thống chặt chẽ và rõ ràng các
quy tắc nhằm xác định một dãy các thao tác trên
những dữ liệu vào sao cho sau một số hữu hạn bước
thực hiện các thao tác đó ta thu được kết quả của bài
toán.
www.themegallery.com Company Logo
THUẬT TOÁN
THUẬT TOÁN
Ví dụ 1: Giả sử có hai bình A và B đựng hai loại chất
lỏng khác nhau, chẳng hạn bình A đựng rượu, bình B
đựng nước mắm. Thuật toán để hoán đổi chất lỏng
đựng trong hai bình đó là:
- Yêu cầu phải có thêm một bình thứ ba gọi là bình C.
- Bước 1: Đổ rượu từ bình A sang bình C.
- Bước 2: Đổ nước mắm từ bình B sang bình A.
- Bước 3: Đổ rượu từ bình C sang bình B.
www.themegallery.com Company Logo
THUẬT TOÁN
THUẬT TOÁN
Ví dụ 2: Một trong những thuật toán tìm ước chung
lớn nhất của hai số a và b là:
- Bước 1: Nhập vào hai số a và b.
- Bước 2: So sánh 2 số a,b chọn số nhỏ nhất gán cho
UCLN.
- Bước 3: Nếu một trong hai số a hoặc b không chia
hết cho UCLN thì thực hiện bước 4, ngược lại (cả a
và b đều chia hết cho UCLN) thì thực hiện bước 5.
- Bước 4: Giảm UCLN một đơn vị và quay lại bước 3
- Bước 5: In UCLN - Kết thúc.
www.themegallery.com Company Logo
THUẬT TOÁN
Các đặc trưng của thuật toán
o Tính kết thúc: Thuật toán phải dừng sau một số hữu
hạn bước.
o Tính xác định: Các thao tác máy tính phải thực hiện
được và các máy tính khác nhau thực hiện cùng một
bước của cùng một thuật toán phải cho cùng một kết
quả.
o Tính phổ dụng: Thuật toán phải "vét' hết các trường
hợp và áp dụng cho một loạt bài toán cùng loại.
o Tính hiệu quả: Một thuật toán được đánh giá là tốt
nếu nó đạt hai tiêu chuẩn sau:
- Thực hiện nhanh, tốn ít thời gian.
- Tiêu phí ít tài nguyên của máy, chẳng hạn tốn ít bộ
nhớ
www.themegallery.com Company Logo
THUẬT TOÁN
Ngôn ngữ biểu diễn thuật toán
●Ngôn ngữ tự nhiên
●Ngôn ngữ sơ đồ (Lưu đồ)
●Ngôn ngữ tựa (giả) chương trıǹh
www.themegallery.com Company Logo
THUẬT TOÁN
Ngôn ngữ sơ đồ
www.themegallery.com Company Logo
THUẬT TOÁN
Biểu diễn thuâṭ toán tıńh diêṇ tıćh hıǹh chữ nhâṭ bằng
ngôn ngữ tự nhiên và ngôn ngữ sơ đồ
Bắt đầu
Kết thúc
a, b
S
S=a*b
Bước 1: Nhâp̣ đô ̣dài caṇh a, b
Bước 2: Tıńh diêṇ tıćh S=a*b
Bước 3: In ra diêṇ tıćh S
www.themegallery.com Company Logo
THUẬT TOÁN
Các cấu trúc lệnh cơ bản dùng trong biểu diễn
thuật toán
Cấu trúc tuần tự (Sequential)
Cấu trúc lựa choṇ (Selection)
Cấu trúc lăp̣ (Repeating)
www.themegallery.com Company Logo
THUẬT TOÁN
Kiểu dữ liêụ
Kiểu dữ liệu sơ cấp
Kiểu dữ liệu sơ cấp là kiểu dữ liệu mà giá trị của nó
là đơn nhất.
Ví dụ: Trong ngôn ngữ lập trình C, kiểu char gọi là
kiểu sơ cấp vì kiểu này bao gồm các ký tự
Kiểu dữ liệu có cấu trúc
Kiểu dữ liệu có cấu trúc là kiểu dữ liệu mà các giá trị
của nó là sự kết hợp của các giá trị khác.
Ví dụ: Kiểu chuỗi ký tự trong ngôn ngữ lập trình C là
mộ kiểu dữ liệu có cấu trúc.
www.themegallery.com Company Logo
THUẬT TOÁN
Bài tâp̣
Biểu diễn các thuâṭ toán sau bằng ngôn ngữ tự
nhiên và ngôn ngữ sơ đồ
●Tıńh diêṇ tıćh hıǹh tam giác khi biết caṇh đáy và
chiều cao
●Tıńh diêṇ tıćh hıǹh thang khi biết đô ̣dài 2 caṇh
đáy và chiều cao
●Tıńh diêṇ tıćh hıǹh tròn khi biết đường kıńh
www.themegallery.com Company Logo
Biểu diễn môṭ số thuâṭ toán cơ
bản
●Tıńh tổng daỹ số
●Tım̀ giá tri ̣lớn nhất của daỹ số
●Sắp xếp daỹ số
TIẾP THEO
www.themegallery.com Company Logo
BIỂU DIỄN MỘT SỐ THUẬT TOÁN
Tıńh tổng daỹ số
www.themegallery.com Company Logo
BIỂU DIỄN MỘT SỐ THUẬT TOÁN
Tıńh tổng daỹ số
Bước 1: Nhập số các số hạng n.
Bước 2: Cho S=0 (lưu trữ số 0
trong S)
Bước 3: Cho i=1 (lưu trữ số 1
trong i)
Bước 4: Kiểm tra nếu i<=n thì
thực hiện bước 5, ngược lại thực
hiện bước 8.
Bước 5: Nhập ai
Bước 6: Cho S=S+ai (lưu trữ giá
trị S + ai trong S)
Bước 7: Tăng i lên 1 đơn vị và
quay lại bước 4.
Bước 8: In S, kết thúc chương
trình.
www.themegallery.com Company Logo
BIỂU DIỄN MỘT SỐ THUẬT TOÁN
- Bước 1: Nhập số n
- Bước 2: Nhập số thứ nhất a1
- Bước 3: Gán max=a1
- Bước 4: Gán i=2
- Bước 5: Nếu i<=n thì thực
hiện bước 6, ngược lại thực
hiện bước 9
- Bước 6: Nhập ai
- Bước 7: Nếu max < ai thì gán
max=ai.
- Bước 8: Tăng i lên một đơn vị
và quay lại bước 5
- Bước 9: In max - kết thúc
Tım̀ số lớn nhất
www.themegallery.com Company Logo
BIỂU DIỄN MỘT SỐ THUẬT TOÁN
- Bước 1: Gán i=1
- Bước 2: Gán j=i+1
- Bước 3: Nếu i <=n-1 thì
thực hiện bước 4, ngược lại
thực hiện bước 8
- Bước 4: Nếu j <=n thì thực
hiện bước 5, ngược lại thì
thực hiện bước 7.
- Bước 5: Nếu ai > aj thì
hoán đổi ai và aj cho nhau
(nếu không thì thôi).
- Bước 6: Tăng j lên một
đơn vị và quay lại bước 4
- Bước 7: Tăng i lên một
đơn vị và quay lại bước 3
- Bước 8: In dãy số a1,
a2,..., an - Kết thúc.
Sắp xếp daỹ số
www.themegallery.com Company Logo
BIỂU DIỄN MỘT SỐ THUẬT TOÁN
Bài tâp̣
Bài 1, 2, 3, 4 – Chương 2
www.themegallery.com Company Logo
Ngôn ngữ lâp̣ trıǹh C
TIẾP THEO
Các file đính kèm theo tài liệu này:
- chuong_1_2_phan_i_tt_nnltc_4356.pdf