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

Bài giảng Tin học 10 - Bài 4: Bài toán và thuật toán (Bùi Thanh Hoàn)

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 (612.35 KB, 41 trang )

Ví dụ 1: Quản lí điểm trong một kì thi bng mỏy tớnh.
SBD

Họ và tên

Văn Toán



An
h

105 Lê Thị Thu
8.5 10.0 7.0 9.0
102 Vũ Ngọc
6.0 8.5 8.5 5.0
Sơn
215 Trần Thuỷ
7.0 7.0 6.5 6.5
211 Ngun
4.5 5.0 7.0 7.5
Anh
245 Phan V©n
5.0 2.0 3.5 4.5
Input: SBD, Họ và tên, Văn, Tốn, Lí, Anh.
u cầu :
 Output:
điểm,
Kết quả
thi của
sinh.


HãyTổng
xác định
thông
tin đưa
vào học
(Input)
và thông tin cần lấy ra (Output)

Tỉn
g

KÕt
qu¶

53

Đỗ

42.5

Đỗ

41

Đỗ

33.5

Đỗ


22


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

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

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 tốn

Giáo viên: Bùi Thanh Hồ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 tố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 tốn
Các em cần tìm ra
cách giải của bài
tố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 nhất 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à b≠0 => Phương trình vơ nghiệm =>B5;
B4: Nếu a≠0 => 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 thuật tố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 tốn
Thuật tố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 tốn.

đ

ĐK


S

Xét điều kiện rẽ nhánh theo một trong hai
điều kiện đúng, sai.
Kết thúc thuật toán.

KT


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

B1

Nhập vào a, b, c

B2

 =b

2

-

B3

4ac
đ


 <0

B4

PT vơ nghiệm

s
đ

PT có nghiệm x= -

 =0
s

b/2a

PT có 2 nghiệm
x1,x2 = ( -b
 )/2a

KT

B5

B7
B6


Mơ phỏng thuật tốn giải phương trình bậc hai
BD


Bộ TEST 1:

nhËp
a,b,c=
vµo
1 3a,b,c
5

a

b

c



1

3

5

-11

b*b4*a*c

3 3 4 5 
11


0
 
0

Đ
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 tốn giải phương trình bậc hai
BD

Bộ TEST 2:

a,b,c=
1 2a,b,c
1
nhËp

vµo

a

b

c



1

2

1

0

b*b4*a*c
 2 2 4 1 1


S

S

Đ

PT vơ nghiệm


Đ
PTcó
cónghiệm
nghiệmx=-b/2a
kép x=-1
PT
PT có 2 nghiệm
x1, x2 = (-b  )/2a

KT


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

BD

a,b,c=
1 -5
6
nhËp
vµo
a,b,c

a

b

c




1

-5

6

1

b*b4*a*c
 25 24 


S

S

Đ

PT vơ nghiệm

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

2 nghiệm
PT có nghiệm
x1 = 3
x1,
x22= (-b  )/2a

x2 =

KT


THUẬT TỐ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 TỐN
Quả này mới
lớn nhất
Quả này lớn
nhất

MAX

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



Thuật tốn tìm số lớn nhất trong
một dãy số ngun

Xác định bài toán:

INPUT: Số nguyên dương N và dãy N số
a1, a2, …, aN (ai với i: 1N).
OUTPUT: Số lớn nhất (Max) của dãy số.

nguyên


Ý 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


B1: Nhập N và dãy a1,…,aN;

B2: Max  a1; i  2;

Max  a1 ; i  2
Đ

i>N?

Đưa ra Max rồi kết thúc

S
S

ai > Max ?

B3: Nếu i > N thì đưa ra giá trị
Max rồi kết thúc;

Đ

Max  ai

B4 :
4.1: Nếu ai > Max thì Max  ai;

4.2: i  i + 1 rồi quay lại B3.
i i+1



Với i = 5432
Nhập
N=5 ;NAvà
[ 5dãy
1 4a1,…,aN
76]

Max
Max
 a1
5 ;;ii 22

A
i

5

Max

5

1
2
5

4
3
5


Đ

I >> N
2
3
4
5
6
5?

Đưa
Số
lớn
ranhất
Maxcủa
rồi dãy
kết thúc
là 7

S
S

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

Max a

7i

ii 

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

Mơ phỏng
thuật tốn

7
4
7

6
5
7


Nhập
N=5 ;NAvà
[ 5dãy
1 4a1,…,aN
76]

Max
Max

 a1
5 ;;ii 22

A
i

5

Max

5

1
2
5

4
3
5

Đ

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
Số
lớn
ranhất
Maxcủa
rồi dãy
kết thúc
là 7

7

4
7

6
5
7


Thuật tốn kiểm tra tính ngun tố của một số
ngun 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ố
ngun 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ố ngun 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ố nguyên tố.



Mơ phỏng thuật tốn kiểm tra tính ngun 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ố.

29 là số nguyên
tố.

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

i

2

3

4

5

N/i
Chia
hÕt

29/2
Kh«ng

29/3
Kh«ng

29/4
Kh«ng

29/5
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 ngun 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
S

i  i +1


N có chia
hết cho i ?
Đ

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

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


×