* Kết luận về tính hiệu quả của một thuật toán * Dặn dò HS xem lại, đối chiếu những điểm khác nhau giữa sơ đồ thuật toán trên slide và trong SGK – Làm thêm các bài toán tương tự theo gợi[r]
Trang 1Bài 4 BÀI TOÁN VÀ THUẬT TOÁN
I
1
-2 H I :
Mô
- Có khái ban $ !C &) cách dùng &
II
- Giáo viên
-III CÁC
-quan
IV
%&' ()*+
%&' ()*+ 1 : tra bài
_
-OJ tiêu : Giúp HS ôn
toán, Ma lí bX
liên
-lí thông tin trên máy tính
Chú ý theo dõi
Câu
- Khái
- Các thành
-(Input/Output Device) ?
- Vai trò E< CPU?
- Qui trình,
345 Tính toán 829' 1: ;0<2 8= lí thông tin
14% 5 1)
%&' ()*+ 2 : Khái
Bài toán trong Tin
k sung 4% 5 1 2
1
khái
2 Cách hành
345 Tính toán 829' 1: ;0<2 8= lí thông tin
Bài toán INPUT ========== OUTPUT
14% 5 2)
§4 BÀI TOÁN – F TOÁN
Trang 2,- GV ,- HS
*
toán trong Tin
* `\ khác & >< bài toán
trong Tin
toán thông
nhóm
* GV k 2,
- Làm ! theo nhóm
- Các nhóm báo cáo ='
-m9 nghe, ghi chép
I BÀI TOÁN
1 Khái niệm
Tìm USCLN E< 2 46 nguyên /:%
GH' ;24* :
Trong
:; xem là bài toán “Bài toán là một việc
mà ta muốn máy tính thực hiện”
%&' ()*+ 3 : Input,
Output E< bài toán
1 OJ tiêu : Giúp HS 9
rõ 2 thành
2 Cách hành :
Yêu
xác
các ví /J trên
* GV
HS tìm Input, Output
% &' Input, Output
* Yêu
r A bài toán !B Input,
Output E< nó Ghi ='
vào
- Làm ! theo nhóm
- Các nhóm báo cáo ='
-m9 nghe, ghi chép
- Suy nhanh, ghi
2 Các thành phần của 1 bài toán tin học
- Vào a, b, c x1, x2
- Vào tên $ sách, 2D) 46 2:; :; k
- Vào 2 46 nguyên /:% a, b USCLN m
- Vào 46 các môn G, Kh, TB, Y, K
GH' ;24* :
Các bài toán INPUT : Các thông tin OUTPUT : Các thông tin $ tìm 1 2,) yêu $7
%&' ()*+ 4 : Khái
1 OJ tiêu :
Giúp HS
2 Cách hành :
k sung 4% 5 2, trình bày
khái
qua 4% 5 này
-m9 nghe, quan sát, ghi chép
II F TOÁN
1 Khái niệm
…
Bài toán
INPUT ========== OUTPUT
Bằng cách nào?
Giải bài toán Hướng dẫn các thao tác Thuật toán cho máy thực hiện
GH' ;24* :
Thuật toán
INPUT ========== OUTPUT
(thao tác 1; … ; thao tácn)
324' toán (J +0K0 L)' bài toán là :
- OA dãy 3:2 3&* các thao tác (tính /K7
- Các thao tác :; '0H* hành theo L)' trình
- Sau khi
*34* (VW, Output E< bài toán (tính
97
%&' ()*+ 5 : Mô ' các 2 Mô tả các thao tác trong thuật toán
Trang 3,- GV ,- HS
thao tác trong
1 OJ tiêu : Giúp HS & )
toán: m kê, dùng 4% 5
2 Cách hành :
* Yêu
theo nhóm và nêu các &:B
ax2 + bx + c = 0
* S; ý, giúp HS 49# M#
* Chú ý : S' thích 4% 2:;
gán ()
* W0 D &P cách 2 kê
? khi dài dòng và do có 4\
khác & ngôn > và cách
/0 D /0 D &P 4%
GV
* Nêu ý
:; trong 4% 5
* 2 cách trên /0 D trên
:; 4a /J cho con
qua ngôn > 2,# trình
-$ E< GV theo nhóm
-Op nhóm 2
kê các &:B hành
-m9 nghe, ghi chép
- Có :; khái
!C Ngôn
> 2,# trình và máy tính
:B 2 : Tính b2 – 4ac;
5 thúc;
x = -b/2a, 5 thúc;
x1, x2 = (-b})/2a, 5 thúc;
- Tính giá
- m: giá N tính :; vào tên & bên trái
Cách ;0<' kê :
Nêu $ \ các &:B $ hành
Cách [\ ]^ (_ Y3`0
Nhập a, b, c (với a<>0)
b 2
- 4ac
Thông báo vô nghiệm, rồi kết thúc
Thông báo x=-b/2a, rồi kết thúc
Thông báo x1, x2=(-b√2a,
rồi kết thúc
Ý
Ngôn *+: ;45 trình :; dùng /0 ' các
A ,3V^*+ trình máy tính.
A dãy 46 nguyên
1 OJ tiêu : E 6
vào bài toán
2 Cách hành
* Yêu
- Chú ý quan sát, ' 2^ theo
Xác định bài toán:
Input: `6 nguyên /:% N và dãy N 46 nguyên
a1, a2, …, aN (ai!B i: 1N) Output:
Ý tưởng:
- r giá N Max = a1
S
S
Trang 4,- GV ,- HS
toán : Input, Output
* Dùng slide mô
ý :Z bài toán :B
/[ HS K &:B 2 kê
các thao tác
* GV k xây /\
2 kê
*
cách & /0 &P 4% 5
:% GV ; ý và
* Yêu $ HS \ !Q 2D 4%
*
- Xác
- Hình thành ý :Z
- Xây
&:B E< GV
* HS tham gia xây /\ 4% 5
% '
* HS trên ,#
- m$ 2:; cho i K 2 N, so sánh giá N ai!B giá N Max, ai > Max thì Max
i
Xây dựng thuật toán:
a) Cách 2 kê:
1,a2…, aN;
:B 2: Max a1; i 2;
:B 3: 8 i > N thì :< ra giá N Max
5 thúc;
:B 4: 8 ai > Max thì Max ai;
:B 5: i i+1 5 quay 2D B3
a)
tra tính nguyên 6 E<
A 46 nguyên /:%
1 OJ tiêu : Giúp HS 9
tính
2 Cách hành :
*
hành xây
* Yêu $ các nhóm xác
* GV &k sung thêm các
tính
thành ý :Z '324' toán 1
c(^* +0K*d
* S; ý tìm :B 46 i > 1 $
tiên
N trong 2
nguyên 6 và không nguyên
tính
* nhóm, xác Input, Output
* Phát & 2D
nguyên 6
* gia hình thành ý
III $ /e VÍ "f F TOÁN
A (O TRA TÍNH NGUYÊN
1 Xác định bài toán
- Input : N là A 46 nguyên /:%
- Output : N là
N không là 46 nguyên 6
8 : OA 46 nguyên /:% N là 46 nguyên 6
TC : - 8 N = 1 N không là 46 nguyên 6
- 8 1 < N < 4 N là 46 nguyên 6
2 Ý tưởng
- N<4 : Xem
- N>=4 : Tìm :B i $ tiên > 1 E< N
* 8 i < N N không là 46 nguyên 6
(vì N có ít
Nhập N, a 1 , a 2 ,…,a n
Đưa ra Max ; Kết thúc
i > N ?
a i > Max ? Max a 1 ; i 2
Max a i
B.1 B.2 B.3
B.4
B.5
Đ S
S
Đ
i i + 1
Trang 5,- GV ,- HS
* S K nhóm tham gia
xây
* So sánh
xây
* Mô
các
* Nêu !X C khi áp /J
N 2B Yêu $ '
'324' toán 2 c30<2 g2K
3^*d
* GV trình bày các &:B
hình thành
* Các nhóm tham gia xây
* Quan sát, theo dõi
* Góp ý hình thành ý :Z
* Quan sát, theo dõi, so sánh, phát
khác nhau ><
4% 5 trên slide
và SGK
* 8 i = N N là 46 nguyên 6
3 Xây dựng thuật toán
a) Cách liệt kê :
:B 2 : 8 N=1 thì thông báo “N không là
46 nguyên 6) thúc;
:B 3 : 8 N<4 thì thông báo “N là 46
nguyên 6) thúc;
:B 4 : i 2 ;
:B 5 : 8 i là :B E< N thì &:B 7
:B 6 : i i +1 5 quay 2D &:B 5;
1I i lên 1 % !N7
:B 7 : 8 i = N thì thông báo “N là 46
nguyên 6) :; 2D thì thông báo
“N không là 46 nguyên 6) thúc;
b) Sơ đồ :
từ 2 đến phần nguyên căn bậc 2 của N N là
số nguyên tố”
*
Ý
N :
- 8 không tìm :; N là 46 nguyên 6
- 8:; 2D N không là 46 nguyên 6
Xây dựng thuật toán :
a) Cách liệt kê :
:B 2 : 8 N=1 thì thông báo
“N không là 46 nguyên 6) thúc;
:B 3 : i 2 ;
:B 4 : 8 (i <= }87 và (i không là :B
E< N) thì i i +1, 5 2r# 2D &:B này;
:B 5 : 8 (i > }87 thì thông báo
“N là 46 nguyên 6) :; 2D thì thông báo “N không là 46 nguyên 6)
Trang 6,- GV ,- HS
*
* Wr dò HS xem 2D) 6
nhau
trên slide và trong SGK –
Làm thêm các bài toán
:% \ theo ; ý trên
thúc;
b) Sơ đồ :
Ngoài các tính toán, :^ ta còn chú 'Qk*+ (H* tính 30<2 g2K E< nó.
%&' ()*+ 8 : Bài toán 49#
M# &P cách tráo k
1 OJ tiêu : rõ $
quan
49# M# Hình thành H
I làm ! theo trình :
khoa
2 Cách hành :
* GV
nêu lên $ quan E<
6 :;
* GV xác
* GV
án do HS :< ra
* OA cách % ') :%
thành
toán
* GV trình
* Xác
quan tâm
* Các nhóm tham gia cho ví /J !C các bài toán 49# M#
^ 46
* Nhóm 2,) C MX
* Quan sát, theo dõi
B `Y bY 8S CÁCH TRÁO (
' tính , \ theo các tiêu chí :
- k sáng : g sinh cá nhân, I sáng, :^
- Danh sách
Tìm ) truy MX 6 :; A cách /0 dàng
1 Xác (U*3 bài toán
Input : Dãy A 5 N 46 nguyên a1, a2,…,an
Output : Dãy A :; 49# M# thành dãy không
'
2 Ý 'Vn*+
dãy, chúng cho nhau (Các 46 2B 4Q :;
Trang 7,- GV ,- HS
tên chúng :
-
-
p 2$ so sánh
-
* Dùng suy /[ K &:B
phát
thành các &:B
(slide minh
* S; ý các nhóm tham gia
sang /D 4% 5
* GV
:< ra 4% 5 chính xác
*
- Mô ' thêm '324' toán
tráo (o0 giá 'QU 2 M0H* cho
nhau
!C & cho các em
- _ 6 : trình bày thêm ý
49# M# % ' khác 1p
toán tìm
tham gia xây
* Các nhóm tham gia !Q)
* HS theo dõi, nêu câu
không có
3 Xây 1S*+ '324' toán
* 1&7 1
2
so sánh, E< N : M N 3
thì dãy u :; 49# M# thúc
4 M
$ tiên i 0
5
i 6
u hoàn X M 46 phép so sánh E< 2:; này mr# 2D &:B 3, &9 $ 2:; 1!B 46 46
Z &:B 4)
7 So sánh 2
8 Quay 2D &:B 5 a)
B.2 : M N ; B.3 : 8 M < 2 thì :< ra dãy A u :; 49# M#) 5 thúc;
B.4 : M M-1 ; i 0 ; B.5 : i i - 1 ;
B.6 : 8 i > M thì quay 2D &:B 3;
B.7 : 8 ai > ai+1 thì tráo k ai và ai+1 cho nhau;
B.8 : Quay 2D &:B 5;
b) `% 5
Nh ập N và a 1 , a2,…,an
Đưa ra A; Kết thúc
M < 2 ?
M M - 1; i 0
i > M ?
M
i i + 1
B.1 B.2
B.3
B.4
B.5
B.6
Đ S
Đ
S
Trang 8,- GV ,- HS
toán,
%&' ()*+ 9 : Bài toán tìm
1 OJ tiêu : 89 !> 1
quan
E< 49# M# – tìm `\
linh
2 Cách hành :
* GV E 6 bài _ và /[
lên $ quan E<
quan
46 các trang Web trên D
Internet làm sao các p máy
tìm
chính xác và nhanh !,Fe
*
% ') \ nhiên nên GV
có
:B và trình bày mô
* Trình bày các slide minh
* HS tham gia phát
rõ quan M# và tìm
* Quan sát, theo dõi
C BÀI TOÁN TÌM (O
Là
- Tìm
- Tìm A =F sách trên sách
- Tìm A trang Web trang D Internet C1 TÌM (O i8
1 Xác (U*3 bài toán
Input : Dãy A 5 N 46 nguyên khác nhau a1, a2,…,an và A 46 nguyên k (khóa)
5 7 1 4 2 9 8 11 25 51
Và k = 2 (k = 6)
Output : không tìm
Vị trí của 2 trong dãy là 5 (không tìm thấy 6)
2 Ý 'Vn*+
Tìm nhiên : sánh giá khi
khóa trên dãy
3 Xây 1S*+ '324' toán
a) Cách 2 kê
giá N khoá k;
:B 2: i 1;
thúc;
:B 4: i i + 1;
:B 5: 8 i > N thì thông báo dãy A không
có
thúc;
:B 6: Quay 2D &:B 3;
Trang 9,- GV ,- HS
* Nêu !X C :
“Nếu dãy A đã được sắp
thứ tự tăng Có cách nào
tăng nhanh tốc độ tìm kiếm
một giá trị khóa k trên dãy
không ?”
* GV xác
* GV nói rõ !C r nguyên
ai nào trên dãy
N
Khi thay
1 $ mà thôi :
- Khi a>< > k thu
phía trái a$ thay k
- Khi a>< < k thu
phía 6 thay k
a$ > a6
* Mô
* GV ; ý K &:B &P
các câu
* nhóm, trình bày
* Theo dõi các ví /J E< GV
9 rõ ý :Z
* Chú ý quan sát slide mô
* Các nhóm tham gia 2 kê các &:B
b) `% 5
C2 TÌM (O 8 PHÂN (trên dãy I7
1 Xác (U*3 bài toán
Input : Dãy A là dãy I 5 N 46 nguyên khác nhau a1, a2,…,an và A 46 nguyên k
2 4 5 6 9 21 22 30 31 33
Và k = 21 (k = 25)
Output : gN trí i mà ai = k không tìm
Vị trí của 21 trong dãy là 6
2 Ý 'Vn*+
cách thu
so sánh k (a><), khi
- 8 a><= k tìm
- 8 a>< > k
K a$ >< - 1;
- 8 a>< < k
K a>< + 1 a6
Quá trình trên :; 2r# 2D cho khi tìm
&P p
3 Xây 1S*+ '324' toán
a) Cách 2 kê
a1, a2,…, aN và giá N khoá k;
:B 2: $ 1; 6 N;
:B 3: S>< 1$x.67f"w
Nh ập N, a 1 , a 2 ,…,a n và k
Đưa ra i ;
K ết thúc
a i = k ?
i > N ?
i 1
i i + 1
B.1 B.2
B.3
B.4
B.5 B.6
Đ S
S
Đ
Thông báo dãy A không có số hạng
có giá trị bằng k; Kết thúc
Trang 10,- GV ,- HS
* O^ nhóm D / lên
kê
/[) ; ý)
* GV 2, &P cách
:B 4: 8 aS>< = k thì thông báo
:B 5: 8 aS>< > k thì r 6 = S>< - 1
:B 6: $ S>< + 1;
:B 7: 8 $ > 6 thì thông báo không
tìm
:B 8: Quay 2D &:B 3
b) `% 5
V
- Tóm
- Yêu
quan
-Wr HS xem 2D các ví /J trong sách GK
- Giao bài
Yêu $ các em xem :B bài “Ngôn > 2,# trình”
Nhập N, a 1 , a 2 ,…,a n và k
Đưa ra Giữa ; Kết thúc aGiữa = k ?
Đầu > Cuối ?
Đầu 1; Cuối N
Đầu Giữa + 1
B.1
B.2
B.3
B.4
B.5
B.6
Đ S
S
Đ
Thông báo không tìm thấy khóa k;
K ết thúc
Giữa [(Đầu+Cuối)/2]
aGiữa > k ? Cu ối Giữa - 1
Đ
S
B.7
B.8
...vào
- Làm ! theo nhóm
- Các nhóm báo cáo =''
-m9 nghe, ghi chép
- Suy nhanh, ghi
2 Các thành phần toán tin học< /b>
- Vào a,... class="page_container" data-page="2">
,- GV ,- HS
*
tốn Tin
* `\ khác & >< toán
trong Tin
tốn thơng
nhóm
* GV k 2,
- Làm !...
Bằng cách nào?
Giải toán Hướng dẫn thao tác Thuật toán cho máy thực hiện
GH'' ;24* :
Thuật toán< /b>
INPUT ========== OUTPUT