1. Trang chủ
  2. » Giáo án - Bài giảng

bài 4: bài toán và thuật toán

18 2,4K 7
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 18
Dung lượng 243 KB

Nội dung

Khái niệm: 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

Trang 1

Ngày giảng Lớp Sĩ số

Tiết 10: § 4 BÀI TOÁN VÀ THUẬT TOÁN(Tiết 1)

I Mục tiêu:

1 Kiến thức: Biết khái niệm bài toán và thuật toán

2 Kỹ năng: Xác định được hai thành phần cơ bản cấu thành một bài

toán là input và output

3 Thái độ: Tích cực trong việc phát triển khả năng tư duy.

II Chuẩn bị của giáo viên và học sinh.

1 Chuẩn bị của GV: SGK, SGV, giáo án.

2 Chuẩn bị của HS: học bài cũ, đọc trước bài mới.

III Hoạt động dạy - học:

1 Ổn định tổ chức:

2 Kiểm tra bài cũ:

- Một máy tính chưa có phần mềm có thể hoạt động được không? Vì sao?

3 Nội dung bài mới :

Hoạt động 1: Tìm hiểu khái

niệm bài toán

GV: Trong toán học ta nhắc

nhiều đến khái niệm “bài toán”

và ta hiểu đó là những việc mà

con người cần phải thực hiện

sao cho từ những thông tin đã

có phải đưa ra một kết quả nào

đó Vậy bài toán trong tin học

có gì khác?

GV: Đưa ra ví dụ 1 và 2

1 Khái niệm bài toán.

Trang 2

Ví dụ 1a: Bài toán Giải PT:

ax + b = 0 (với a≠0) (*)

Ta nói đây là một bài toán

Bài toán này có các thành

phần:

- Input: các giá trị a, b.

- Output: tìm giá trị x thoả mãn

(*)

Ví dụ 1b: Bài toán: cho số

nguyên dương N và dãy A: a1,

a2, ,aN Tìm giá trị lớn nhất

của dãy A

- Input: Số nguyên dương N và

dãy A

- Output: Max(a1, a2, ,aN)

GV: Từ ví dụ 1a, ví dụ 1b em

hãy cho biết bài toán là gì? Và

cũng từ các ví dụ trên ta thấy

bài toán được cấu tạo bởi các

thành phần nào?

HS1: Trả lời câu hỏi

HS2: Bổ sung

GV: Kết luận

GV: Đưa ra ví dụ 1, 2, 3, 4

Yêu cầu HS đứng tại chỗ xác

định các thành phần của mỗi

bài toán

HS: Đứng tại chỗ trả lời

GV: Tổng hợp, kết luận

HS: Ghi bài

Khái niệm: bài toán là việc nào đó ta muốn

máy tính thực hiện

Bài toán được cấu tạo bởi hai thành phần

cơ bản:

- Input (giả thiết): Các thông tin đã có;

- Output (kết luận): Các thông tin cần tìm

từ Input

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

Input: Các số thực a, b, c (a ≠ 0);

Output: Số thực x thoả mãn

ax 2 + bx + c = 0.

ở đây, Output có thể là một hoặc hai số thực hoặc câu trả lời không có số thực nào như vậy

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

Trang 3

Input: Bảng điểm của học sinh trong lớp; Output: Bảng xếp loại học lực.

Hoạt động 2: Tìm hiểu khái

niệm thuật toán.

GV: Muốn máy tính đưa ra

được output từ input cần phải

có chương trình, muốn có

chương trình ta cần có thuật

toán Vậy thuật toán là gì?

GV: Đưa ra ví dụ tìm ngiệm

của phương trình dạng ax + b =

0

HS: Đứng tại chỗ xác định

input và output

GV: Qua ví dụ trên em hãy cho

biết thuật toán là gì?

HS: Trả lời câu hỏi

GV: Kết luận

GV: (Yêu cầu) học sinh xác

định Input và Output và nêu ý

tưởng để giải bài toán

HS: Suy nghĩ trả lời

GV: Tổng hợp

2 Khái niệm thuật toán.

Ví dụ 1: Bài toán Giải PT:

ax + b = 0 (*) Xây dựng thuật toán để giải bài toán trên

* Bài toán này các thành phần:

1 Input: các gía trị a, b.

2 Output: tìm giá trị x thoả mãn (*)

* ý tưởng:

- Nếu a = 0 thì PT vô nghiệm

- Nếu a ≠ 0 thì PT có nghiệm

x = - b/a

* Thuật toán:

Bước 1: Nhập các giá trị a, b

Bước 2: Nếu a = 0 thì đưa ra thông báo PT

vô nghiệm rồi kết thúc

Bước 3: Nếu a ≠ 0 thì đưa ra nghiệm x rồi kết thúc

Khái niệm: 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.

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 a 1 , , a N

- Output: Giá trị lớn nhất Max của dãy số.

Ý tưởng: - Khởi tạo giá trị Max = a 1

- Lần lượt với i từ 2 đến N, so sánh giá trị

số hạng a i với giá trị Max, nếu a i > Max thì

Max nhận giá trị mới là a i

IV Củng cố:

Trang 4

- KN bài toán, thuật toán.

- Hai yếu tố cấu tạo nên bài toán là Input và Output

V Bài về nhà:

- Học bài cũ

- Xây dựng thuật toán để giải bài toán: Tìm giá trị lớn nhất của một dãy số nguyên

- Trả lời các câu hỏi sau bài học

Trang 5

Ngày giảng Lớp Sĩ số

Tiết 11: § 4 BÀI TOÁN VÀ THUẬT TOÁN(Tiết 2)

I Mục tiêu:

1 Kiến thức:

- 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;

- Biết các tính chất của thuật toán

2 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

3 Thái độ:

- Rèn luyện khả năng tư duy khi giải quyết các vấn đề khoa học cũng

như trong cuộc sống

II Chuẩn bị của giáo viên và học sinh.

1 Chuẩn bị của Giáo viên: SGK, SGV, giáo án

2 Chuẩn bị của học sinh: học bài cũ, đọc trước bài mới.

III Hoạt động dạy - học:

1 Ổn định tổ chức:

2 Kiểm tra bài cũ: Khái niệm bài toán? Khái niệm thuật toán?

3 Nội dung bài mới:

Hoạt động 1: Xây dựng thuật toán

giải bài toán tìm giá trị lớn nhất của

dãy số nguyên

GV: Hướng dẫn học sinh xây dựng

thuật toán để giải bài toán tìm giá trị

lớn nhất của một dãy số nguyên

Thuật toán Thuật toán giải bài toán này có

thể được mô tả theo cách liệt kê như sau:

Bước 1 Nhập N và dãy a 1 , , a N;

Bước 2 Max ← a 1 , i ← 2;

Bước 3 Nếu i > N thì đưa ra giá trị Max rồi

Trang 6

HS: Nghe và xây dựng thuật toán

GV: Gọi học sinh lên bảng viết

HS: Viết thuật toán

GV: Nhận xét, bổ sung (nếu có)

GV: Đưa ra ví dụ

Dưới đây là ví dụ mô phỏng các

bước 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

GV: Em hãy nhìn vào thuật toán

dưới dạng sơ đồ khối và hãy cho biết

thuật toán được diễn tả dưới dạng sơ

đồ khối với các quy định thế nào?

HS: Quan sát thuật toán

Đọc sách giáo khoa

Trả lời câu hỏi

GV: Đưa ra kết luận

Hoạt động 2: Tìm hiểu các tính chất

của thuật toán

GV: Qua hai ví dụ trên em hãy cho

biết thuật toán có những tính chất

nào?

HS: trả lời câu hỏi

kết thúc;

Bước 4.

4.1 Nếu a i > Max thì Max ← a i;

4.2 i i + 1 rồi quay lại bước 3;

* Sơ đồ khối.

• 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

Các tính chất của thuật toán.

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 để

Đúng

Đúng

Sai Nhập N và dãy a1, , aN

Max ← ai

ai >

Max?

i > N ?

Max ← a1, i ← 2

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

i ← i + 1

Sai

Trang 7

GV: Hãy chỉ rõ các tính chất của

thuật toán trong ví dụ trên?

HS:

Tính dừng: Vì giá trị của i mỗi lần

tăng lên 1 nên sau N lần thì i > N,

khi đó kết quả phép so sánh ở bước 3

xác định việc đưa ra giá trị Max rồi

kết thúc

Tính xác định: Thứ tự thực hiện các

bước của thuật toán được mặc định

là tuần tự nên sau bước 1 là bước 2,

sau bước 2 là bước 3 Kết quả các

phép so sánh trong bước 3 và bước 4

đều xác định duy nhất bước tiếp

theo cần thực hiện

Tính đúng đắn: Vì thuật toán so sánh

Max với từng số hạng của dãy số và

thực hiện Max ← ai nếu ai > Max nên

sau khi so sánh hết N số hạng của

dãy thì Max là giá trị lớn nhất

đượ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

IV Củng cố:

- Thuật toán có 2 dạng: liệt kê và sơ đồ khối

- Các tính chất của thuật toán

V Bài về nhà:

- Học bài cũ

- Trả lời các câu hỏi sau bài học

Trang 8

Ngày giảng Lớp Sĩ số

Tiết 12: § 4 BÀI TOÁN VÀ THUẬT TOÁN(Tiết 3)

I Mục tiêu:

1 Kiến thức:

- 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;

2 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

3 Thái độ:

- Rèn luyện khả năng tư duy khi giải quyết các vấn đề khoa học cũng như trong cuộc sống

II Chuẩn bị của giáo viên và học sinh.

1 Chuẩn bị của Giáo viên: SGK, SGV, giáo án.

2 Chuẩn bị của học sinh: học bài cũ, đọc trước bài mới.

III Hoạt động dạy - học:

1 Ổn định tổ chức:

2 Kiểm tra bài cũ: Kiểm tra 15’

Cho biết số lượng sản phẩm (SLSP) của người công nhân đã sản xuất

và định mức (DM) sản xuất đối với người công nhân này Em hãy xây dựng

thuật toán (Bằng cách liệt kê hoặc sơ đồ khối) để tính và đưa ra tiền thưởng

(TT) cho người công nhân theo công thức:

TT = (SLSP – DM) 5000 Nếu SLSP > DM

3 Nội dung bài mới:

Hoạt động 1: Tìm hiểu yêu cầu

của bài toán và xây dựng thuật

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

Trang 9

GV: Hướng dẫn học sinh và

cùng học sinh xây dựng thuật

toán để giải bài toán

HS: - Xác định Input và Output

của bài toán

- Nêu ý tưởng để giải bài

toán

- Xây dựng thuật toán để

giải bài toán

GV: Hướng dẫn bổ sung

GV: Gọi học sinh viết cùng viết

thuật toán

HS: Trả lời câu hỏi

Ví dụ 1 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: "N là số nguyên tố" hoặc

"N không là số nguyên tố"

ý tưởng: Ta nhớ lại định nghĩa: Một số nguyên dương N là số nguyên tố nếu nó

có đúng hai ước số khác nhau là 1 và chính nó Từ định nghĩa đó, ta suy ra:

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

Từ đó ta có thuật toán như sau:

Thuật toán

a) Thuật toán diễn tả bằng cách liệt kê Bước 1: Nhập số nguyên dương N;

Bước 2: Nếu N = 1 thì thông báo N không

nguyên tố rồi kết thúc;

Bước 3: Nếu N < 4 thì thông báo N là

nguyên tố rồi kết thúc;

Bước 4: i = 2;

Bước 5: Nếu i > [ N]1 thì thông báo N là

nguyên tố rồi kết thúc;

Bước 6: 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;

Bước 7: i = i + 1 rồi quay lại bước 5.

Trang 10

Ghi chú: Biến i nhận giá trị nguyên thay

đổi trong phạm vi từ 2 đến  N

+ 1 và dùng để kiểm tra N có chia hết cho i hay không

b) Sơ đồ khối

Hoạt động 2: Nghiên cứu ví dụ mô phỏng

GV: Lấy ví dụ mô phỏng và giải thích cho học sinh hiểu

Dưới đây là ví dụ mô phỏng các bước thực hiện thuật toán trên

Với N = 29 ( 29  = 5 ) Với N = 45 ( 45  = 6 )

N/i 29/2 29/3 29/4 29/5 N/i 45/2 45/3

Chia hết

không? Không Không Không Không Chia hết không? Không Chia hết

a) 29 là số nguyên tố b) 45 không là số nguyên tố

Đúng

Nhập N

N = 1 ?

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

i ← 2 i>?

i ← i + 1 N chia hết cho i ?

N < 4 ?

Thông báo N không là số

nguyên tố rồi kết thúc

Đúng Sai

Sai

Đúng

Sai

Đúng Sai

Trang 11

IV Củng cố:

- Cho học sinh mô phỏng việc thực hiện thuật toán trên và cho biết số 25 có phải là số nguyên tố hay không?

V Bài về nhà:

- Học bài cũ

- Trả lời các câu hỏi sau bài học

Trang 12

Ngày giảng Lớp Sĩ số

Tiết 13: § 4 BÀI TOÁN VÀ THUẬT TOÁN (Tiết 4)

I Mục tiêu:

1 Kiến thức:

- 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;

2 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

3 Thái độ:

- Rèn luyện khả năng tư duy khi giải quyết các vấn đề khoa học cũng như trong cuộc sống

II Chuẩn bị của giáo viên và học sinh.

1 Chuẩn bị của Giáo viên: SGK, SGV, giáo án.

2 Chuẩn bị của học sinh: học bài cũ, đọc trước bài mới.

III Hoạt động dạy - học:

1 Ổn định tổ chức:

2 Kiểm tra bài cũ: Kết hợp trong giờ

3 Nội dung bài mới:

Hoạt động 1: Tìm hiểu yêu cầu

của bài toán sắp xếp

GV: Đặt vấn đề về bài toán sắp

xếp

HS: Nghe giảng

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

GV: Đưa ra yêu cầu của bài

toán sắp xếp dạng đơn giản (Ví Ví dụ 2 Bài toán sắp xếp:

Trang 13

dụ 2: Bài toán sắp xếp)

HS: Nghiên cứu yêu cầu của bài

toán

GV: Lấy ví dụ

GV: Gọi học sinh nêu input và

output của bài toán

HS: Xác định input và output

GV: Gợi ý cho học sinh hướng

giải bài toán để học sinh xây

dựng ý tưởng

HS: Xây dựng ý tưởng giải bài

toán

GV: Kết hợp với học sinh cùng

xây dựng thuật toán

GV: Giải thích thêm: Ta thấy

rằng, sau mỗi lần đổi chỗ, giá trị

lớn nhất của dãy A sẽ được

chuyển dần về cuối dãy và sau

lượt thứ nhất thì giá trị lớn nhất

xếp đúng vị trí là ở cuối dãy

Tương tự, sau lượt thứ hai, giá

trị lớn thứ hai được xếp đúng ở

vị trí sát cuối, Có thể hình

dung, sau mỗi lượt có ít nhất

một số hạng đã xếp đúng vị trí

và không còn tham gia vào quá

trình đổi chỗ nữa, giống như các

bọt nước từ đáy hồ nổi dần và

khi đã lên mặt nước rồi thì tan

biến Có thể vì thế mà sắp xếp

bằng tráo đổi còn có tên gọi là

sắp xếp nổi bọt (Bubble Sort)

Cho dãy A gồm N số nguyên a1, a2, , aN Cần sắp xếp các số hạng để dãy A trở thành dãy không giảm (tức

là số hạng trước không lớn hơn số hạng sau).

Ví dụ, Thuật toán Sắp xếp bằng tráo đổi (Exchange Sort)

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

- Input: Dãy A gồm N số nguyên a1, a2, , aN

- Output: Dãy A được sắp xếp lại thành dãy không

giảm

ý tưởng: Với mỗi cặp số hạng đứng liền kề trong

dãy, nếu số trước lớn hơn số sau ta đổi chỗ chúng cho nhau Việc đó được lặp lại, cho đến khi không có

sự đổi chỗ nào xảy ra nữa

Thuật toán

a) Cách liệt kê Bước 1: Nhập N, các số hạng a 1 , a 2 , , a N;

Bước 2: M ← N;

Bước 3: Nếu M < 2 thì đưa ra dãy A đã được sắp xếp

rồi kết thúc;

Bước 4: M ← M – 1, i← 0;

Bước 5: i ← i + 1;

Bước 6: Nếu i > M thì quay lại bước 3;

Bước 7: Nếu a i > a i+1 thì tráo đổi a i và a i+1 cho nhau; Bước 8: Quay lại bước 5

b) Sơ đồ khối:

Nhập N và a1, a2, , aN

M ← M – 1; i ← 0

M < 2 ?

i > M ? Đúng

Sai

ai > ai+1 ?

i ← i + 1

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

Sai

Sai Đúng

Tráo đổi ai và ai+1

Trang 14

Ghi chú: sgk

Hoạt động 2: Nghiên cứu ví dụ mô phỏng

GV: Lấy ví dụ mô phỏng giải thích thêm cho thuật toán

HS: Theo dõi và phát biểu ý kiến (nếu có)

IV Củng cố:

- Cho một dãy số nguyên và yêu cầu học sinh áp dụng thuật toán để sắp xếp

V Bài về nhà:

- Học bài cũ

- Trả lời các câu hỏi sau bài học

- Đọc trước thuật toán của bài toán tìm kiếm

Trang 15

Ngày giảng Lớp Sĩ số

Tiết 14: § 4 BÀI TOÁN VÀ THUẬT TOÁN (Tiết 5)

I Mục tiêu:

1 Kiến thức:

- 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;

2 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

3 Thái độ:

- Rèn luyện khả năng tư duy khi giải quyết các vấn đề khoa học cũng như trong cuộc sống

II Chuẩn bị của giáo viên và học sinh.

1 Chuẩn bị của Giáo viên: SGK, SGV, giáo án.

2 Chuẩn bị của học sinh: học bài cũ, đọc trước bài mới.

III Hoạt động dạy - học:

1 Ổn định tổ chức:

2 Kiểm tra bài cũ: Kết hợp trong giờ

3 Nội dung bài mới:

GV: Đặt vấn đề: Tìm kiếm

là việc thường làm của mỗi

người, chẳng hạn tìm cuốn

sách giáo khoa Tin học 10

trên giá sách để chuẩn bị

cho giờ học ngày hôm sau,

tìm chiếc áo sơ mi mới màu

trắng trong tủ quần áo,…

Nói một cách tổng quát là

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

Ngày đăng: 26/09/2013, 22:10

HÌNH ẢNH LIÊN QUAN

Input: Bảng điểm của học sinh trong lớp; Output: Bảng xếp loại học lực. - bài 4: bài toán và thuật toán
nput Bảng điểm của học sinh trong lớp; Output: Bảng xếp loại học lực (Trang 3)
• Hình thoi thể hiện thao tác so sánh; - bài 4: bài toán và thuật toán
Hình thoi thể hiện thao tác so sánh; (Trang 6)

TỪ KHÓA LIÊN QUAN

w