SlideShare a Scribd company logo
1 of 4
BÀI 4: BÀI TOÁN VÀ THUẬT TOÁN
Mức độ cần đạt
Kiến thức
• Biết khái niệm bài toán và thuật toán, các đặc trưng chính của thuật toán.
• Hiểu cách biểu diễn thuật toán bằng sơ đồ khối và bằng liệt kê các bước.
• Hiểu một số thuật toán thông dụng.
Kĩ năng
• Xây dựng được thuật toán giải một số bài toán đơn giản bằng sơ đồ khối hoặc liệt kê các bước.
1. Khái niệm bài toán:
1. Khái niệm bài toán:
• Trong phạm vi Tin học, ta có thể quan niệm bài toán là việc nào đó ta muốn máy tính thực hiện.
• Các yếu tố xác định một bài toán:
+ Input (thông tin đưa vào máy): dữ liệu vào
+ Output (thông tin muốn lấy ra từ máy): dữ liệu ra
Ví dụ 1. Bài toán tìm ước chung lớn nhất của hai số nguyên dương.
Input: Hai số nguyên dương M và N;
Output: Ước chung lớn nhất của M và N.
Ví dụ 2. Bài toán tìm nghiệm của phương trình bậc hai ax2
+ bx + c = 0 (a ≠ 0)
Input: Các số thực a, b, c (a ≠ 0);
Output: Số thực x thoả mãn ax2
+ bx + c = 0.
Ví dụ 3. Bài toán kiểm tra tính nguyên tố.
Input: Số nguyên dương N;
Output: "N là số nguyên tố" hoặc "N không là số nguyên tố".
Ví dụ 4. Bài toán xếp loại học tập của một lớp.
Input: Bảng điểm của học sinh trong lớp;
Output: Bảng xếp loại học lực.
2. Khái niệm thuật toán:
Al-Khwarizmi
• Việc cho một bài toán là mô tả rõ Input và Output cần tìm. Vấn đề là: Làm thế nào để tìm ra Output?
• Trước hết cần lưu ý rằng trong Toán học có một xu hướng nghiên cứu định tính các bài toán, có nghĩa
là người ta có thể chỉ cần chứng minh sự tồn tại của lời giải và không cần chỉ ra một cách tường minh cách tìm
lời giải đó.
• Việc chỉ ra tường minh một cách tìm Output của bài toán được gọi là một thuật toán (algorithm) của bài
toán đó. Có nhiều định nghĩa khác nhau về thuật toán, dưới đây là một định nghĩa thường dùng
• Al-Khwarizmi, nhà toán học thế kỉ thứ IX - người có ảnh hưởng lớn đến sự hình thành thuật
ngữ "Algorithm"
Thuật toán để giải một bài toán là một dãy hữu hạn các thao tác được sắp xếp theo một trình tự xác định sao
cho sau khi thực hiện dãy thao tác ấy, từ Input của bài toán, ta nhận được Output cần tìm.
• Có 2 cách diễn tả thuật toán: Liệt kê và Sơ đồ khối:
Liệt kê Sơ đồ khối
Ghi lại các thao tác thực hiện theo dạng
Bước 1: ...
Bước 2 ...
...
...
Bước: ...
Vẽ hình gồm: hình thoi, hình chữ nhật,
hình ô van, mũi tên
Hình thoi thể hiện thao tác so sánh;
Hình chữ nhật thể hiện các phép tính
toán;
Các mũi tên → quy định trình tự thực hiện
các thao tác;
Hình ô van thể hiện thao tác nhập,
xuất dữ liệu.
Ví dụ. Tìm giá trị lớn nhất của một dãy số nguyên
• Xác định bài toán
- Input: Số nguyên dương N và dãy N số nguyên a1,..., aN.
- Output: Giá trị lớn nhất Max của dãy số.
• Ý tưởng:
- Khởi tạo giá trị Max = a1.
- Lần lượt với i từ 2 đến N, so sánh giá trị số hạng ai với giá trị Max, nếu ai > Max thì Max nhận giá trị
mới là ai.
Liệt kê Sơ đồ khối
Bước 1. Nhập N và dãy a1,..., aN;
Bước 2. Max ← a1, i ← 2;
Bước 3. Nếu i > N thì đưa ra giá trị
Max rồi kết thúc;
Bước 4.
Bước 4.1. Nếu ai > Max thì Max
← ai;
Bước 4.2. i ← i + 1 rồi quay lại
bước 3;
• Thực hiện thuật toán trên với N = 11 và dãy A: 5, 1, 4, 7, 6, 3, 15, 8, 4, 9, 12.
Dãy
A
5 1 4 7 6 3 15 8 4 9 12
i 2 3 4 5 6 7 8 9 10 11 12
Max 5 5 5 7 7 7 15 15 15 15 15
Thuật toán có các tính chất chính sau
• Tính dừng: Thuật toán phải kết thúc sau một số hữu hạn lần thực hiện các thao tác;
• Tính xác định: Sau khi thực hiện một thao tác thì hoặc là thuật toán kết thúc hoặc là có đúng một thao
tác xác định để được thực hiện tiếp theo;
• Tính đúng đắn: Sau khi thuật toán kết thúc, ta phải nhận được Output cần tìm.
Các ví dụ khác xem SGK trang từ trang 36 đến 44
CÂU HỎI VÀ BÀI TẬP
1. Hãy chỉ ra tính dừng của thuật toán tìm kiếm tuần tự.
2. Hãy phát biểu một bài toán và chỉ rõ Input và Output của bài toán đó.
Dãy các thao tác sau:
Bước 1. Xoá bảng;
Bước 2. Vẽ đường tròn;
Bước 3. Quay lại bước 1;
có phải là thuật toán không? Tại sao?
Hãy mô tả thuật toán giải các bài toán sau bằng cách liệt kê hoặc bằng sơ đồ khối.
1. Cho N và dãy số a1,..., aN, hãy tìm giá trị nhỏ nhất (Min) của dãy đó.
2. Tìm nghiệm của phương trình bậc hai tổng quát: ax2
+ bx + c = 0.
3. Cho N và dãy số a1,..., aN, hãy sắp xếp dãy số đó thành dãy số không tăng (số hạng trước lớn hơn hay
bằng số hạng sau).

More Related Content

What's hot

Thuat toan sap xep trao doi
Thuat toan sap xep trao doiThuat toan sap xep trao doi
Thuat toan sap xep trao doilantbinh
 
Chuong 2 phan tich cac thuat toan sap xep va tim kiem
Chuong 2  phan tich cac thuat toan sap xep va tim kiemChuong 2  phan tich cac thuat toan sap xep va tim kiem
Chuong 2 phan tich cac thuat toan sap xep va tim kiemgaconne1985
 
Sap xep va tim kiem
Sap xep va tim kiem Sap xep va tim kiem
Sap xep va tim kiem acumenvn
 
ThiếT Kế Và đáNh Giá ThuậT ToáN
ThiếT Kế Và đáNh Giá ThuậT ToáNThiếT Kế Và đáNh Giá ThuậT ToáN
ThiếT Kế Và đáNh Giá ThuậT ToáNguest717ec2
 
Đề thi mẫu trắc nghiệm cấu trúc dữ liệu cà giải thuật
Đề thi mẫu trắc nghiệm cấu trúc dữ liệu cà giải thuậtĐề thi mẫu trắc nghiệm cấu trúc dữ liệu cà giải thuật
Đề thi mẫu trắc nghiệm cấu trúc dữ liệu cà giải thuậtHưởng Nguyễn
 
Bài tập CTDL và GT 1
Bài tập CTDL và GT 1Bài tập CTDL và GT 1
Bài tập CTDL và GT 1Hồ Lợi
 
Baigiang4 thuattoan-120116191825-phpapp02
Baigiang4 thuattoan-120116191825-phpapp02Baigiang4 thuattoan-120116191825-phpapp02
Baigiang4 thuattoan-120116191825-phpapp02Trần Huy
 
Chuong 2 Tim Kiem N Sap Xep
Chuong 2   Tim Kiem N Sap XepChuong 2   Tim Kiem N Sap Xep
Chuong 2 Tim Kiem N Sap Xepquang
 
Bài tập CTDL và GT 9
Bài tập CTDL và GT 9Bài tập CTDL và GT 9
Bài tập CTDL và GT 9Hồ Lợi
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 2
Giáo trình Phân tích và thiết kế giải thuật - CHAP 2Giáo trình Phân tích và thiết kế giải thuật - CHAP 2
Giáo trình Phân tích và thiết kế giải thuật - CHAP 2Nguyễn Công Hoàng
 
bai tap cau truc du lieu ptit
bai tap cau truc du lieu ptitbai tap cau truc du lieu ptit
bai tap cau truc du lieu ptitMit Rin
 
Chau thihuynh c1_bai4_tiet2_tin10
Chau thihuynh c1_bai4_tiet2_tin10Chau thihuynh c1_bai4_tiet2_tin10
Chau thihuynh c1_bai4_tiet2_tin10Tin5VungTau
 
Bài tập CTDL và GT 7
Bài tập CTDL và GT 7Bài tập CTDL và GT 7
Bài tập CTDL và GT 7Hồ Lợi
 
Giai phuong trinh bang excell
Giai phuong trinh bang excellGiai phuong trinh bang excell
Giai phuong trinh bang excelltrioby2
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1Nguyễn Công Hoàng
 
Tìm kiếm và sắp nội
Tìm kiếm và sắp nộiTìm kiếm và sắp nội
Tìm kiếm và sắp nộikikihoho
 

What's hot (19)

Thuat toan sap xep trao doi
Thuat toan sap xep trao doiThuat toan sap xep trao doi
Thuat toan sap xep trao doi
 
Chuong 2 phan tich cac thuat toan sap xep va tim kiem
Chuong 2  phan tich cac thuat toan sap xep va tim kiemChuong 2  phan tich cac thuat toan sap xep va tim kiem
Chuong 2 phan tich cac thuat toan sap xep va tim kiem
 
Thuat Toan 2
Thuat Toan 2Thuat Toan 2
Thuat Toan 2
 
Sap xep va tim kiem
Sap xep va tim kiem Sap xep va tim kiem
Sap xep va tim kiem
 
ThiếT Kế Và đáNh Giá ThuậT ToáN
ThiếT Kế Và đáNh Giá ThuậT ToáNThiếT Kế Và đáNh Giá ThuậT ToáN
ThiếT Kế Và đáNh Giá ThuậT ToáN
 
Emailing buoi 2 thuat toan
Emailing buoi 2   thuat toanEmailing buoi 2   thuat toan
Emailing buoi 2 thuat toan
 
Đề thi mẫu trắc nghiệm cấu trúc dữ liệu cà giải thuật
Đề thi mẫu trắc nghiệm cấu trúc dữ liệu cà giải thuậtĐề thi mẫu trắc nghiệm cấu trúc dữ liệu cà giải thuật
Đề thi mẫu trắc nghiệm cấu trúc dữ liệu cà giải thuật
 
Bài tập CTDL và GT 1
Bài tập CTDL và GT 1Bài tập CTDL và GT 1
Bài tập CTDL và GT 1
 
Baigiang4 thuattoan-120116191825-phpapp02
Baigiang4 thuattoan-120116191825-phpapp02Baigiang4 thuattoan-120116191825-phpapp02
Baigiang4 thuattoan-120116191825-phpapp02
 
Chuong 2
Chuong 2Chuong 2
Chuong 2
 
Chuong 2 Tim Kiem N Sap Xep
Chuong 2   Tim Kiem N Sap XepChuong 2   Tim Kiem N Sap Xep
Chuong 2 Tim Kiem N Sap Xep
 
Bài tập CTDL và GT 9
Bài tập CTDL và GT 9Bài tập CTDL và GT 9
Bài tập CTDL và GT 9
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 2
Giáo trình Phân tích và thiết kế giải thuật - CHAP 2Giáo trình Phân tích và thiết kế giải thuật - CHAP 2
Giáo trình Phân tích và thiết kế giải thuật - CHAP 2
 
bai tap cau truc du lieu ptit
bai tap cau truc du lieu ptitbai tap cau truc du lieu ptit
bai tap cau truc du lieu ptit
 
Chau thihuynh c1_bai4_tiet2_tin10
Chau thihuynh c1_bai4_tiet2_tin10Chau thihuynh c1_bai4_tiet2_tin10
Chau thihuynh c1_bai4_tiet2_tin10
 
Bài tập CTDL và GT 7
Bài tập CTDL và GT 7Bài tập CTDL và GT 7
Bài tập CTDL và GT 7
 
Giai phuong trinh bang excell
Giai phuong trinh bang excellGiai phuong trinh bang excell
Giai phuong trinh bang excell
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
 
Tìm kiếm và sắp nội
Tìm kiếm và sắp nộiTìm kiếm và sắp nội
Tìm kiếm và sắp nội
 

Viewers also liked

Cellular Therapy for multiple myeloma
Cellular Therapy for multiple myelomaCellular Therapy for multiple myeloma
Cellular Therapy for multiple myelomaspa718
 
IAI EXPO 2014 | 20-22 Feb
IAI EXPO 2014 | 20-22 FebIAI EXPO 2014 | 20-22 Feb
IAI EXPO 2014 | 20-22 FebPoultrymagazine
 
Informatica solidale giugno 2015 joomla festival v1.1
Informatica solidale giugno 2015 joomla festival v1.1Informatica solidale giugno 2015 joomla festival v1.1
Informatica solidale giugno 2015 joomla festival v1.1Claudio Tancini
 
Best teacher interview questions
Best teacher interview questionsBest teacher interview questions
Best teacher interview questionsteachernew
 
Contoh indikator pembuatan soal un bin
Contoh indikator pembuatan soal un binContoh indikator pembuatan soal un bin
Contoh indikator pembuatan soal un binNuril anwar
 
Donor Selection: Unrealted donor transplant. Prof. Richard Champlin
Donor Selection: Unrealted donor transplant. Prof. Richard ChamplinDonor Selection: Unrealted donor transplant. Prof. Richard Champlin
Donor Selection: Unrealted donor transplant. Prof. Richard Champlinspa718
 
International Payments add-on for SAP Business One
International Payments add-on for SAP Business OneInternational Payments add-on for SAP Business One
International Payments add-on for SAP Business OneMilner Browne
 
Correccion de ingles
Correccion de inglesCorreccion de ingles
Correccion de inglessanjoel
 
Kontrastika - The Portfolio
Kontrastika - The PortfolioKontrastika - The Portfolio
Kontrastika - The PortfolioMatjaz Tomazic
 
Check valves
Check valvesCheck valves
Check valvesRobinsain
 
Smith family in a nutshell
Smith family in a nutshellSmith family in a nutshell
Smith family in a nutshellkrysmith_12
 
Web Design Principles
Web Design PrinciplesWeb Design Principles
Web Design Principlesballoub
 
๑๒ สิงหา วันแม่แห่งชาติ
๑๒ สิงหา วันแม่แห่งชาติ๑๒ สิงหา วันแม่แห่งชาติ
๑๒ สิงหา วันแม่แห่งชาติASEANPINKKIAO
 
Garde shellfish-futures3
Garde shellfish-futures3Garde shellfish-futures3
Garde shellfish-futures3progressive01
 
Indian events in usa indian community events current indian events desi eve...
Indian events in usa  indian community events  current indian events desi eve...Indian events in usa  indian community events  current indian events desi eve...
Indian events in usa indian community events current indian events desi eve...eknazar.com
 

Viewers also liked (20)

Cellular Therapy for multiple myeloma
Cellular Therapy for multiple myelomaCellular Therapy for multiple myeloma
Cellular Therapy for multiple myeloma
 
IAI EXPO 2014 | 20-22 Feb
IAI EXPO 2014 | 20-22 FebIAI EXPO 2014 | 20-22 Feb
IAI EXPO 2014 | 20-22 Feb
 
Informatica solidale giugno 2015 joomla festival v1.1
Informatica solidale giugno 2015 joomla festival v1.1Informatica solidale giugno 2015 joomla festival v1.1
Informatica solidale giugno 2015 joomla festival v1.1
 
Best teacher interview questions
Best teacher interview questionsBest teacher interview questions
Best teacher interview questions
 
vanadis
vanadisvanadis
vanadis
 
Contoh indikator pembuatan soal un bin
Contoh indikator pembuatan soal un binContoh indikator pembuatan soal un bin
Contoh indikator pembuatan soal un bin
 
Donor Selection: Unrealted donor transplant. Prof. Richard Champlin
Donor Selection: Unrealted donor transplant. Prof. Richard ChamplinDonor Selection: Unrealted donor transplant. Prof. Richard Champlin
Donor Selection: Unrealted donor transplant. Prof. Richard Champlin
 
International Payments add-on for SAP Business One
International Payments add-on for SAP Business OneInternational Payments add-on for SAP Business One
International Payments add-on for SAP Business One
 
Correccion de ingles
Correccion de inglesCorreccion de ingles
Correccion de ingles
 
Mechano
MechanoMechano
Mechano
 
Kontrastika - The Portfolio
Kontrastika - The PortfolioKontrastika - The Portfolio
Kontrastika - The Portfolio
 
Check valves
Check valvesCheck valves
Check valves
 
Smith family in a nutshell
Smith family in a nutshellSmith family in a nutshell
Smith family in a nutshell
 
Web Design Principles
Web Design PrinciplesWeb Design Principles
Web Design Principles
 
Guy ros (1)
Guy ros (1)Guy ros (1)
Guy ros (1)
 
Arquitectura
ArquitecturaArquitectura
Arquitectura
 
๑๒ สิงหา วันแม่แห่งชาติ
๑๒ สิงหา วันแม่แห่งชาติ๑๒ สิงหา วันแม่แห่งชาติ
๑๒ สิงหา วันแม่แห่งชาติ
 
Digital surveys
Digital surveysDigital surveys
Digital surveys
 
Garde shellfish-futures3
Garde shellfish-futures3Garde shellfish-futures3
Garde shellfish-futures3
 
Indian events in usa indian community events current indian events desi eve...
Indian events in usa  indian community events  current indian events desi eve...Indian events in usa  indian community events  current indian events desi eve...
Indian events in usa indian community events current indian events desi eve...
 

Similar to Bai 4

Bai giang 4 thuat toan
Bai giang 4   thuat toanBai giang 4   thuat toan
Bai giang 4 thuat toanladoga
 
Giao an_bai4_lop10_baitoanvathuattoan
Giao an_bai4_lop10_baitoanvathuattoanGiao an_bai4_lop10_baitoanvathuattoan
Giao an_bai4_lop10_baitoanvathuattoanTran Juni
 
kịch bản dạy học tin học 10 bai4
kịch bản dạy học tin học 10 bai4kịch bản dạy học tin học 10 bai4
kịch bản dạy học tin học 10 bai4Dang Nguyen
 
Kichbandayhoctinhoc10 bai4-140615131551-phpapp01-140618033132-phpapp01
Kichbandayhoctinhoc10 bai4-140615131551-phpapp01-140618033132-phpapp01Kichbandayhoctinhoc10 bai4-140615131551-phpapp01-140618033132-phpapp01
Kichbandayhoctinhoc10 bai4-140615131551-phpapp01-140618033132-phpapp01Lã Văn Hải
 
BÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
BÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNHBÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
BÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNHTrần Nhân
 
BÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
BÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNHBÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
BÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNHTrần Nhân
 
CSLTNNL01.pdf
CSLTNNL01.pdfCSLTNNL01.pdf
CSLTNNL01.pdfThAnhonc
 
Bai6tin10 131222063859-phpapp01
Bai6tin10 131222063859-phpapp01Bai6tin10 131222063859-phpapp01
Bai6tin10 131222063859-phpapp01Bich Tuyen
 
Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4Do Ngoc Tuan
 
Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4Do Ngoc Tuan
 
Ctdl va gt_hồ_sĩ_đàm
Ctdl va gt_hồ_sĩ_đàmCtdl va gt_hồ_sĩ_đàm
Ctdl va gt_hồ_sĩ_đàmvinhduchanh
 
Mai khanh bai 4 lop 10
Mai khanh bai 4 lop 10Mai khanh bai 4 lop 10
Mai khanh bai 4 lop 10Tin 5CBT
 
Đề tài: Tìm nghiệm của một bài toán bằng cách xem xét tất cả các phương án có...
Đề tài: Tìm nghiệm của một bài toán bằng cách xem xét tất cả các phương án có...Đề tài: Tìm nghiệm của một bài toán bằng cách xem xét tất cả các phương án có...
Đề tài: Tìm nghiệm của một bài toán bằng cách xem xét tất cả các phương án có...Viết thuê trọn gói ZALO 0934573149
 
chuyen-de-day-so-cap-so-cong-va-cap-so-nhan-toan-11-canh-dieu.pdf
chuyen-de-day-so-cap-so-cong-va-cap-so-nhan-toan-11-canh-dieu.pdfchuyen-de-day-so-cap-so-cong-va-cap-so-nhan-toan-11-canh-dieu.pdf
chuyen-de-day-so-cap-so-cong-va-cap-so-nhan-toan-11-canh-dieu.pdfcholacha
 

Similar to Bai 4 (20)

Bai giang 4 thuat toan
Bai giang 4   thuat toanBai giang 4   thuat toan
Bai giang 4 thuat toan
 
Giao an_bai4_lop10_baitoanvathuattoan
Giao an_bai4_lop10_baitoanvathuattoanGiao an_bai4_lop10_baitoanvathuattoan
Giao an_bai4_lop10_baitoanvathuattoan
 
kịch bản dạy học tin học 10 bai4
kịch bản dạy học tin học 10 bai4kịch bản dạy học tin học 10 bai4
kịch bản dạy học tin học 10 bai4
 
Bai4 c1 10
Bai4 c1 10Bai4 c1 10
Bai4 c1 10
 
Kichbandayhoctinhoc10 bai4-140615131551-phpapp01-140618033132-phpapp01
Kichbandayhoctinhoc10 bai4-140615131551-phpapp01-140618033132-phpapp01Kichbandayhoctinhoc10 bai4-140615131551-phpapp01-140618033132-phpapp01
Kichbandayhoctinhoc10 bai4-140615131551-phpapp01-140618033132-phpapp01
 
BÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
BÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNHBÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
BÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
 
BÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
BÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNHBÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
BÀI 06: GIẢI BÀI TOÁN TRÊN MÁY TÍNH
 
Bai giang
Bai giangBai giang
Bai giang
 
CSLTNNL01.pdf
CSLTNNL01.pdfCSLTNNL01.pdf
CSLTNNL01.pdf
 
Bai6tin10 131222063859-phpapp01
Bai6tin10 131222063859-phpapp01Bai6tin10 131222063859-phpapp01
Bai6tin10 131222063859-phpapp01
 
Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4
 
Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4
 
Ctdl va gt_hồ_sĩ_đàm
Ctdl va gt_hồ_sĩ_đàmCtdl va gt_hồ_sĩ_đàm
Ctdl va gt_hồ_sĩ_đàm
 
Mai khanh bai 4 lop 10
Mai khanh bai 4 lop 10Mai khanh bai 4 lop 10
Mai khanh bai 4 lop 10
 
Bai 6 933
Bai 6 933Bai 6 933
Bai 6 933
 
Bai 6 933
Bai 6 933Bai 6 933
Bai 6 933
 
Đề tài: Tìm nghiệm của một bài toán bằng cách xem xét tất cả các phương án có...
Đề tài: Tìm nghiệm của một bài toán bằng cách xem xét tất cả các phương án có...Đề tài: Tìm nghiệm của một bài toán bằng cách xem xét tất cả các phương án có...
Đề tài: Tìm nghiệm của một bài toán bằng cách xem xét tất cả các phương án có...
 
chuyen-de-day-so-cap-so-cong-va-cap-so-nhan-toan-11-canh-dieu.pdf
chuyen-de-day-so-cap-so-cong-va-cap-so-nhan-toan-11-canh-dieu.pdfchuyen-de-day-so-cap-so-cong-va-cap-so-nhan-toan-11-canh-dieu.pdf
chuyen-de-day-so-cap-so-cong-va-cap-so-nhan-toan-11-canh-dieu.pdf
 
Thuat Toan
Thuat ToanThuat Toan
Thuat Toan
 
Bai tapktlt phan1
Bai tapktlt phan1Bai tapktlt phan1
Bai tapktlt phan1
 

Bai 4

  • 1. BÀI 4: BÀI TOÁN VÀ THUẬT TOÁN Mức độ cần đạt Kiến thức • Biết khái niệm bài toán và thuật toán, các đặc trưng chính của thuật toán. • Hiểu cách biểu diễn thuật toán bằng sơ đồ khối và bằng liệt kê các bước. • Hiểu một số thuật toán thông dụng. Kĩ năng • Xây dựng được thuật toán giải một số bài toán đơn giản bằng sơ đồ khối hoặc liệt kê các bước. 1. Khái niệm bài toán: 1. Khái niệm bài toán: • Trong phạm vi Tin học, ta có thể quan niệm bài toán là việc nào đó ta muốn máy tính thực hiện. • Các yếu tố xác định một bài toán: + Input (thông tin đưa vào máy): dữ liệu vào + Output (thông tin muốn lấy ra từ máy): dữ liệu ra Ví dụ 1. Bài toán tìm ước chung lớn nhất của hai số nguyên dương. Input: Hai số nguyên dương M và N; Output: Ước chung lớn nhất của M và N. Ví dụ 2. Bài toán tìm nghiệm của phương trình bậc hai ax2 + bx + c = 0 (a ≠ 0) Input: Các số thực a, b, c (a ≠ 0); Output: Số thực x thoả mãn ax2 + bx + c = 0. Ví dụ 3. Bài toán kiểm tra tính nguyên tố. Input: Số nguyên dương N; Output: "N là số nguyên tố" hoặc "N không là số nguyên tố". Ví dụ 4. Bài toán xếp loại học tập của một lớp. Input: Bảng điểm của học sinh trong lớp; Output: Bảng xếp loại học lực. 2. Khái niệm thuật toán:
  • 2. Al-Khwarizmi • Việc cho một bài toán là mô tả rõ Input và Output cần tìm. Vấn đề là: Làm thế nào để tìm ra Output? • Trước hết cần lưu ý rằng trong Toán học có một xu hướng nghiên cứu định tính các bài toán, có nghĩa là người ta có thể chỉ cần chứng minh sự tồn tại của lời giải và không cần chỉ ra một cách tường minh cách tìm lời giải đó. • Việc chỉ ra tường minh một cách tìm Output của bài toán được gọi là một thuật toán (algorithm) của bài toán đó. Có nhiều định nghĩa khác nhau về thuật toán, dưới đây là một định nghĩa thường dùng • Al-Khwarizmi, nhà toán học thế kỉ thứ IX - người có ảnh hưởng lớn đến sự hình thành thuật ngữ "Algorithm" Thuật toán để giải một bài toán là một dãy hữu hạn các thao tác được sắp xếp theo một trình tự xác định sao cho sau khi thực hiện dãy thao tác ấy, từ Input của bài toán, ta nhận được Output cần tìm. • Có 2 cách diễn tả thuật toán: Liệt kê và Sơ đồ khối: Liệt kê Sơ đồ khối Ghi lại các thao tác thực hiện theo dạng Bước 1: ... Bước 2 ... ... ... Bước: ... Vẽ hình gồm: hình thoi, hình chữ nhật, hình ô van, mũi tên Hình thoi thể hiện thao tác so sánh; Hình chữ nhật thể hiện các phép tính toán; Các mũi tên → quy định trình tự thực hiện các thao tác; Hình ô van thể hiện thao tác nhập, xuất dữ liệu. Ví dụ. Tìm giá trị lớn nhất của một dãy số nguyên • Xác định bài toán - Input: Số nguyên dương N và dãy N số nguyên a1,..., aN. - Output: Giá trị lớn nhất Max của dãy số.
  • 3. • Ý tưởng: - Khởi tạo giá trị Max = a1. - Lần lượt với i từ 2 đến N, so sánh giá trị số hạng ai với giá trị Max, nếu ai > Max thì Max nhận giá trị mới là ai. Liệt kê Sơ đồ khối Bước 1. Nhập N và dãy a1,..., aN; Bước 2. Max ← a1, i ← 2; Bước 3. Nếu i > N thì đưa ra giá trị Max rồi kết thúc; Bước 4. Bước 4.1. Nếu ai > Max thì Max ← ai; Bước 4.2. i ← i + 1 rồi quay lại bước 3; • Thực hiện thuật toán trên với N = 11 và dãy A: 5, 1, 4, 7, 6, 3, 15, 8, 4, 9, 12. Dãy A 5 1 4 7 6 3 15 8 4 9 12 i 2 3 4 5 6 7 8 9 10 11 12 Max 5 5 5 7 7 7 15 15 15 15 15 Thuật toán có các tính chất chính sau • Tính dừng: Thuật toán phải kết thúc sau một số hữu hạn lần thực hiện các thao tác; • Tính xác định: Sau khi thực hiện một thao tác thì hoặc là thuật toán kết thúc hoặc là có đúng một thao tác xác định để được thực hiện tiếp theo; • Tính đúng đắn: Sau khi thuật toán kết thúc, ta phải nhận được Output cần tìm. Các ví dụ khác xem SGK trang từ trang 36 đến 44
  • 4. CÂU HỎI VÀ BÀI TẬP 1. Hãy chỉ ra tính dừng của thuật toán tìm kiếm tuần tự. 2. Hãy phát biểu một bài toán và chỉ rõ Input và Output của bài toán đó. Dãy các thao tác sau: Bước 1. Xoá bảng; Bước 2. Vẽ đường tròn; Bước 3. Quay lại bước 1; có phải là thuật toán không? Tại sao? Hãy mô tả thuật toán giải các bài toán sau bằng cách liệt kê hoặc bằng sơ đồ khối. 1. Cho N và dãy số a1,..., aN, hãy tìm giá trị nhỏ nhất (Min) của dãy đó. 2. Tìm nghiệm của phương trình bậc hai tổng quát: ax2 + bx + c = 0. 3. Cho N và dãy số a1,..., aN, hãy sắp xếp dãy số đó thành dãy số không tăng (số hạng trước lớn hơn hay bằng số hạng sau).