Tải bản đầy đủ (.ppt) (41 trang)

Tiet 09 bai toan va thuat toan

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (967.29 KB, 41 trang )

Ví dụ 1: Quản lí điểm trong một kì thi bằng
máy tính.
SBD

Họ và tên

105 Lê Thị Thu
102 Vũ Ngọc
Sơn
215 Trần Thuỷ
211 Nguyễn
Anh
245 Phan Vân

Văn Toán

8.5
6.0

10.0
8.5



An
h

7.0 9.0
8.5 5.0

7.0


4.5

7.0
5.0

6.5 6.5
7.0 7.5

5.0

2.0

3.5 4.5

Tổn
g

Kết
quả

53

Đỗ

42.5

Đỗ

41


Đỗ

33.5

Đỗ

22

Input:
Họ và tên, Văn, Toán, Lí, Anh.
Yêu
cầu SBD,
:
HÃy xác
định
thông
tin
đathi
vào
(Input)
Output:
Tổng
điểm,
Kết
quả
của
học sinh.
và thông tin cần lấy ra (Output)



Ví dụ 2: Giải phơng trình bậc nhất ax + b = 0.

Yêu cầu :
Input: Các hệ số a, b.
HÃy xác định thông tin đa vào (Input)
Output:
và thông
Nghiệm
tin của
cần ph
lấyơng
ra (Output)
trình.

Với a = 1, b = -5
Phơng trình cã nghiÖm x = 5


Bài 4. Bài toán và thuật Toán
1. Khái niệm bài toán
Là việc nào đó ta muốn máy thực hiện để
từ thông tin đa vào (INPUT) tìm đợc
thông tin ra (OUTPUT).
Ví dơ 3: T×m íc sè 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 sè chung lín nhÊt cđa M vµ N.
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 cña häc sinh.



2. Khái niệm thuật toán
Các em cần
tìm ra cách
giải của bài
toán.
Từ INPUT
làm thế nào
để tìm ra
OUTPUT ?


Xét ví dụ 2: Giải phơng trình bậc nht ax + b
= 0.
B1: Xác định hệ số a, b;

B2: Nếu a=0 và b=0 => Phơng trình vô số nghiệm
=>B5;
B3: Nếu a=0 và b0 => Phơng trình vô nghiệm
=>B5;
B4: Nếu a0 => Phơng trình có nghiệm x=-b/a
=>B5;
B5: Kết thúc.


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ó hai c¸ch thĨ hiƯn mét tht to¸n:
 C¸ch 1: LiƯt kê các bớc.
Cách 2: Vẽ sơ đồ khối.


3. Một số ví dụ về thuật toán

Thuật toán giải phơng trình bậc hai (a
0).
Cách 1: Liệt kê các bớc
B1: Bắt đầu;
B2: Nhập a, b, c;
B3: Tính = b2 – 4ac;
B4: NÕu ∆ < 0 => PT v« nghiÖm => B7;
B5: NÕu ∆ = 0
=> PT cã nghiÖm kÐp x = -b/2a => B7;
B6: NÕu ∆ > 0
=> PT cã hai nghiÖm x1, x2 = (-b ± √∆ )/2a
=> B7;
B7: KÕt thóc.


Cách 2: Vẽ sơ đồ khối
Quy ớc các khối trong sơ đồ thuật toán
Bắt đầu thuật toán.




Dùng để nhập và xuất dữ liệu.

Dùng để gán giá trị và tính toán.

đ

Xét ®iỊu kiƯn rÏ nh¸nh theo mét
trong hai ®iỊu kiƯn ®óng, sai.

ĐK
S

Kết thúc thuật toán.
KT


Sơ đồ thuật toán giải phơng trình bậc
hai
BD

B1

Nhập vào a, b, c

=b

2

-


B2

B3

4ac
đ

<0

B4

PT vô nghiệm

s
đ

b/2a
PT có nghiệm x=
-

=0
s

PT có 2 nghiệm
x1,x = ( -b ± √∆)/2a
2

KT

B5


B7
B6


Mô phỏng thuật toán giải phơng trình
bậc hai
BD

Bộ TEST 1:

nhập
a,b,c=
vào
1 3 a,b,c
5

a

b

c



1

3

5


-11


∆ == b*b
3∗3 −− 4∗5
4*a*c
= − 11

−11
∆ << 00

§

PT v« nghiƯm

S
∆=0
S

PT cã nghiƯm x-b/2a
=
PT cã 2 nghiƯm
x1, x2 = (-b
± √∆ )/2a

KT


Mô phỏng thuật toán giải phơng trình

bậc hai
BD

Bộ TEST 2:

a,b,c=
1 2 a,b,c
1
nhập
vào

a

b

c



1

2

1

0


== b*b
22 411

4*a*c= 0

< 0
S

PT vô nghiƯm

§
∆ = 0

S

§

PT cã
cã nghiƯm
nghiƯm x=-b/2a
kÐp x=-1
PT
PT cã 2 nghiƯm
x1, x2 = (-b
± √∆ )/2a

KT


Mô phỏng thuật toán giải phơng trình
bậc hai
Bộ TEST 3:


BD

a,b,c=
1 -5a,b,c
6
nhập
vào

a

b

c



1

-5

6

1


== b*b
25 244*a*c
= 1

< 0

S

PT vô nghiệm

Đ
= 0

S

§

PT cã nghiƯm x=-b/2a

2 nghiƯm
PT cã nghiƯm
x1 = 3
x1,
x22= (-b
x2 =
± √∆ )/2a

KT


Thuật toán tìm max

3

Ngời ta đặt 5 quả bóng có kích thớc khác
nhau trong hộp đà đợc đậy nắp nh hình

bên. Chỉ dùng tay hÃy tìm ra quả bóng có
kích thíc lín nhÊt .


Cùng tìm thuật toán

Quả này
lớn nhất

MAX

Quả này
mới lớn
nhất

ồ!
Tìm
Quảra
này
quảlớn
lớn
nhất
hơn rồi!


Thuật toán tìm số lớn nhất trong
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, a2, …, aN (ai víi i: 1N).
OUTPUT: Sè lín nhÊt (Max) cđa d·y sè.


ý tởng:
- Đặt giá trị Max = a1.
- Lần lợt cho i chạy từ 2 đến N, so sánh
giá trị ai với giá trị Max, nếu ai > Max thì
Max nhận giá trị mới là ai.


Cách 1: Liệt kê các bớc
B1: Nhập N và dÃy a1,…, aN;
B2: Max ← a1; i ← 2;
B3: NÕu i > N thì đa ra giá trị Max rồi kết
thúc;
B4:
Bớc 4.1: NÕu ai > Max th× Max ← ai;
Bíc 4.2: i ← i+1 råi quay l¹i B3.


Cách 2: Sơ đồ khối
Nhập N và dÃy a1,
,aN

Max a1 ; i ← 2

B1: NhËp N vµ d·y a1,…,aN;

B2: Max ← a1; i ← 2;


§
i>N?

S

§a ra Max råi kÕt thóc

S
ai > Max ?

§
Max ← ai

i ←i + 1

B3: NÕu i > N thì đa ra giá
trị
Max rồi kết thúc;
B4 :
4.1: NÕu ai > Max th× Max ←
a4.2:
i;
i ← i + 1 råi quay l¹i B3.


4
Với i = 5
2
3

Nhập
dÃy
a1,
N=5 ;NAvà
[5
14
7
,aN
6]

Max
22
Max
a1
5 ;;ii

I >> N
2
3
4
5
6
5?

S
S

1>>Max
5 ???
ai7>

4>
57

Đ
Max a
7i

ii

3+1
5+1
2+1
i+1
4+1

Đ

A
i

5

Max

5

1
2
5


4
3
5

7
4
7

ĐSố
a ra
lớnMax
nhấtrồi
của
kết
dÃy
thúc

7

Mô phỏng
thuật toán

6
5
7


Nhập
dÃy
a1,

N=5 ;NAvà
[5
14
7
,aN
6]

Max
22
Max
a1
5 ;;ii

I >> N
6
2
3
4
5
5?

S
S

1>>Max
5 ???
ai7>
4>
57


Đ
Max a
7i

ii

3+1
5+1
2+1
i+1
4+1

Đ

A
i

5

Max

5

1
2
5

4
3
5


7
4
7

ĐSố
a ra
lớnMax
nhấtrồi
của
kết
dÃy
thúc

7

6
5
7


Thuật toán kiểm tra tính nguyên tố
của một số nguyên dơng

Xác định bài toán:
INPUT: N là một số nguyên dơng.
OUTPUT: Trả lời câu hỏi N có là số
nguyên tố không?



Các em hÃy nêu
định nghĩa
số nguyên tố.

ý tởng: Xét các trờng hợp
- Nếu N = 1 thì N không là số nguyên tố.
- Nếu 1< N <4 thì N là số nguyên tố.
- Nếu N 4 và không có ớc số trong phạm vi từ 2
đến phần nguyên căn bậc hai của N thì N là số


Mô phỏng thuật toán kiểm tra tính nguyên
tố
Trờng hợp 1: N = 45 ([ 45 ] = 6)
i

2

3

N/i

45/2

45/3

Chia
hết
không?


Không

Chia
hết

45 không là
số nguyên
tố.

Trờng hợp 2: N = 29 ([ 29 ] =
5)

29 là số
nguyên tố.

i

2

3

4

5

N/i

29/2

29/3


29/4

29/5

Chia
hết

Không

Không

Không

Không


Cách 1: Liệt kê các bớc
B1: Nhập số nguyên dơng N;
B2: Nếu N = 1 thông báo N không nguyên tố, kết
thúc;
B3: Nếu N < 4 thông báo N là nguyªn tè råi kÕt
thóc;
B4: i ←2;
B5: NÕu i > [√ N ] thì thông báo N là nguyên tố,
kết thúc;
B6: Nếu N chia hết cho i thì thông báo N không
nguyên
tố rồi kết thúc;
B7: i i +1 rồi quay l¹i B5.



Nhập N

Đ

Cách 2
Vẽ sơ đồ khối

N =1
?

S

Đ

N<
4?

S

i 2

Đ
i>[N
]?

S
i i +1


Thông báo N
không là số
nguyên tố rồi
kết thúc.

S

N có
chia hết
cho i ?

Đ

Thông báo N là số
nguyên tố rồi kết
thúc.


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×