Tìm kiếm theo tiêu đề

Tin tức cộng đồng

[MỜI HỢP TÁC] Các kỳ thi Olympic Quốc tế 2026 (IMO - IEO - ISO)

Kính gửi Quý Lãnh đạo, Ban Giám hiệu và Quý Thầy/Cô, FermatTech (Đối tác Google tại VN) phối hợp cùng SCO Ấn Độ trân trọng kính mời tham gia 3 kỳ thi uy tín dành cho HS từ lớp 1 - 12: - IMO: Olympic Toán Quốc tế. - IEO: Olympic Tiếng Anh Quốc tế. - ISO: Olympic Khoa học...
Xem tiếp

Tin tức thư viện

Chức năng Dừng xem quảng cáo trên violet.vn

12087057 Kính chào các thầy, cô! Hiện tại, kinh phí duy trì hệ thống dựa chủ yếu vào việc đặt quảng cáo trên hệ thống. Tuy nhiên, đôi khi có gây một số trở ngại đối với thầy, cô khi truy cập. Vì vậy, để thuận tiện trong việc sử dụng thư viện hệ thống đã cung cấp chức năng...
Xem tiếp

Hỗ trợ kĩ thuật

  • (024) 62 930 536
  • 0919 124 899
  • hotro@violet.vn

Liên hệ quảng cáo

  • (024) 66 745 632
  • 096 181 2005
  • contact@bachkim.vn

Bài 5. Từ bài toán đến chương trình

Wait
  • Begin_button
  • Prev_button
  • Play_button
  • Stop_button
  • Next_button
  • End_button
  • 0 / 0
  • Loading_status
Tham khảo cùng nội dung: Bài giảng, Giáo án, E-learning, Bài mẫu, Sách giáo khoa, ...
Nhấn vào đây để tải về
Báo tài liệu có sai sót
Nhắn tin cho tác giả
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Lê Thị Bình
Ngày gửi: 08h:37' 04-11-2008
Dung lượng: 280.0 KB
Số lượt tải: 201
Số lượt thích: 0 người
BÀI 5: Từ bài toán đến chương trình
Nội dung bài 5 là rất quan trọng
(thời lượng 4 tiết)
“Gv cần tận dụng hết thời gian dành cho
bài này để truyền đạt cho HS
một cách kỹ lưỡng”
(Trích:Sách hướng dẫn cho giáo viên)

Mục đích, yêu cầu của bài 5:
Biết khái niệm bài toán, thuật toán
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ố.
Nội dung mục 3 là quan trọng

Bước xây dựng thuật toán là quan trọng và khó, Cần dành thời gian thích đáng cho mục này (Sách giáo viên)

Có thể sử dụng một bài toán đơn giản, quen thuộc. Không nhất thiết cứ phải lấy ví dụ trong SGK (Sách giáo viên)
Những cấu trúc quan trọng
Qua bài 5 cần cho học sinh biết ba cấu trúc :
Cấu trúc tuần tự
Cấu trúc rẽ nhánh
Cấu trúc lặp
Cấu trúc tuần tự
I) Với cấu trúc tuần tự:
Ngoài ví dụ SGK có thể đưa vào bài toán đơn giản sau:
Bài toán:
Tính chu vi và diện tích hình chữ nhật, biết chiều dài và chiều rộng là hai số dương a và b được nhập vào từ bàn phím.
* Xác đinh bài toán:
Input : Số a>0, số b>0
Output : Chu vi và diện tích của hình chữ nhật
Cấu trúc tuần tự
Thuật toán:
* Mô hình 1:
Bước 1: Nhập số a>0, số b>0
Bước 2: Thông báo chu vi của hình chữ nhật là (a+b).2
Bước 3: Thông báo diện tích của hình chữ nhật là a.b
Hỏi: Có thể thay đổi các bước nào cho nhau? Tại sao? Mô hình này sử dụng mấy ô nhớ?
(Biến phải được đặt tên và khai báo)
Cấu trúc tuần tự
* Mô hình 2:
Bước 1: Nhập số a>0, số b>0
Bước 2: P  (a+b).2
Bước 3: S  a.b
Bước 4: Thông báo chu vi của hình chữ nhật là P
Bước 5: Thông báo diện tích của hình chữ nhật là S

Lại hỏi: Có thể thay đổi các bước nào cho nhau? Tại sao?Mô hình này sử dụng mấy ô nhớ?
Khắc sâu cho học sinh cấu trúc tuần tự và biến
Một thuật toán quan trọng
Ví dụ 4 (SGK): Đổi giá trị của hai biến x và y
Đây là bài thuộc chuẩn kiến thức và trọng tâm
Cần làm thật kỹ để Hs hiểu:
1) Cấu trúc tuần tự
2) Phép gán
3) Biến và ô nhớ
(có thể đưa vào thuật toán tráo nước)
II) Với cấu trúc rẽ nhánh:
Nên bắt đầu từ những bài thật đơn giản trước:
Ví dụ 5 (SGK)
Cho hai số thực a và b. Hãy cho biết kết qủa so sánh hai số đó dưới dạng “ a lớn hơn b”, “ a nhỏ hơn b “ hoặc “a bằng b”
Thuật toán SGK:
Bước 1: Nếu a>b , kết qủa là “ a lớn hơn b”
Bước 2: Nếu a
Với a=6, b=5 thuật toán cho hai kết quả “a lớn hơn b” và “a bằng b”
Nên phân tích thật kỹ để học sinh hiểu tại sao lại như vậy.
Cấu trúc rẽ nhánh
Có thể đưa ra một mô hình đơn giản như sau:

Bước 1: Nếu a>b, Thông báo “a lớn hơn b”
Bước 2: Nếu a Bước 3: Nếu a=b, Thông báo “ a bằng b”

Nên phân tích để học sinh biết sự thực hiện của thuật toán này.(tuần tự và rẽ nhánh)
 Đây cũng là mô hình cho cấu trúc rẽ nhánh thiếu mà học sinh sẽ học ở những bài sau
Cấu trúc rẽ nhánh
Mô hình SGK:
Bước 1: Nếu a>b , kết quả là “ a lớn hơn b” và chuyển đến bước 3
Bước 2: Nếu a Bước 3: Kết thúc thuật toán
Mô hình này ý tưởng cho cấu trúc rẽ nhánh đủ
Tiếp theo chúng ta giới thiệu bài giải phương trình bậc nhất dạng tổng quát bx + c =0(SGK)
(Đây là một bài khó)
Cấu trúc lặp
III) Cấu trúc lặp: Bắt đầu từ ví dụ 3 (SGK)
Bài toán: Tính tổng của 100 số tự nhiên khác 0 đầu tiên:
Mô hình SGK:
Bước 1: SUM  0 ; i  0
Bước 2: i  i+1
Bước 3: Nếu i ≤ 100, SUM  SUM + i và quay lại bước 2
Bước 4: Thông báo kết qủa và kết thúc thuật toán
Làm thật kỹ bài này thì những bài sau hs sẽ làm được
Chú ý phép gán ii+1;SUMSUM+i
và dấu hiệu Kết thúc thuật toán ở bài này
Cấu trúc lặp
Có thể đưa ra một mô hình khác như sau:
Bước 1: S  0
Bước 2: i  1
Bước 3: Nếu i > 100, chuyển về bước 5
Bước 4:
Bước 4.1: S  Tong + i
Bước 4.2: i i + 1 rồi quay lại bước 3
Bước 5: Thông báo tổng là S rồi kết thúc

(Chuẩn bị thuật toán này cho bài 8- Lặp While)
Cấu trúc lặp

Sau khi đã làm kỹ bài tính tổng 100 số tự nhiên khác 0 đầu tiên. Ta thay đổi bài toán:
Tính tổng của n số tự nhiên khác 0 đầu tiên.
(Lúc này Hs biết chỉ cần thay 100 bằng n là được)
* Đây là bài thuộc chuẩn kiến thức


* Hiểu thấu đáo bài trên Hs sẽ làm được bài sau:
*Tính tổng các phần tử của dãy số
A=(a1, a2, …,an) cho trước
(Bài 6 trong phần bài tập)
Cấu trúc lặp

Bài chuẩn kiến thức

Bài toán: Tìm số lớn nhất trong dãy A các số a1,a2,…,an cho trước
(Ví dụ 6 SGK)
Bài 1: Tìm số lớn nhất trong hai số a và b



Mô hình 2:

Bước 1: Gán số a cho biến Max
Bước 2: Nếu b>Max, gán số b cho biến Max
Bước 3: Thông báo số lớn nhất là Max
Mô hình 1:

Bước 1: Nếu a>b,
“a lớn nhất” Ngược lại “b lớn nhất”
Bước 2: Kết thúc thuật toán
Cho Hs nhận xét hai mô hình
Bài 2:Tìm số lớn nhất trong ba số a,b,c

Lúc này một số Hs đã bắt đầu thấy làm theo mô hình 1 sẽ có những khó khăn nhất định (làm cả hai mô hình rồi so sánh)
Nếu thấy cần thiết thì tiếp tục đưa bài toán:
Tìm số lớn nhất trong bốn số a, b, c, d
Đến đây nếu làm theo mô hình 1 thì gần như không thể, và chúng ta cho Hs thấy thuật toán ở mô hình 2 là hợp lý đặc biệt khi cần kiểm tra nhiều số.
Bài toán thuộc chuẩn kiến thức
Tìm số lớn nhất trong dãy A các số a1, a2,…,an cho trước
Sau khi đã làm kỹ các bài toán trên bằng mô hình 2 thì việc tiếp thu bài này của Hs là hoàn toàn không đến mức quá khó.
Thuật toán SGK:
Bước 1: MAX  a1 ; i  1
Bước 2: i  i+1
Bước 3: Nếu i>n, chuyển đến bước 5
Bước 4:Nếu ai>MAX, MAX  ai quay lại bước 2
Bước 5: Kết thúc thuật toán
Một cách xây dựng thuật toán
( Theo SGK lớp 10)
Bước 1: Nhập n và dãy a1, a2, …., an;
Bước 2: Max  a1; i  2;
Bước 3: Nếu i>N thì đưa ra giá trị Max rồi kết thúc
Bước 4:
Bước 4.1: Nếu ai>Max thì Max ai
Bước 4.2: i i+1 rồi quay lại bước 3


Trân trọng cảm ơn các đồng chí.
Kính chúc các đồng chí mạnh khỏe, Hạnh phúc.
 
Gửi ý kiến