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

pdf19 trang | Chia sẻ: nguyenlam99 | Lượt xem: 1028 | Lượt tải: 0download
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:

  • pdfchuong_1_2_phan_i_tt_nnltc_4356.pdf