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

CD3 BAI TOAN THUAT TOAN TIN 10

11 270 0

Đ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 11
Dung lượng 155,86 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

- Hiểu và trình bày được thuật toán tìm giá trị lớn nhất của một dãy số nguyên theo 2 cách: liệt kê hoặc sơ đồ khối; nhận biết được các bài toán khác thuộc lớp các bài toán ví dụ: tìm mi

Trang 1

Ngày soạn: 9/2018 CHƯƠNG I: MỘT SỐ KHÁI NIỆM CƠ BẢN CỦA TIN HỌC

CHỦ ĐỀ 3: BÀI TOÁN VÀ THUẬT TOÁN

§4 BÀI TOÁN VÀ THUẬT TOÁN

I Mục đích bài học:

1 Kiến thức:

- Biết khái niệm bài toán trong Tin học

- Biết khái niệm thuật toán và các tính chất của thuật toán

- Biết khái niệm thuật toán, các đặc trưng chính của thuật toán

- Hiểu cách biểu diễn thuật toán bằng sơ đồ khối và ngôn ngữ liệt kê

- Hiểu một số thuật toán thông dụng

- Biết Input và Output của bài toán tìm giá trị lớn nhất của một dãy số nguyên; hiểu thuật toán của

bài toán đó.

- Biết Input và Output của bài toán tìm ước chung lớn nhất của 2 số nguyên dương; hiểu thuật

toán của bài toán đó.

- Biết Input và Output của bài toán sắp xếp bằng tráo đổi; hiểu thuật toán của bài toán đó.

- Biết Input và Output của bài toán tìm kiếm tuần tự; hiểu thuật toán của bài toán đó.

2 Kĩ năng:

- Xác định được Input, Output của một số bài toán đơn giản

- Hiểu và trình bày được thuật toán tìm giá trị lớn nhất của một dãy số nguyên theo 2 cách: liệt kê hoặc sơ đồ khối; nhận biết được các bài toán khác thuộc lớp các bài toán (ví dụ: tìm min,…)

- Xây dựng được thuật toán giải một bài toán đơn giản bằng sơ đồ khối hoặc ngôn ngữ liệt kê

- Hiểu và trình bày được thuật toán sắp xếp bằng tráo đổi (Exchange Sort) theo 2 cách liệt kê và

sơ đồ khối, vận dụng linh hoạt trong lớp những bài toán dạng này

- Hiểu và trình bày được thuật toán sắp xếp tìm kiếm tuần tự theo 2 cách liệt kê và sơ đồ khối, vận dụng linh hoạt trong lớp những bài toán dạng này

3 Năng lực hướng tới:

- - Năng lực chung: năng lực giải quyết vấn đề, năng lực sáng tạo, năng lực hợp tác, năng lực sử dụng ngôn ngữ, năng lực tự học, năng lực tính toán và năng lực sử dụng CNTT-TT

- Năng lực chuyên biệt, chuyên môn: Năng lực khoa học máy tính cơ bản; Sử dụng máy tính để học

tập II Đồ dùng dạy học

1 Chuẩn bị của giáo viên: SGK, SGV, phấn, máy chiếu

2 Chuẩn bị của học sinh: SGK, vở ghi

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

1 Ổn định tổ chức: Ổn định nề nếp, kiểm tra sĩ số

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?

 Em có biết thiết bị nào vừa là thiết bị vào vừa là thiết bị ra không?

 Em hãy trình bày khái niệm bài toán?

 Khi giải bài toán bằng máy tính thì cần quan tâm đến những yếu tố nào? Cho ví dụ?

 Hãy mô tả thuật toán tìm giá trị nhỏ nhất của 1 dãy số nguyên theo phương pháp liệt kê?

 Hãy mô tả thuật toán tìm giá trị nhỏ nhất của 1 dãy số nguyên theo pp sơ đồ khối?

 Hãy nêu các cách biểu diễn thuật toán? Các tính chất của thuật toán?

 Hãy mô tả thuật toán tìm UCLN của 2 số nguyên dương theo phương pháp liệt kê?

 Hãy mô tả thuật toán tìm UCLN của 2 số nguyên dương theo phương pháp sơ đồ khối?

3 Nội dung:

Hoạt động 1: Giới thiệu khái niệm bài toán GV: Bài toán là gì, thuật toán là gì, thuật toán

dùng để làm gì, để biết được những điều trên

chúng ta cùng nghiên cứu bài hôm nay: Bài

toán và thuật toán

1 Khái niệm bài toán trong tin học:

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

Trang 2

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?

HS:Trong phạm vi tin học, bài toán là một

việc nào đó ta muốn máy tính thực hiện

GV: Đưa ra 2 ví dụ

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?

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

GV: Vậy, khi cho một bài toán thì điều đầu

tiên là chúng ta phải xác định được Input và

Output của bài toán Việc xác định Input và

Ouput được gọi chung là xác định bài toán

HS: Chú ý lắng nghe, ghi chép

GV: Đưa ra ví dụ 2, 3, 4, 5 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

GV: Dẫn dắt để các em tự tìm được Input và

Output

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

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

+ Input: các gía 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)

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ụ 2 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ụ 3 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: ax2 + 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ụ 4 Bài toán tính diện tích hình chữ nhật

+ Input: Chiều dài, chiều rộng

+ Output: Diện tích

Ví dụ 5 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

Hoạt động 2: Giới thiệu khái niệm thuật toán GV: Nhưng muốn máy tính đưa ra

được output từ input đã cho thì cần

phải có chương trình, mà muốn viết

được chương trình cần phải có

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

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

GV: Kết luận.

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

phương trình dạng ax + b = 0

GV: nêu các bước để giải bài toán

HS:quan sát, lắng nghe.

GV: xác định dữ liệu của bài toán?

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

output

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

Khái niệm thuật 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 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

 Tác dụng của thuật toán: dùng để giải 1 bài 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:

- Input: các gía trị a, b

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

* Ý tưởng:

- Nếu a = 0 thì PT vô định

- 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

GV: Em hãy trình bày các tính chất

của thuật toán?

HS:trả lời.

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

Trang 3

Hoạt động 3: Hướng dẫn học sinh giải bài toán “Tìm GTLN của 1 dãy số nguyên”

GV: học sinh xác định Input và Output

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

GV: em cho biết ý tưởng bài toán “Tìm giá

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

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

Ví dụ 2 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

GV: Ta có thể mô tả thuật toán bằng 2 cách:

liệt kê và dùng sơ đồ khối

GV: 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 = 7 và dãy A:

5, 1, 4, 7, 6, 3, 15

HS: quan sát, lắng nghe.

Cách 1: Cách liệt kê

 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 kết thúc; Bước 4.

4.1 Nếu a i > Max thì Max  ai;

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

GV: Cách viết thuật toán theo từng bước

như trên gọi là cách liệt kê Còn cách làm

khác đó là dùng sơ đồ khối

HS: theo dõi trên bảng phụ.

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: Trả lời câu hỏi.

GV: dựa vào sơ đồ khối cho HS làm bài tập

VD

HS: làm bài tập theo yêu cầu của GV

Min

Cách 2: Sử dụng sơ đồ khối

* Quy định:

 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 ellip thể hiện thao tác nhập, xuất dữ liệu

* Bài tập vận dụng: Cho dãy số gồm N số sau (N =7):

11 6 20 2 8 7 3 Tìm giá trị NHỎ NHẤT của dãy số trên ?

Hoạt động 4: Hướng dẫn học sinh giải bài toán “Tìm UCLN của 2 số nguyên”

GV: Đưa ra ví dụ UCLN của 2 số M, N Xác

định input và output của bài toán

HS: Đứng tại chỗ xác định Input và Output.

GV: em cho biết ý tưởng bài toán “Tìm

UCLN của 2 số nguyên”

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

3 Một số ví dụ:

Ví dụ 1 Thuật toán tìm ước chung lớn nhất của 2 số M, N

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

- Input: Hai số nguyên dương M, N

- Output: UCLN của M và N

GV: Ghi thuật toán lên bảng.

Thuật toán: có 2 cách Cách 1: Cách liệt kê

Đúng

Đ

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

Max ai

ai > Max?

i > N ?

Max 

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

i i + 1

S ai

Trang 4

GV: Lấy VD cụ thể với 2 số (12,8) và giải

thích thuật toán qua từng bước:

B1: Nhập M =12, N =8 M > N

B3: M =12 – 8 = 4, N = 8 N > M

B4: M = 4, N = 8 – 4 = 4 M = N

 UCLN (M, N) = 4

HS: quan sát, lắng nghe.

- B1: Nhập M,N

- B2: Nếu M = N thì UCLN = M

- B3: Nếu M > N thì thay M = M – N, quay lại B2

- B4: Thay N = N – M rồi quay lại B2

- B5: Gán UCLN là M Kết thúc

GV: Cách viết thuật toán theo từng bước gọi

là cách Liệt kê, còn có cách làm khác đó là

dùng sơ đồ khối

GV: Lấy lại VD tìm UCLN của 2 số M, N

GV: Vẽ sơ đồ thuật toán lên bảng Chỉ cho

HS: thấy các bước thực hiện của thuật toán

được mô tả trong sơ đồ khối

HS: Ghi lại sơ đồ thuật toán và hình dung ra

các bước giải của thuật toán

Cách 2: Sử dụng sơ đồ khối

BT vận dụng: Tìm UCLN của 2 số 21 và 14

Hoạt động 5: Giới thiệu cho học sinh về bài toán sắp xếp.

GV: Trong cuộc sống chúng ta thường gặp những việc liên

quan đến sắp xếp như: xếp những học sinh theo thứ tự từ

thấp đến cao, xếp loại học sinh theo điểm trung bình của

học sinh từ cao xuống thấp Một cách tổng quát cho một

dãy đối tượng cần sắp xếp theo một tiêu chí nào đó Chẳng

hạn như cho 10 chiếc cọc khác nhau (hình 22a) cần xếp lại

cọc từ thấp đến cao (hình 22b) Dưới đây ta chỉ xét bài

toán sắp xếp dạng đơn giản Các em ghi bài toán

HS: ghi bài

GV: Để sắp xếp dãy này có nhiều thuật toán sắp xếp Sau

đây chúng ta nghiên cứu thuật toán sắp xếp bằng tráo đổi

HS: quan sát, lắng nghe.

3 Một số ví dụ: (tt)

Ví dụ 2: Bài toán sắp xếp.

Bài toán: 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ụ:

Dãy 7 4 9 5 7 sau khi sắp xếp được dãy:

4 5 7 7 9

Hoạt động 6: Hướng dẫn học sinh tìm hiểu thuật toán sắp xếp bằng tráo đổi GV: Yêu cầu học sinh xác định bài toán.

Ví dụ: Cho dãy số nguyên sau:

6 1 5 3 7

GV: Theo em dãy số này nếu xếp tăng dần thì

sẽ như thế nào?

HS: đưa ra dãy đã sắp xếp tăng dần.

1 3 5 6 7

HS: đưa ra ý tưởng, thảo luận nhiều ý tưởng

khác nhau

* 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 bài toán

- Với mỗi cặp số hạng đứng liền kề trong dãy, nếu số đứng 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 nữa xảy ra

GV: giải thích cho học sinh từng bước của

thuật toán

HS: trao đổi, thảo luận.

HS: phát biểu từng bước liệt kê sơ đồ khối.

* Thuật toán:

a) Cách liệt kê:

B1: Nhập vào số nguyên dương N và dãy số a1, a2, , aN

B2: MN;

B3: Nếu M<2 thì sang B9 B4: M  M - 1; i1

Nhập M, N

M > N

M = N

kết thúc

M = M – N

N 

S

Đ S

Đ

Trang 5

M  N 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

B5: Nếu ai > ai+1 thì tráo đổi ai và ai+1 cho nhau B6: i  i+1

B7: Nếu i > M thì quay lại B3 B8: Quay lại B5

B9: Đưa ra dãy số đã được sắp xếp, kết thúc

GV: Dùng bảng phụ

HS: Quan sát, vẽ vào vở

HS: lần lượt vẽ các bước sơ đồ khối theo các

bước

b) Dùng sơ đồ khối:

GV: Thực hiện lần lượt việc mô phỏng thuật

toán cho HS quan sát

Tuy nhiên vẫn phải làm cho tới khi dãy chỉ còn

1 phần tử

Như vậy ta được dãy số sắp xếp tăng dần

Lượt 1

1 6 5 3 7

1 5 6 3 7

1 5 3 6 7

Lượt 5

HS: theo dõi, nhận xét và ghi chép vào vở.

Mô phỏng việc thực hiện thuật toán với:

N = 5 và dãy A: 6, 1, 5, 3, 7

Với dãy số

6 1 5 3 7 Lần 1: 6 1 5 3 7 (đổi chỗ a1 và a2) 1 6 5 3 7 (đổi chỗ a2 và a3) 1 5 6 3 7

1 5 3 6 7 Lần 2: 1 5 3 6 7 (đổi chỗ a2 và a3) 1 3 5 6 7 Khi đó dãy đã sắp xếp xong

1 3 5 6 7

* Bài tập vận dụng:

a Sắp xếp dãy tăng dần:

b Sắp xếp dãy giảm dần:

Hoạt động 7: Giới thiệu cho học sinh về bài toán tìm kiếm

Đặt vấn đề: Tìm kiếm là một việc thường xảy

ra trong cuộc sống

GV: Cho dãy A gồm: 5, 7, 1, 4, 2, 9, 8, 11, 25,

51 Tìm i với ai = 2 ?

HS: i = 5

GV: Tổ chức các nhóm thảo luận

HS: Các nhóm thảo luận, đưa ra ý kiến

GV Hãy xác định bài toán?

HS + Input: N, a1, a2, …, aN, k

+ Output: i hoặc thông báo không có i

GV hướng dẫn HS tìm thuật toán giải bài toán.

GV: Cho các nhóm trình bày ý tưởng.

HS: thực hiện hoạt động nhóm theo y/c của GV

3 Một số ví dụ: (tt)

Ví dụ 3: Bài toán tìm kiếm

Cho dãy A gồm N số nguyên khác nhau: a1, a2, …, aN và một số nguyên k Cần biết có hay không chỉ số i ( 1 ≤ i ≤ N) mà ai = k Nếu có hãy cho biết chỉ số đó

a) Thuật toán tìm kiếm tuần tự

(sequential search)

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

- Input: Dãy A gồm N số nguyên khác nhau a1, a2, …,

aN và số nguyên k;

- Output: Chỉ số i mà ai = k hoặc thông báo không có số hạng nào của dãy A có giá trị bằng k

 Ý tưởng:

- Tìm kiếm tuần tự là lần lượt từ số hạng thứ nhất, ta so sánh giá trị số hạng đang xét với khoá cho đến khi hoặc gặp một số hạng bằng khoá hoặc dãy đã được xét hết và không có giá trị nào bằng khoá Trong trường hợp thứ hai

Trang 6

dãy A không có số hạng nào bằng khoá.

Hoạt động 8: Hướng dẫn học sinh tìm hiểu thuật toán tìm kiếm

GV hướng dẫn HS trình bày thuật toán tìm

kiếm bằng cách liệt kê

HS: Các nhóm thảo luận và đưa ra thuật toán.

GV: i là biến chỉ số và nhận giá trị nguyên lần

lượt từ 1 đến N+1

b) Thuật toán:

* Cách liệt kê:

- B1: Nhập N, các số hạng a1, a2, …, aN và khoá k;

- B2: i �1;

- B3: Nếu ai = k thì thông báo chỉ số i, kết thúc;

- B4: i �i + 1;

- B5: Nếu i >N thì thông báo dãy A không có số hạng

nào có giá trị bằng k, rồi kết thúc

- B6: Quay lại bước 3.

GV: Dùng bảng phụ

HS: Quan sát, vẽ vào vở

HS: lần lượt vẽ các bước sơ đồ khối theo các

bước

* Sơ đồ khối:

GV: Thực hiện lần lượt việc mô phỏng thuật

toán cho HS quan sát

HS: theo dõi, nhận xét và ghi chép vào vở.

c) Mô phỏng việc thực hiện thuật toán với:

N = 10, k = 2 và dãy A: 5 7 1 4 2 9 8 11 25 51

k = 2 và N = 10

A 5 7 1 4 2 9 8 11 25 51

-Vậy i = 5 thì a5 = 2

4 Củng cố - dặn dò:

* Qua bài học yêu cầu học sinh cần nắm được:

- Bài toán là việc mà bạn muốn máy tính thực hiện

- Muốn giải một bài toán trước tiên phải xác định được Input và Output

+ Input: các thông tin đã cho trước

+ Output: thông tin cần tìm từ Input đã cho

- Xác định được Input & Output của các bài toán tìm giá trị lớn nhất của 1 dãy số nguyên, bài toán sắp xếp theo pp tráo đổi, bài toán tìm kiếm theo pp tuần tự bằng 2 dạng: liệt kê và sơ đồ khối

- Nhắc lại các thuật toán cơ bản: tìm UCLN của 2 số nguyên

- Việc xác định bài toán và đưa thuật toán bài toán sắp xếp, bài toán tìm kiếm

* Dặn dò: Học bài cũ

- Làm bài tập trong SBT

-BÀI TẬP

I Mục đích bài học

1 Kiến thức:

- Biết khái niệm thuật toán, các đặc trưng chính của thuật toán

- Hiểu cách biểu diễn thuật toán bằng sơ đồ khối và ngôn ngữ liệt kê

- Hiểu một số thuật toán thông dụng

2 Kĩ năng:

- Xây dựng được thuật toán giải 1 số bài toán đơn giản theo cách liệt kê và sơ đồ khối

Trang 7

3 Năng lực hướng tới:

- Năng lực chung: năng lực giải quyết vấn đề, năng lực sáng tạo, năng lực hợp tác, năng lực sử dụng ngôn ngữ, năng lực tự học và năng lực sử dụng CNTT-TT

- Năng lực chuyên biệt, chuyên môn: Năng lực khoa học máy tính cơ bản; Sử dụng máy tính để học tập

II Đồ dùng dạy học

1 Chuẩn bị của giáo viên: SGK, SGV, phấn, máy chiếu

2 Chuẩn bị của học sinh: SGK, vở ghi

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

1 Ổn định tổ chức: Ổn định nề nếp, kiểm tra sĩ số

2 Kiểm tra bài cũ:

Câu 1: Hãy nêu các cách biểu diễn thuật toán? Các tính chất của thuật toán?

Câu 2: Hãy mô tả thuật toán Bài toán sắp xếp theo phương pháp liệt kê?

Câu 3: Hãy mô tả thuật toán Bài toán sắp xếp theo phương pháp sơ đồ khối?

3 Nội dung:

Hoạt động 1: Luyện tập cách xác định bài toán GV: Cho các nhóm thảo luận, gọi 1 HS bất kì trong nhóm trả

lời

HS trả lời

a) Input: chiều dài, chiều rộng

Output: chu vi

b) Input: a, b

Output: GTLN của a và b

c) Input: 3 số thực a, b, c (a0).

Output: Kết luận nghiệm của phương trình ax2 + bx + c = 0

Bài 1: Hãy xác định các bài toán sau:

a) Tính chu vi hình chữ nhật khi cho biết chiều dài và chiều rộng của hình chữ nhật đó

b) Tìm giá trị lớn nhất của 2 số a, b c) Tìm và đưa ra nghiệm của phương trình bậc 2 tổng quát: ax2 + bx + c = 0 (a0)

Hoạt động 2: Mô tả thuật toán giải các bài toán bằng cách liệt kê hoặc bằng sơ đồ khối

GV: Cho các nhóm thực hiện lần lượt các bước

để tìm thuật toán

GV: Gọi 1 HS bất kì trong nhóm trả lời.

HS: trả lời

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

HS Input: N, a1, a2, …, aN

Output: số Dem cho biết số lượng số 0 có

trong dãy số trên

GV Nêu ý tưởng thuật toán?

HS: – Ban đầu Dem = 0

– Lần lượt duyệt qua dãy số, nếu gặp số hạng nào

bằng 0 thì tăng giá trị Dem lên 1

Bài 2: Cho N và dãy số a1, a2, …, aN Hãy tìm thuật toán cho biết có bao nhiêu số hạng trong dãy có giá trị bằng 0

a) Xác định bài toán?

Input: N, a1, a2, …, aN

Output: số Dem cho biết số lượng số 0 có trong dãy số trên

b) Ý tưởng thuật toán?

– Ban đầu Dem = 0 – Lần lượt duyệt qua dãy số, nếu gặp số hạng nào bằng 0 thì tăng giá trị Dem lên 1

Hoạt động 3: Biểu diễn thuật toán bằng phương pháp liệt kê – sơ đồ khối GV: Hướng dẫn HS liệt kê các bước của thuật

toán và vẽ sơ đồ khối

HS: HS: theo dõi, nhận xét và ghi chép vào vở.

c) Thuật toán:

* Liệt kê:

B1: Nhập N, a1, a2, …, aN

B2: i  0; Dem  0

B3: i  i + 1

B4: Nếu i > N thì thông báo giá trị Dem, rồi kết thúc B5: Nếu ai = 0 thì Dem  Dem + 1

B6: Quay lại B3.

* Sơ đồ khối:

Trang 8

GV: Thực hiện lần lượt việc mô phỏng thuật

toán cho HS quan sát

HS: theo dõi, nhận xét và ghi chép vào vở.

d) Mô phỏng việc thực hiện thuật toán:

a) N = 10, dãy A: 1, 2, 0, 4, 5, 0, 7, 8, 9, 0  Dem = 3 b) N = 10, dãy A: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Dem = 0

4 Củng cố - dặn dò:

* Qua bài học yêu cầu học sinh cần nắm được:

- Nắm được các cách giải bài toán bằng liệt kê và sơ đồ khối của các bài toán đã học

* Dặn dò: Học bài cũ

- Về nhà các em xem lại phần lý thuyết và bài tập từ bài 1 đến 4

Trang 9

* Bảng mô tả các mức yêu cầu cần đạt cho mỗi loại câu hỏi/bài tập trong chủ đề.

Nội dung Loại câu

hỏi/bài tập Nhận biết Thông hiểu Vận dung thấp Vận dụng cao

BÀI TOÁN VÀ THUẬT TOÁN

1 Khái

niệm bài

toán

Câu hỏi /bài tập định tính

Biết bài toán trong Tin học

Biết Input và Output của bài toán

ND1.ĐT.NB1 ND1.ĐT.NB2

Tìm Input và Output của một

số bài toán

ND1.ĐT.TH1 ND1.ĐT.TH2

2 Khái

niệm

thuật

toán

Câu hỏi /bài tập định tính

Biết khái niệm thuật toán, các đặc trưng của thuật toán

ND2.ĐT.NB1 ND2.ĐT.NB2

Ý nghĩa của thuật toán tối ưu

Một thuật toán có thể giải được nhiều bài toán

ND2.ĐT.TH1 ND2.ĐT.TH2

3 Các

cách biểu

diễn

thuật

toán

Câu hỏi /bài tập định tính

Có 2 cách trình bày thuật toán: liệt kê &

sơ đồ khối

ND3.ĐT.NB1 ND3.ĐT.NB2

Qui định sử dụng các hình trong vẽ

sơ đồ khối

ND3.ĐT.TH1 ND3.ĐT.TH2

4 Một số

ví dụ

Câu hỏi /bài tập định tính

Xác định được giá trị Max khởi tạo

ND4.ĐT.TH1

Đọc hiểu thuật toán từ đó phát biểu bài toán

ND4.ĐT.VDC1 ND4.ĐT.VDC2

Câu hỏi /bài tập định lượng

Vận dụng 1 số thuật toán cho sẵn để đưa ra các kết quả

ND4.ĐT.VDT1 ND4.ĐT.VDT2 ND4.ĐT.VDT3 ND4.ĐT.VDT4

Vận dụng 1 số thuật toán thông dụng để

mô phỏng ví dụ minh hoạ

ND4.ĐL.VDC 1

* BỘ NỘI DUNG CÂU HỎI :

ND1.ĐT.NB1 Hãy chọn phương án đúng Trong phạm vi Tin học bài toán là:

A Công việc mà ta cần tính toán B Thuật toán có thể giải các bài toán.

C Một việc nào đó mà ta muốn máy tính cần thực hiện D Một yêu cầu mà máy tính thực hiện.

ND1.ĐT.NB2 Việc xác định bài toán là đi xác định các thành phần nào?

A Input B Output C Input và Output D Không có thành phần nào

ND1.ĐT.TH1 Hãy xác định Input của bài toán “Tìm nghiệm của phương trình bậc hai ax 2 + bx + c =

0 (a#0) ”

A Các số thực a, b, c (a#0) B Các số thực a, b, c

ND1.ĐT.TH2 Hãy xác định Output của bài toán “Tính chu vi hình tròn với bán kính cho trước”:

A Tính chu vi của hình tròn B Bán kính của hình tròn

C Chu vi của hình tròn D Chu vi và bán kính hình tròn

ND2.ĐT.NB1 Một thuật toán là:

A Việc chỉ ra tường minh một cách tìm Input từ Output

B Việc chỉ ra tường minh một cách tìm Output từ Input

C Một dãy hữu hạn các thao tác được sắp xếp theo trình tự xác định sao cho sau khi thực hiện ta nhận

được Output cần tìm từ Input

Trang 10

D Một dãy hữu hạn các thao tác được sắp xếp theo trình tự xác định sao cho sau khi thực hiện ta nhận

được Input cần tìm từ Output

ND2.ĐT.NB2 “…(1) là một dãy hữu hạn các …(2) được sắp xếp theo mộ trật tự xác định sao cho khi

thực hiện dãy các thao tác ấy, từ …(3) của bài toán, ta nhận được …(4) cần tìm” Lần lượt điền các cụm từ còn thiếu là?

A Input – OutPut - thuật toán – thao tác B Thuật toán – thao tác – Input – OutPut

C Thuật toán – thao ác – Output – Input D Thao tác - Thuật toán– Input – OutPut

ND2.ĐT.TH1 Một thuật toán để giải một bài toán được xem là tối ưu nếu chương trình tương ứng được sử

dụng các ít lượng tài nguyên sau:

A Số lượng thao tác cơ bản cần dùng B Thời gian thực hiện

ND2.ĐT.TH2 Hãy chọn phát biểu đúng ?

A Mỗi bài toán chỉ có một thuật toán để giải B Mỗi thuật toán chỉ giải được một bài toán.

C Mỗi thuật toán có thể giải được nhiều bài toán D Mỗi bài toán chỉ giải một thuật toán.

ND3.ĐT.NB1 Có bao nhiêu cách trình bày một thuật toán?

ND3.ĐT.NB2 Hãy chọn phương án ghép đúng : Trong tin học sơ đồ khối là:

A Ngôn ngữ lập trình bậc cao B Sơ đồ mô tả thuật toán

C Sơ đồ về cấu trúc máy tính D Sơ đồ thiết kế vi điện tử

ND3.ĐT.TH1 Hình nào sau dây không dùng biểu diễn thuật toán?

ND3.ĐT.TH2 Trong cách diễn tả bằng sơ đồ khối hình thoi - hình chữ nhật dùng để thể hiện lần lượt thao

tác:

A so sánh và tính toán B xuất/nhập dữ liệu và so sánh

C tính toán và xuất nhập dữ liệu D a, b, c đều sai

ND4.ĐT.TH1 Cho dãy số A: 4 9 7 1 5 3 Giá trị Max được khởi tạo lần đầu là bao nhiêu:

ND4.ĐL.VDT1 Cho thuật toán sau:

B1: Nhập 2 số nguyên a, b

B2: Nếu a>b thì a  a – b , ngược lại b  b – a

B3: a  a b

B4: Thông báo giá trị a, b, rồi kết thúc.

Với các bộ dữ liệu vào như sau, hãy cho biết kết quả của thuật toán (dữ liệu ra)

a) a = 6 , b = –2  a = ………… , b = …………

b) a= 3 , b = 3  a = ………… , b = …………

c) a = –5, b = 7  a = ………… , b = …………

ND4.ĐL.VDT2 Trong thuật toán tìm kiếm tuần tự với N=5; K=9 và dãy A như sau: 1 4 2 9 8

Khi thuật toán kết thúc thì i nhận giá trị là bao nhiêu?

ND4.ĐL.VDT3 Cho dãy A gồm các số sau: 5 , 51 , 12 , 14 , 7 Dựa vào thuật toán sắp xếp bằng tráo đổi để được 1 dãy tăng, hãy cho biết dãy thu được sau 1 lần duyệt dãy A trên:

A 5 , 12, 7 , 14 , 51 B 5 , 12 , 51 , 7 , 14 C 5 , 12, 14 , 7 , 51 D 5 , 7 , 12 , 14 , 51

ND4.ĐL.VDT4 Trong thuật toán tìm giá trị lớn nhất của dãy số nguyên Với N=8 và dãy A như sau:

Khi thuật toán kết thúc thì Max và i nhận giá trị là bao nhiêu?

A Max=19 tại i=1 B Max=19 tại i=5 C Max=19 tại i=6 D Max=19 tại i=4

ND4.ĐT.VDC1 Cho dãy n số nguyên a 1 , a 2 , , a n Có thuật toán tính số M được mô tả bằng cách liệt kê như sau:

Bước 1: Nhập n và dãy a 1 , a 2 , , a n

Bước 2 M  0; i  1;

Bước 3 Nếu i > n thì đưa ra M rồi kết thúc, ngược lại sang bước 4

Bước 4 M  M+ ai rồi quay lại bước 3

Hãy cho biết thuật toán này tính gì?

Ngày đăng: 26/10/2018, 21:14

TỪ KHÓA LIÊN QUAN

w