baigiang4 thuattoan-120116191825-phpapp02
TRANSCRIPT
![Page 1: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/1.jpg)
CHƯƠNG TRÌNH TIN HỌC LỚP 10 (SGK thí điểm)
Chương I
Bài 4. BÀI TOÁN và THUẬT
TOÁN
![Page 2: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/2.jpg)
• Xét các yêu cầu sau :1. Giải phương trình bậc hai ax2+bx+c=02. Viết một dòng chữ ra màn hình máy tính.3. Quản lý các cán bộ trong một cơ quan.4. Tìm ước chung lớn nhất của hai số
nguyên dương a và b.5. Xếp loại học tập các học sinh trong lớp.
I. BÀI TOÁNI. BÀI TOÁN
Trong TIN HỌCTrong TOÁN HỌC
Yêu cầu 1 và 4 được xem là bài toán
Tất cả các yêu cầu trên đều được xem là bài toán
Trong các yêu cầu trên, yêu cầu nào được xem như là một bài toán?
![Page 3: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/3.jpg)
Khái niệm Khái niệm bài toánbài toán trong trong Tin học?Tin học?
Bài toán là việc nào đó ta muốn máy tính thực hiện.
![Page 4: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/4.jpg)
TIN HỌCĐưa vào máy thông tin gì
Cần lấy ra thông tin gì
TOÁN HỌC?TOÁN HỌC?
Các yếu tố cần quan tâm khi Các yếu tố cần quan tâm khi giải một bài toángiải một bài toán
Trong Tin học, để phát biểu một bài toán, ta cần trình bày rõ Input và Output của
bài toán đó.
TOÁN HỌC
- Giả thiết
- Kết luận
THUẬT NGỮ
Input
Output
![Page 5: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/5.jpg)
CÁC VÍ DỤ
VD1 : Giải 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 thỏa : ax2+bx+ c = 0
VD2 : Tìm giá trị nhỏ nhất của các số trong một dãy số.
Input : Các số trong dãy số.Output : Giá trị nhỏ nhất trong dãy số.
![Page 6: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/6.jpg)
VD3 : Tìm ước chung lớn nhất của hai số nguyên dương a và b.
Input : Output :
VD4 : Xếp loại học tập các học sinh trong lớp.
Input :Output :
UCLN của a và b.
Hai số nguyên dương a và b.
CÁC VÍ DỤ (tt)
??
??Bảng điểm của học sinh.Bảng xếp loại học tập.
![Page 7: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/7.jpg)
TÓM LẠI
Một bài toán được cấu tạo bởi 2 thành phần cơ bản :
Input (Các thông tin đã có) Output (Các thông tin cần tìm từ Input)
![Page 8: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/8.jpg)
II. THUẬT TOÁNII. THUẬT TOÁN
Hướng dẫn các thao tác cho máy thực hiện để tìm ra lời giải
Bài toán
Input OutputBằng cách nào?
Giải bài toánThuật toán
![Page 9: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/9.jpg)
![Page 10: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/10.jpg)
Input OutputTHUẬT TOÁN
(Thao tác 1Thao tác 2 ...Thao tác n)
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 đó, từ Input của bài toán này, ta nhận được Output cần tìm.
BÀI TOÁN
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ác thao tác được sắp xếp theo một trình tự xác định.
• Sau khi thực hiện dãy thao tác đó, từ Input ta tìm được Output của bài toán.
![Page 11: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/11.jpg)
MÔ TẢ CÁC THAO TÁC TRONG THUẬT TOÁN
Có 2 cách mô tảLiệt kê
Dùng sơ đồ khối
Nêu ra tuần tự các thao tác cần tiến hành
Dùng một số biểu tượng thể hiện các thao tác
![Page 12: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/12.jpg)
Giải toán thông thường: Nếu a = 0 thì () không
phải là pt bậc nhất.
+ Neáu b = 0 thì () voâ số nghieäm.
+ Neáu b ≠ 0 thì () voâ nghieäm.
Nếu a ≠ 0 thì () có nghiệm x = -b/a.
a) LIỆT KÊ
LIỆT KÊ :• Bước 1 : Nhập a, b.• Bước 2 : Nếu a = 0 thì quay lại bước 1, ngược lại thì qua bước 3.• Bước 3 : Gán cho x giá trị -b/a, rồi qua bước 4.• Bước 4 : Đưa ra kết quả x và kết thúc.
VD : Tìm nghiệm phương trình bậc nhất tổng quát : ax + b = 0 ()
![Page 13: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/13.jpg)
: Thể hiện các thao tác so sánh
b) DÙNG SƠ ĐỒ KHỐITrong sơ đồ khối, người ta dùng một số
biểu tượng thể hiện các thao tác như :
: Thể hiện các phép toán
: Quy định trình tự thực hiện các thao tác
: Thể hiện các thao tác nhập, xuất dữ liệu
![Page 14: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/14.jpg)
VD: Tìm nghiệm phương trình bậc nhất tổng quát : ax + b = 0
Nhập a, b
a = 0
x = -b/a
Sai
úngđ
Xu t ra x và k t ấ ếthúc
• Bước 1 : Nhập a, b.• Bước 2 : Nếu a = 0 thì quay lại bước 1, ngược lại thì qua bước 3.• Bước 3 : Gán cho x giá trị -b/a, rồi qua bước 4.• Bước 4 : Đưa ra kết quả x và kết thúc.
SƠ ĐỒ KHỐILIỆT KÊ
![Page 15: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/15.jpg)
Ta cần diễn tả thuật toán bằng một ngôn ngữ sao cho máy tính có thể hiểu và thực hiện được, ngôn ngữ đó gọi là ngôn ngữ lập trình. Kết quả diễn tả thuật toán như vậy gọi là chương trình.
LƯU Ý
![Page 16: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/16.jpg)
III. VÍ DỤ VỀ THUẬT TOÁNIII. VÍ DỤ VỀ THUẬT TOÁN
Bài toán 1 :
Cho dãy số gồm N số sau (N = 5):
11 6 20 4 8 Tìm giá trị NHỎ NHẤT của dãy số
trên ?
![Page 17: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/17.jpg)
HÖÔÙNG DAÃN:- Goïi Min laø giaù trò nhoû nhaát caàn tìm.- Gaùn Min baèng giaù trò phaàn töû ñaàu tieân cuûa daõy. - Laàn löôït so saùnh Min vôùi caùc phaàn töû tieáp theo trong daõy. Taïi moãi vò trí so saùnh : + Neáu Min lôùn hôn giaù trò phaàn töû caàn so saùnh trong daõy thì laáy giaù trò cuûa phaàn töû ñoù gaùn laïi cho Min.
- Khi so saùnh ñeán phaàn töû cuoái cuøng trong daõy soá thì Min seõ mang giaù trò nhoû nhaát cuûa daõy.
Gán i = 2 11 6 20 4 8
Min
Min=11
Min=6
Min=4
Giaù trò nhoû nhaát: 4Biến i lưu trữ vị trí tiếp theo mà Min sẽ so sánh+ Tăng i lên 1 đơn vị
![Page 18: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/18.jpg)
SƠ ĐỒ KHỐI :SƠ ĐỒ KHỐI : Nhaäp N vaø daõy a1,…, aN
Min = a1 , i = 2
i <=N
Min > ai
Min = ai
i = i+1
Ñöa ra Min roài keát thuùc
Sai
Ñuùng
Ñuùng
Sai
![Page 19: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/19.jpg)
LIỆT KÊLIỆT KÊ Böôùc 1 : Nhaäp N vaø daõy a1,…, aN.
Böôùc 2 : Ñaët Min= a1, i=2;
Böôùc 3 : Neáu i<=N thì thöïc hieän böôùc 4, neáu khoâng thì chuyeån ñeán böôùc 5.
Böôùc 4 : 4.1. Neáu Min > ai thì ñaët Max=ai.
4.2. Taêng i moät ñôn vò roài quay veà böôùc 3
Böôùc 5 : Ñöa ra Min roài keát thuùc.
![Page 20: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/20.jpg)
Bài toán 2 :
Tìm giá trị LỚN NHẤT của một dãy số với Input và Output như sau:
• Input : Số nguyên dương N và dãy N số a1,...,aN.
• Output : Giá trị lớn nhất (Max) của dãy số.
Mô tả thuật toán để giải bài toán này theo cả 2 cách liệt kê và dùng sơ đồ khối.
4. VÍ DỤ VỀ THUẬT TOÁN (tt)4. VÍ DỤ VỀ THUẬT TOÁN (tt)
![Page 21: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/21.jpg)
CÁC THUẬT NGỮ CHÍNHCÁC THUẬT NGỮ CHÍNH
Là việc nào đó ta muốn máy tính thực hiệnCác thông tin đã có
(các giả thiết)
Các thông tin cần tìm từ Input (kết luận)
*Một dãy hữu hạn các thao tác.*Các thao tác được sắp xếp theo một trình tự xác định.*Sau khi thực hiện dãy thao tác đó, từ Input ta tìm được Output của bài toán.
Dùng các biểu tượng qui ước để thể hiện các thao
tác trong thuật toán
• Bài toán
• Input
• Output
• Thuật toán
• Sơ đồ khối
![Page 22: Baigiang4 thuattoan-120116191825-phpapp02](https://reader033.vdocuments.mx/reader033/viewer/2022052910/559cd6861a28ab945f8b461e/html5/thumbnails/22.jpg)
BÀI T P V NHÀẬ Ề
Bài 1, 3, 4, 5, 6 trang 27 – 28
(SGK)