- Bước đầu: Biết các bước giải bài toán trên máy tính; Xác định được Input, Output của một bài toán đơn giản; Biết chương trình là thể hiện của thuật toán trên một ngôn ngữ cụ thể.. Biết[r]
Trang 1
Tuần 12
Tiết 23 : bài tập
I Mục đích, yêu cầu:
- Học sinh nắn vững thuật toán biến đổi để di được từ bài toán đến chương trình Biết khái niệm bài toán, thuật toán
- Bước đầu: Biết các bước giải bài toán trên máy tính; Xác định được Input, Output của một bài toán đơn giản; Biết chương trình là thể hiện của thuật toán trên một ngôn ngữ cụ thể Biết mô tả thuật toán bằng phương pháp liệt kê các bước Hiểu thuật toán tính tổng của N số
tự nhiên đầu tiên, tìm số lớn nhất của một dãy số Và viết được chương trình của một bài toán
- Yêu thích môn tin học
II/ Chuẩn bị của học sinh và giáo viên:
GV: Một số chương trình mẫu
HS: Nghiên cứu trước bài
III/ Tiến trình dạy học:
1 Bài mới:
Hoạt động 1: Bài tập
Giáo viên nêu bài toán 1 SGK:
Bài 1: Hóy chỉ ra INPUT và OUTPUT
của cỏc bài toỏn sau:
a) Xỏc định số học sinh
trong lớp cựng mang
họ Trần
b) Tớnh tổng của cỏc
phần tử lớn hơn 0
trong dóy n số cho
trước
c) Tỡm số cỏc số cú giỏ
trị nhỏ nhất trong n số
đó cho
* Học sinh trả lời từng câu hỏi một và
viết lại ở bảng
* Cho học sinh nhận xét
* Giáo viên nhận xét và sửa lại bài cho
Bài 1:
Học sinh trả lời hoặc cho học sinh lên bảng ghi và nhận xét
Đáp án:
INPUT: Danh sách họ của các học sinh trong lớp
OUTPUT: Số học sinh có họ Trần
INPUT: Dãy n số
OUTPUT: Tổng của các phần tử lớn hơn 0
INPUT: Dãy n số
OUTPUT: Số các số có giá trị nhỏ nhất (có thể một hay nhiều số)
Trang 2học sinh
Giáo viên nêu bài toán 2 SGK:
Bài 2: Giả sử x và y là cỏc biến số Hóy cho biết kết quả của việc thực hiện thuật
toỏn sau:
Bước 1 x x + y
Bước 2 y x - y
Bước 3 x x - y
* Học sinh trả lời , có thể lên bảng viết
* Cho học sinh nhận xét
* Giáo viên nhận xét và sửa lại bài cho học sinh
Giáo viên nêu bài toán 3 SGK:
Bài 3:
Cho trước ba số dương a, b và
c Hóy mụ tả thuật toỏn giải ghi kết
quả ba số đú cú thể là ba cạnh của
một tam giỏc hay khụng
* Cho học sinh làm theo nhón rồi
gọi học sinh lên trình bài
* Học sinh trả lời , có thể lên bảng
viết
* Cho học sinh nhận xét
* Giáo viên nhận xét và sửa lại bài
cho học sinh
Bài 3:
Học sinh làm theo nhón rồi cử một bạn lên trình bài
Giải:
Mô tả thuật toán:
INPUT: Ba số dương a > 0, b > 0 và c > 0
OUTPUT: Thông báo "a, b và c có thể là ba cạnh của một tam giác" hoặc thông báo "a, b và
c không thể là ba cạnh của một tam giác"
Bước 1 Tính a + b Nếu a + b c, chuyển tới bước 5
Bước 2 Tính b + c Nếu b + c c, chuyển tới bước 5
Bước 3 Tính a + c Nếu a + c b, chuyển tới bước 5
Bước 4 Thông báo "a, b và c có thể là ba cạnh của một tam giác" và kết thúc thuật toán
Bước 5 Thông báo "a, b và c không thể là ba cạnh của một tam giác" và kết thúc thuật toán Giáo viên nêu bài toán 4 SGK:
Bài 4:
Cho hai biến x và y Hóy mụ tả
thuật toỏn đổi giỏ trị của cỏc biến núi
trờn để x và y cú giỏ trị tăng dần
* Cho học sinh làm theo nhón rồi
gọi học sinh lên trình bài
Bài 4:
Học sinh làm theo nhón rồi cử một bạn lên trình bài
Có thể giải bài toán này bằng cách sử dụng một biến phụ hoặc không dùng biến phụ Thuật toán 1 Sử dụng biến phụ z
INPUT: Hai biến x và y
Trang 3
2 Củng cố:
Giáo viên nhắc lại cách làm của 4 bài toán trên lần nữa cho học sinh nắm vững hơn
Tiết 24 : bài tập
I Mục đích, yêu cầu:
- Học sinh nắn vững thuật toán biến đổi để di được từ bài toán đến chương trình Biết khái niệm bài toán, thuật toán
- Bước đầu: Biết các bước giải bài toán trên máy tính; Xác định được Input, Output của một bài toán đơn giản; Biết chương trình là thể hiện của thuật toán trên một ngôn ngữ cụ thể Biết mô tả thuật toán bằng phương pháp liệt kê các bước Hiểu thuật toán tính tổng của N số
tự nhiên đầu tiên, tìm số lớn nhất của một dãy số Và viết được chương trình của một bài toán
- Yêu thích môn tin học
II/ Chuẩn bị của học sinh và giáo viên:
* Học sinh trả lời , có thể lên bảng
viết
* Cho học sinh nhận xét
* Giáo viên nhận xét và sửa lại bài
cho học sinh
OUTPUT: Hai biến x và y có giá trị tăng dần
Bước 1 Nếu x y, chuyển tới bước 5
Bước 2 z x
Bước 3 x y
Bước 4 y z
Bước 5 Kết thúc thuật toán
Thuật toán 2 Không sử dụng biến phụ (xem bài tập 2 ở trên)
INPUT: Hai biến x và y
OUTPUT: Hai biến x và y có giá trị tăng dần
Bước 1 Nếu x y, chuyển tới bước 5
Bước 2 x x + y
Bước 3 y x y
Bước 4 x x y
Bước 5 Kết thúc thuật toán
- Cho học sinh nhắc lại các bước giải của 4 bài toán trên
Trang 4GV: Một số chương trình mẫu
HS: Nghiên cứu trước bài
III/ Tiến trình dạy học:
1 Bài mới:
Giáo viên nêu bài toán 5 :
Bài 5:
Cho ba biến x, y và z Hóy mụ tả
thuật toỏn đổi giỏ trị của cỏc biến núi
trờn để x, y và z cú giỏ trị tăng dần
Hóy xem lại Vớ dụ 5 để tham khảo
* Cho học sinh làm theo nhón rồi
gọi học sinh lên trình bài
* Học sinh trả lời , có thể lên bảng
viết
* Cho học sinh nhận xét
* Giáo viên nhận xét và sửa lại bài
cho học sinh
Bài 5: (Không ở SGK)
Học sinh làm và trả lời dựa vào bài 4 Giải:
Trước hết, nếu cần, ta hoán đổi giá trị hai
biến x và y để chúng có giá trị tăng dần Sau đó
lần lượt so sánh z với x và z với y, sau đó thực
hiện các bước hoán đổi giá trị cần thiết (xem
lại ví dụ 5 trong bài 5, SGK)
INPUT: Ba biến x, y và z.
OUTPUT: Ba biến x, y và z có giá trị tăng
dần
Bước 1 Nếu x y, chuyển tới bước 3 Bước 2 t x, x y, y t (t là biến
trung gian Sau bước này x và y có giá trị
tăng dần.)
Bước 3 Nếu y z, chuyển tới bước 6 Bước 4 Nếu z < x, t x, x z và z t,
(với t là biến trung gian) và chuyển
đến bước 6
Bước 5 t y, y z và z t.
Bước 6 Kết thúc thuật toán.
Giáo viên nêu bài toán 6 SGK (GV cho
thên câu b) :
Bài 6: (Là bài 5 ở SGK)
Hóy mụ tả thuật toỏn giải cỏc bài
toỏn sau:
a) Tớnh tổng cỏc phần tử
Bài 6: (SGK và gv cho thêm phần b)
Học sinh làm theo 2 nhóm rồi cử một bạn lên trả lời ở bảng
Giải:
a) Tính tổng các phần tử của dãy số A = {a1,
a2, , a n} cho trước.
Hoạt động 1: Bài tập
Trang 5
của dóy số A = {a1, a2, ,
an} cho trước.
b) Nhập n số a1, a2, , an từ
bàn phớm và ghi ra màn hỡnh số nhỏ nhất cỏc số
đú Số n cũng được nhập
từ bàn phớm
* Cho học sinh làm theo nhón rồi
gọi học sinh lên trình bài
* Học sinh trả lời , có thể lên bảng
viết
* Cho học sinh nhận xét
* Giáo viên nhận xét và sửa lại bài
cho học sinh
INPUT: n và dãy n số a1, a2, , a n.
OUTPUT: Tổng S = a1 + a2 + + a n
Bước 1 S 0; i 0.
Bước 2 i i + 1.
Bước 3 Nếu i n, S S + a i và quay lại bước
2
Bước 4 Thông báo S và kết thúc thuật toán b) Tìm số nhỏ nhất trong dãy n số a1, a2, , a n
cho trước Thuật toán này tương tự như thuật toán tìm giá trị lớn nhất trong dãy n số đã cho
(xem ví dụ 6, bài 5) Điều khác biệt là thêm các bước nhập số n và dãy n số a1, a2, , a n
INPUT: n và dãy n số a1, a2, , a n.
OUTPUT: Min = Min{ a1, a2, , a n}
Bước 1 Nhập n và dãy n số a1, a2, , a n
Bước 2 Gán Min a1; i 1.
Bước 3 i i + 1.
Bước 4 Nếu i > n, chuyển đến bước 6.
Bước 5 Nếu a i ≥ Min, quay lại bước 3 Trong
trường hợp ngược lại, gán Min a i rồi quay lại bước 3
Bước 6 Ghi giá trị Min ra màn hình và kết thúc
thuật toán
Giáo viên nêu bài toán 7: SGK (GV cho
thên câu b) :
Bài 7: (Là bài 6 ở SGK)
Hóy mụ tả thuật toỏn
tớnh tổng cỏc số dương trong dóy số
A = {a1, a2, , an} cho trước
* Cho học sinh làm theo nhón rồi
gọi học sinh lên trình bài
* Học sinh trả lời , có thể lên bảng
viết
Bài 7: (Bài 6 SGK)
Học sinh làm Học sinh lên bảng làm còn lại giáo viên thu nháp để chấm
Giải:
Tính tổng các số dương trong dãy số A = {a1,
a2, , a n} cho trước
INPUT: n và dãy n số a1, a2, , a n OUTPUT: S = Tổng các số a i > 0 trong dãy a1,
a2, , a n
Trang 6* Cho học sinh nhận xét
* Giáo viên nhận xét và sửa lại bài
cho học sinh
Bước 1 S 0; i 0.
Bước 2 i i + 1.
Bước 3 Nếu a i > 0, S S + a i; ngược lại, giữ nguyên S
Bước 4 Nếu i n, và quay lại bước 2.
Bước 5 Thông báo S và kết thúc thuật toán.
Giái viên nêu bài 8:
Hóy mụ tả thuật toỏn giải cỏc bài
toỏn sau:
a) Đếm số cỏc số dương
trong dóy số A = {a1, a2, ,
an} cho trước
Tỡm vị trớ của số dương đầu tiờn
trong dóy số A = {a1, a2, , an} cho
trước, tớnh từ phải sang trỏi
* Cho học sinh làm theo nhón rồi gọi
học sinh lên trình bài
* Học sinh trả lời , có thể lên bảng
viết
* Cho học sinh nhận xét
* Giáo viên nhận xét và sửa lại bài
cho học sinh
Bài 8:
Học sinh làm ra vở
Một học sinh lên bảng làm
Giải:
a) Đếm số các số dương trong dãy số A = {a1,
a2, , a n} cho trước.
INPUT: n và dãy n số a1, a2, , a n OUTPUT: Soduong = Số các số a i > 0.
Bước 1 Gán Soduong 0, i 0.
Bước 2 i i + 1.
Bước 3 Nếu i > n, chuyển đến bước 5 Bước 4 Nếu a i > 0, gán Soduong
Soduong +1 rồi quay lại bước 2
Trong trường hợp ngược lại, cũng quay lại bước 2
Bước 5 Thông báo giá trị Soduong và kết
thúc thuật toán
b) Tìm vị trí của số dương đầu tiên trong
dãy số A = {a1, a2, , a n} cho trước, tính từ phải sang trái.
INPUT: n và dãy n số a1, a2, , a n OUTPUT: Vitri = Vị trí của số dương đầu
tiên trong dãy số a1, a2, , a n, tính từ phải sang trái.
Bước 1 Gán i n
Bước 2 Nếu a i > 0, chuyển tới bước 5.
Trang 7
Bước 3 Gán i i 1
Bước 4 Nếu i < 1, chuyển tới bước 5;
ngược lại, quay lại bước 2
Bước 5 Thông báo giá trị Vitri = i và kết
thúc thuật toán
2 Củng cố:
Cho học sinh nhắc lại các bước giải của 4 bài toán trên
Giáo viên nhắc lại cách làm của 4 bài toán trên lần nữa cho học sinh nắm vững hơn
Tổ chuyên môn ký duyệt ngày / / 2009
TTCM
Nguyễn Thị An