intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Sáng kiến kinh nghiệm THPT: Phát triển tư duy lập trình và khắc phục sai lầm cho học sinh lớp 11 thông qua sử dụng cấu trúc rẽ nhánh

Chia sẻ: _ _ | Ngày: | Loại File: DOCX | Số trang:24

26
lượt xem
6
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Sáng kiến kinh nghiệm THPT "Phát triển tư duy lập trình và khắc phục sai lầm cho học sinh lớp 11 thông qua sử dụng cấu trúc rẽ nhánh" chủ yếu tập trung vào nghiên cứu những sai lầm thường mắc phải của các em khi sử dụng câu lệnh rẽ nhánh. Hệ thống các bài tập nghiên cứu quen thuộc, các bài toán gần gũi với thực tế, có mở rộng bài toán, có phát triển bài toán, có áp dụng liên môn giúp học sinh yêu thích môn học và phát triển tư duy lập trình.

Chủ đề:
Lưu

Nội dung Text: Sáng kiến kinh nghiệm THPT: Phát triển tư duy lập trình và khắc phục sai lầm cho học sinh lớp 11 thông qua sử dụng cấu trúc rẽ nhánh

  1. MỤC LỤC
  2. PHẦN I : ĐẶT VẤN ĐỀ 1. LÝ DO CHỌN ĐỀ TÀI Căn cứ  vào công văn số  3627/SGDĐT­GDPT,  ngày  29/8/2018  của  Sở  Giáo dục và Đào tạo về việc Hướng dẫn thực hiện nhiệm vụ  giáo dục trung  học năm học 2018­2019 và hướng dẫn hoạt động chuyên môn bộ môn Tin học  cấp THPT của Sở Giáo dục ­ Đào tạo Hà Nội. Đổi mới hình thức tổ chức dạy  học  ngoài việc tổ chức cho học sinh thực hiện các nhiệm vụ  học tập  ở trên   lớp, cần coi trọng giao nhiệm vụ và hướng dẫn học sinh học tập ở nhà.  Căn cứ  vào kế  hoạch giảng dạy môn Tin 11 của trường THPT Lưu  Hoàng về số lượng, nội dung các tiết bài tập và thực hành ở  các chương III,  chương IV.  Với tình hình thực tế  giảng dạy môn Tin  ở  trường THPT Lưu   Hoàng, tôi nhận thấy  học sinh chưa có hứng thú với môn học, một phần vì  môn Tin học 11 quá khó đối với các em, một phần vì tư duy giài toán chưa cao   do đầu chất lượng tuyển sinh vào 10 còn thấp.  Để  góp phần nâng cao chất  lượng giờ dạy, việc thu hút học sinh tích cực giải toán bằng máy tính và phát  triển tư duy lập trình của học sinh là rất cần thiết.  Câu lệnh rẽ nhánh và câu lệnh ghép là một nội dung tiêu biểu của phần   lập trình. Thực tế  khi sử  dụng câu lệnh này để  giải bài tập các em thường   mắc phải nhiều lỗi sai, đặc biệt là xác định biểu thức logic và không sử dụng   câu lệnh ghép trong trường hợp cần thiết. Sau khi tìm hiểu các nguyên nhân và những lỗi học sinh hay mắc phải  khi lập trình giải toán có sử  dụng cấu trúc rẽ  nhánh, tôi tìm giải pháp khắc   phục củng cố, khắc sâu kiến thức thông qua việc hướng dẫn và giao bài tập   cho học sinh hoàn thiện sản phẩm ở nhà . 2. MỤC ĐÍCH NGHIÊN CỨU  Đề  tài này chủ  yếu tập trung vào nghiên cứu những sai lầm thường  mắc phải của các em khi sử  dụng câu lệnh rẽ  nhánh.  Hệ  thống các bài tập   nghiên cứu quen thuộc, các bài toán gần gũi với thực tế, có mở rộng bài toán,  có phát triển bài toán, có áp dụng liên môn giúp học sinh  yêu thích môn học và  phát triển tư duy lập trình. 3/20
  3. Đề  tài có ý nghĩa lớn đối với việc đổi mới phương pháp giảng dạy.  Phát huy tính tích cực của học sinh, tạo sự  hứng thú cho học sinh, khuyến  khích học sinh  tự tìm tòi, sáng tạo trong quá trình lĩnh hội tri thức.   3. ĐỐI   TƯỢNG,   PHẠM   VI   NGHIÊN   CỨU   VÀ   THỜI   GIAN   THỰC HIỆN ĐỀ TÀI I.3.1. Đối tượng nghiên cứu ­ Những lỗi mà học sinh lớp 11 thường mắc phải khi sử  dụng cấu trúc rẽ  nhánh để giải toán. I.3.2. Phạm vi nghiên cứu ­ Bài tập về  cấu trúc rẽ nhánh.  I.3.3. Thời gian thực hiện đề tài ­ Đề tài được viết và áp dụng trong Năm học 2018­2019 4. QUÁ TRÌNH THỰC HIỆN ĐỀ TÀI  1. Tình hình thực tế trước khi thực hiện đề tài ­ Sau khi dạy xong bài 9 : Cấu trúc rẽ nhánh,. Tôi đã cho khảo sát lớp 11A1,   11A2. ­ Còn nhiều học sinh mắc  lỗi sai khi  sử dụng câu lệnh rẽ nhánh do xác định  biểu thức logic không đúng, còn nhầm lẫn và nhớ sai cú pháp.  ­ Chưa hiểu rõ về cấu trúc rẽ nhánh nên không viết câu lệnh không đúng hoặc  không sử dụng câu lệnh ghép khi cần thiết.  ­ Tư duy lập trình thấp, kỹ năng giải toán chưa cao. ­ Học sinh quên kiến thức cũ.  ­ Cơ  sở  vật chất còn thiếu số  lượng máy tính thực hành cho học sinh ít, số  lượng học sinh có máy tính riêng ở  nhà chưa nhiều. Các yếu tố  này làm ảnh  hưởng đến chất lượng, hiệu quả của tiết học. 2. Số liệu điều tra trước khi thực hiện đề tài Xếp loại Giỏi Khá Trung  Yếu Kém    Bình Lớp  4/20
  4. 11A1 (Thực nghiệm) 8 16 7 0 0 11A2 (Đối chứng) 6 14 10 0 0 5/20
  5. PHẦN 2: GIẢI QUYẾT VẤN ĐỀ Sáng kiến kinh nghiệm : “ Phát triển tư duy lập trình và khắc phục sai lầm   cho học sinh 11 thông qua sử dụng câu lệnh rẽ nhánh”. Sáng kiến gồm các nội dung chính : +Giới thiệu về cấu trúc rẽ nhánh. + Phân tích các lỗi của học sinh hay mắc phải khi sử  dụng cấu trúc rẽ  nhánh  + Đề xuất giải pháp khắc phục. +Thử nghiệm sư phạm. II.1. GIỚI THIỆU VỀ CẤU TRÚC RẼ NHÁNH  II.1.1 Dạng thiếu Cú pháp: If  Then  ;                                                                     Điều kiện : là biểu thức logic. Câu lệnh : Là một câu lệnh của Pascal. Nếu  điều  kiện  đúng (có  giá  trị   true)   thì  câu lệnh  sẽ   được  thực hiện,  ngược lại câu lệnh sẽ bị bỏ qua. II.1.2 Dạng đủ Cú pháp: If  Then  Else    ; Điều kiện : là biểu thức logic. Câu lệnh 1, câu lệnh 2: Là một câu lệnh của Pascal. Nếu điều kiện đúng thì câu lệnh 1 được thực hiện, ngược lại câu lệnh 2  6/20
  6. được thực hiện. II.1.3 Câu lệnh ghép Theo cú pháp, sau từ khóa Then hoặc ELSE phải là một câu lệnh. Nhưng  trong nhiều trường hợp, các thao tác sau những tên dành riêng đó khá phức   tạp, đòi hỏi không phải là một mà là nhiều câu lệnh để  mô t. Trong trường   hợp như  vậy ngôn ngữ  lập trình cho phép gộp một dãy câu lệnh thành một   câu lệnh ghép. Câu lệnh ghép của Pascal có dạng : Begin  ; End; II.2.   CÁC   LỖI   CỦA   HỌC   SINH   THƯỜNG   MẮC   VÀ   CÁCH   KHẮC  PHỤC II.2.1  Lỗi về cách viết và xác định biểu thức logic  ­   Loại biểu thức nhất thiết phải có mặt trong câu lệnh rẽ  nhánh đó là biểu   thức Logic, vấn đề  viết biểu thức trong ngôn ngữ  lập trình Pascal phải tuân  thủ  đúng các quy tắc của ngôn ngữ  lập trình, có những bài toán các em phải  xác định biểu thức logic, việc này  không phải dễ  đối với các em. Điều này  còn phụ thuộc vào khả năng tư duy về mặt toán học. ­ Lỗi viết dấu chấm phẩy trước Else  ­ Do số  lượng máy tính của trường rất ít, nên nhiều tiết bài tập các em học   phòng máy chiếu hoặc làm bài trên giấy vì vậy cần phải rèn cho các em cách   viết cẩn thận.  Ví dụ 1: Viết câu lệnh rẽ nhánh tính  a) Tính  ­ Lỗi biểu diễn sai phép toán trong ngôn ngữ pascal.  Chẳng hạn : x*x thì học sinh vẫn viết là:  x.x , lỗi này nếu các em thực hành  trên phòng máy thì chương trình dịch sẽ thông báo nhưng các em mất thời gian   sửa và có em còn không biết cách sửa.  7/20
  7. ­ Lỗi thiếu dấu ngặc hoặc không sử dụng phép toán logic.  Chẳng hạn  tính z=x+y nếu   và  Thì các em viết như sau :  if  ,   then z:=x+y; ­ Cách khắc phục :  Dự  kiến trước những lỗi sai của học sinh dễ  mắc  như  : Lỗi biểu biễn biểu thức Toán trong ngôn ngữ  Pascal, lỗi đặt dấu   chấm phẩy không đúng chỗ, lỗi viết phép toán logic ….,  giáo viên yêu cầu  học sinh phân tích kỹ bài toán trong Toán học, sau đó yêu cầu các em biểu   diễn biểu thức trong ngôn ngữ Pascal, nhấn mạnh cho học sinh  + Phép nhân thay bởi dấu sao *  + Phép chia thay bởi dấu gạch chéo  /     +Phép toán logic và (and), hoặc (or) +Khi xét đồng thời nhiều biểu thức , phải có cặp đóng mở ngoặc cho  từng biểu thức.  Kết quả : If   then  ; If () and () then  ; If () and () then  ; ­ Yêu cầu học sinh viết lại bằng cách sử dụng cấu trúc rẽ nhánh dạng đủ  và thay biểu thức  bằng  và so sánh kết quả với cùng một bộ Test. ­ Tôi yêu cầu học sinh đề xuất một bộ  Test :  Có đủ cả 3 trường hợp sảy ra   mà đã biết trước kết quả, mục đích là để  học sinh tự  kiểm tra lại tính đúng   đắn của chương trình.   ­ Sau đây là một bộ Test tiêu biểu: Input Output x y 1 z= 3 2 b) Tính  ­ Học sinh dễ mắc lỗi khi xác định và viết biểu thức logic :   8/20
  8. +Lỗi thứ nhất:  Về mặt Toán học, các em nhầm lẫn Hình tròn và đường tròn  nên chỉ  đưa ra được điều kiện, thậm chí có học sinh còn quên cả  công thức  tính khoảng cách giữa hai điểm. +Lỗi thứ hai : Có dấu chấm phẩy trước từ khóa Else , Lỗi này do sử dụng cú  pháp rẽ nhánh dạng đủ sai.  Cụ thể như sau : If   then z:=abs(x)+abs(y) ; Else z:=x+y;   ­ Cách khắc phục: So sánh sự  khác nhau nhau giữa hai dạng rẽ nhánh, đặc  biệt trước từ khóa Else không có dấu chấm phẩy,về kiến thức Toán, học sinh   tìm hiểu kiểm tra điều kiện để một điểm thuộc hình tròn tâm I(a,b) bán kính r  ? giáo viên vẽ  đường tròn ra, kiểm tra học sinh cách tính công thức khoảng  cách giữa hai điểm I(a,b) và M(x,y) ?  +Biểu thức trong Toán học :   Điểm M(x,y) thuộc hình tròn tâm I(a,b) bán  kính r khi  +Yêu cầu học sinh  :  Viết biểu thức trên trong ngôn ngữ  Pascal và sử  dụng   cấu trúc rẽ nhánh để  viết câu lệnh kiểm tra vị trí của điểm M có thuộc hình  tròn không.  + Nhấn mạnh cho học sinh nếu sử dụng cấu trúc rẽ nhánh dạng đủ thì trước   Else không có dấu chấm phẩy. ­ Kết quả: Cách 1: Sử dụng cấu trúc rẽ nhánh dạng thiếu If   then z:=abs(x)+abs(y) ; If   then z:=x+y; Cách 2: Sử dụng cấu trúc rẽ nhánh dạng đủ If   then z:=abs(x)+abs(y)  Else z:=x+y;   Bài tập giao cho học sinh  theo nhóm:  Về hoàn thiện chương trình,  + Nhập vào tọa độ điểm M(x,y), tâm I(a,b), bán kính R. + Tính và đưa ra giá trị của z 9/20
  9. + Xây dựng bộ Test và nộp báo cáo kết quả thử nghiệm. Ví dụ  2:  Viết câu lệnh rẽ  nhánh để  kiểm tra 3 số  nguyên dương a,b,c   có   phải 3 cạnh của một tam giác không ?  Lỗi biểu thức logic :  ­ Trường hợp 1: Biểu thức logic kiểm tra chưa đúng, chưa xét được hết các  trường hợp, lỗi này thuộc về mặt tư duy toán học. Lỗi này chương trình dịch   không thể  phát hiện và thông báo, chỉ khi chạy chương trình với các bộ  Test  cụ thể học sinh mới phát hiện ra sai.     If a+b>c then write(‘ Ba so a,b,c la do dai ba canh cua tam giac ’)                   Else  write(‘ Ba so a,b,c khong la do dai ba canh cua tam giac ’);  ­ Trường hợp 2: Học sinh xác định được biểu thức logic rồi nhưng khi trình  bày sai, chương trình dịch báo lỗi không sửa được. Đây là lỗi thiếu ngoặc, cụ  thể học sinh viết như sau:  If  a+b>c  and  a+c>b and  b+c>a  then write(‘ Ba so a,b,c la do dai ba canh  cua tam giac ’)  Else  write(‘ Ba so a,b,c khong la do dai ba canh cua tam giac ’); ­ Cách khắc phục lỗi : Kiểm tra về kiến thức Toán học : Điều kiện để 3 số  nguyên dương là độ  dài 3 cạnh của một tam giác ? Điều kiện :  a+b>c và  a+c>b  và b+c>a +  GV  phải  nhấn  mạnh  :  Ba   điều kiện  đồng thời thỏa mãn: (a+b>c)  và  (b+c>a) và (a+c>b).  Biểu thức logic nhận giá trị True khi cả 3 điều kiện thỏa  mãn ­ Dự kiến câu hỏi của học sinh : Học sinh có thể thắc dùng hiệu hai số bất  kỳ trong 3 số nhỏ hơn số còn lại, cách này cũng được nhưng các em nên dùng  tổng 2 số lớn hơn số còn lại.  ­  Đề xuất một bộ Test tiêu biểu để kiểm tra tính đúng đắn của chương trình?  +GV chuẩn bị một chương trình sai có câu lệnh sau     If a+b>c then write(‘ Ba so a,b,c la do dai ba canh cua tam giac ’)  10/20
  10.                  Else  write(‘ Ba so a,b,c khong la do dai ba canh cua tam giac ’);  Sau đó chạy thử  cho học sinh, đưa vào một bộ   Test cụ  thể  như  : a=1, b=3,  c=2 và cho học sinh nhận xét về kết quả mặc dù thỏa mãn điều kiện  a+b>c  nhưng bộ 3 số đó có là độ dài của một tam giác không?  Từ đó giáo viên nhấn mạnh cho học sinh: Đối với mỗi bài toán, việc xác định  biểu thức logic rất quan trọng. Có những biểu thức logic bao gồm đồng thời   nhiều điều kiện. Khi đó chúng ta phải sử dụng phép toán logic và (AND). ­ Giao nhóm học sinh về nhà: + Hoàn thiện chương trình. + Xây dựng một bộ Test tiêu biểu. Ví dụ 3: Viết chương trình giải bài toán dạng   (trong đó a,b là các số nguyên  nhập vào từ bàn phím). Lỗi  học  sinh   thường  mắc  phải  :  Học   sinh  dễ  nhầm  lẫn  với  việc   giải   phương trình bậc nhất một  ẩn nên thường không xét tới khả  năng a=0 nên  học sinh đưa luôn ra nghiệm x=­b/a. Lỗi này do học sinh quên kiến thức toán  học.  Cách khắc phục :  Yêu cầu học sinh viết câu lệnh rẽ  nhánh, xây dựng bộ  Test + Nếu a=0 và b=0 thì phương trình có vô số nghiệm + Nếu a=0 và b0 thì phương trình vô nghiệm + Nếu a0 thì phương trình có nghiệm duy nhất x=­b/a.  Kết quả mong đợi : If (a=0) and (b=0) then write(‘phuong trinh co vo so nghiem ’) ; If (a=0) and (b0) then write(‘phuong trinh  vo  nghiem ’) ; If a0 then write(‘phuong trinh co nghiem  duy nhat x=’, ­ b/a :2:1) ; ­ Học sinh phải hiểu rõ hoạt động của câu lệnh rẽ nhánh dạng thiếu, dạng  đủ và có thể sửa lại bằng cách sử dụng cấu trúc rẽ nhánh dạng đủ. 11/20
  11. If  a0 then write(‘phuong trinh co nghiem  duy nhat x=’, ­ b/a :2:1)         Else            If b0 then write(‘phuong trinh  vo  nghiem ’)                                      Else  wite(‘phuong trinh co vo so nghiem ’) ; Hướng dẫn cho học sinh xây dựng bộ  Test  tiêu biểu, có đủ  các trường  hợp mà đã biết trước kết quả. Ví dụ một bộ Test tiêu biểu sau: Input Output a b 0 1 Phuong trinh vo nghiem 0 0 Phuong trinh co vo so nghiem 2 ­ 6 Phuong trinh co nghiem duy nhat x=3.0 II.2.2 Lối không sử dụng câu lệnh ghép khi cần thiết. Các lỗi thường gặp khi lập trình sử  dụng câu lệnh rẽ  nhánh là không  tạo câu lệnh ghép trong trường hợp cần thiết, đây là lỗi mà các em khó phát  hiện vì chương trình dịch không phát hiện giúp được. Khi có nhiều câu lệnh   IF liền nhau thường tạo ra nhiều tiềm  ẩn dẫn tới lỗi. Học sinh thường mắc   lỗi không sử dụng câu lệnh ghép khi cần thiết.  Ví dụ 1: Có sẵn  chương trình  nhập vào 3 số thực a,b,c . Kiểm tra 3 số đó có   là 3 cạnh của một tam giác không ?  Yêu cầu học sinh sửa lại chương trình : Nếu là 3 cạnh của một tam giác  hãy tính chu vi và diện tích tam giác đó ? Bài toán này quen thuộc với học sinh nhưng khi sửa lại chương trình, lỗi học  sinh không sử dụng câu lệnh ghép:  If (a 
  12. + Sau từ khóa Then muốn thực hiện hai câu lệnh tính P và S nên phải sử dụng  câu lệnh ghép, và hai câu lệnh này chỉ được thực hiện khi biểu  thức (a 
  13. khi thực hiện chương trình với một bộ dữ liệu cụ thể trên các em thấy kết   quả của bài toán không đúng do lỗi không sử dụng câu lệnh ghép. ­ Nhấn mạnh cho học sinh khi nào cần sử dụng câu lệnh ghép. Kết quả:   If b:=(a+c)/2 then            Begin Writeln(‘ ba so theo thu tu la mot cap so cong : ’); Writeln(‘ Cong sai d=  ’, b­a); End;  II.2.3  Phát triển tư  duy lập trình cho học sinh thông qua việc phát triển   bài toán đã biết. a) Lựa chọn và đưa vào bài tập phù hợp và có tính kế  thừa, phát triển bài  toán mới nhưng quen thuộc với học sinh, phát huy tính tìm tòi sáng tạo của  học sinh.  Ví dụ  1: Ở ví dụ 3 sách giáo khoa trang 40, các em đã biết viết câu lệnh rẽ  nhánh để  tìm Max của hai số a,b If  a > b Then Max := a Else Max:=b;  Câu hỏi 1:  Đối với bài toán tìm  Max của 3 số  a, b, c.   thì các em sẽ  thêm  lệnh nào? học sinh dễ dàng nói thêm lệnh.  IF max  b Then Max := a Else max := b ; IF max 
  14. so sánh chương trình mới với chương trình cũ để  thấy cái hay của chương   trình mới, cái hạn chế của chương trình cũ. Câu hỏi 3:  Hãy sửa lại chương trình trên thành  bai toán viết chương trình  nhận vào 2 số  nguyên không âm a và b viết lên màn hình 2 số  đó theo thự  tự  tăng dần. Giao cho nhóm học sinh về  nhà: Sửa chương trình và chọn một bộ   Test  tiêu biểu. Kết quả: Program sapxep_2so; Uses Crt ; Var a , b : Word ; Begin ClrScr ;  Wrieln (‘ Nhap vao 2 so nguyen ‘ ); Readln (a , b ) ;  IF a 
  15. Var a, b, c, tg : Integer ; Begin ClrScr ; Write (‘Nhap 3 so nguyen ‘); Readln (a, b, c); If  a > b Then         Begin                tg := a ;               a := b ;               b := tg;           End ; If b > c Then  Begin  tg := b ;  b := c ;  c := tg;    End ; If a > b Then  Begin  tg := a ;  a := b ;  b := tg;  End ; Writeln ( a : 7, b : 7, c : 7 ); End. Ở  chương trình 1 và trình bày cách đã dùng để  giải quyết vấn đề  là so  sánh giá trị của hai biến, nếu biến ở trước lớn hơn biến  ở sau thì tráo đổi giá  trị của chúng cho nhau. Việc làm trên còn có cách hiểu khác là đưa giá trị lớn  hơn trong hai số về số đứng sau. Có ba biến. Vậy theo cách tiếp cận như  trên, phải đưa số  lớn nhất về c,   số lớn thứ hai về b. Ví dụ  2: Trong bài thực hành số  2 trang 49: Kiểm tra bộ 3 số nguyên dương  a,b,c có phải là bộ số pitago không? ­ Bộ ba số a,b,c là bộ pitago nếu thỏa mãn điều kiện :   ­ Phát triển bài toán : Yêu cầu học sinh viết chương trình thành bài toán viết  chương trình nhập vào 3 số nguyên dương a,b, c là 3 cạnh của tam giác. Hãy  16/20
  16. kiểm tra và đưa ra thông báo thông báo tam giác đó có là tam giác vuông, tam  giác cân, tam giác đều hay tam giác thường? Đề xuất một bộ Test tiêu biểu.  ­ Học sinh đã thực hiện trong bài tập và thực hành số  2­Sách giáo khoa trang   49. Các em đã biết câu lệnh rẽ nhánh để kiểm tra như sau: If   or  or           Then  write(‘Ba so la bo pitago’);  Vì vậy học sinh dễ dàng sử dụng câu lệnh rẽ nhánh trên để áp dụng giải bài   toán  ­  Phân tích tìm lỗi cho học sinh: Cách để  nhận dạng tam giác vuông, cân,  đều,học sinh thường nhầm lẫn khi xét tam giác chỉ  vuông  ở  một góc mà  không xét hết khả năng vuông ở hai góc còn lại. Khi xét tam giác cân thì cũng  lỗi chỉ xét cân tại một đỉnh mà không xét hết trường hợp cân tại hai đỉnh còn  lại.  ­ Kết quả: If   or  or   ; If   a=b=c then write(‘tam giac deu ’)  Else  If   or  or   then write(‘Tam giac can’)  Else write(‘tam giac thuong’) ; ­ Bộ  Test tiêu biểu như  sau: dữ  liệu vào a,b,c phải thỏa mãn độ  dài 3 cạnh  của tam giác. Input Output Chú ý a b c 3 4 5 Tam giac vuong Vuông tại C  6 10 8 Tam giac vuong Vuông tại B 13 5 12 Tam giac vuong Vuông tại A 5 5 5 Tam giac deu 3  4 4 Tam giac can 17/20
  17. 3 7 8 Tam giac thuong  Ví dụ    3 :  Viết  chương trình  nhập vào ba số nguyên dương, kiểm tra và thông  báo ra màn hình theo thứ tự ba số đó có phải là  một cấp nhân không  ? Nếu là  cấp số nhân hãy đưa ra công bội q ? Phân tích bài toán : +Input :  a,b,c : 3 số nguyên dương  + Out put : Là cấp số nhân có công bội q, hoặc không là cấp số nhân. ­ Tính chất của cấp số nhân học sinh đã học ở chương trình Toán 11, học kỳ  1. Để đưa vào điểu kiện kiểm tra: ­ Do ba số a,b,c nguyên dương nên học sinh chỉ cần kiểm tra tính chất     Nếu     thì   3 số theo thứ tự lập thành cấp số nhân ­Đề suất bộ Test tiêu biểu Input Output a b c 5 5 5 La cap so nhan , q=1 9 3 1 La cap so nhan ,  9 1 2 Khong la cap so nhan ­ Giao cho nhóm học sinh về nhà hoàn thiện bài. b) Đưa vào tình huống công việc thực tiễn xuất phát từ thực tiễn cuộc sống   hàng ngày, tạo hứng cho học sinh.  Ví dụ   1   : Tất cả  những học sinh dự  thi nghề phổ  thông nếu đạt điểm trung  bình hai bài thi từ  5 điểm trở  lên và không bài thi nào có điểm dưới 3.0 thì   được cấp chứng chỉ nghề phổ thông và được xếp loại theo tiêu chuẩn sau đây  :  + Loại Giỏi : Điểm trung bình hai bài thi đạt từ 9 đến 10 điểm 18/20
  18. + Loại Khá : Điểm trung bình hai bài thi đạt từ 7 đến dưới 9 điểm và không  có bài thi nào dưới 5. + Loại TB : Những trường hợp còn lại  ­ Hãy viết câu lệnh rẽ  nhánh để  xét đỗ  hoặc không đỗ,  xếp loại đỗ  chứng  chỉ nghề cho học sinh theo tiêu chuẩn trên.   Kết quả :    If  (LT=5 and (TH>=5) then write(‘do loai Gioi’)  Else if TB >=7 then write(‘do loai Kha’)     Else write(‘do loai Trung Binh’) ;  Ví dụ 2    : Bài toán thực tế  Cho học sinh tìm hiểu cách tính điểm xét tốt nghiệp mới nhất của Bộ  giáo  dục 2019, Yêu cầu học sinh viết câu lệnh tính điểm xét tốt nghiệp cho học   sinh   THPT.   Viết chương trình nhập vào điểm của 3 môn bắt buộc môn  Toán, Anh, Văn, và một môn Tổ  hợp tự  chọn, điểm khuyến khích của học  sinh. Đưa ra thông báo thí sinh có đỗ tốt nghiệp hay không.  ­ Bài toán này khá thực tế  và các em học sinh rất quan tâm vì hàng năm số  lượng học sinh của trường trượt tốt nghiệp không phải ít, có học sinh nhờ  có điểm nghề mà vừa đủ điểm để đỗ tốt nghiệp.   ­ Giao cho học sinh hiểu và viết chương trình ở nhà, có khuyến khích chấm   điểm. II.2.4 Bài tập bổ xung   Bài  toán  1   :     Viết câu lệnh rẽ nhánh tính (Đây là Bài 3.21, Sách bài tập Tin 11­  Trang 21)  Bài tập 2:  Trong hệ  trục tọa độ  OXY cho điểm M(x;y) và một đường tròn  tâm I(a,b) bán kính R  cho  trước. Hãy viết chương trình kiểm tra vị trí tương  đối của một điểm M(x;y) so với đường tròn. 19/20
  19. Hướng dẫn về  nhà cho học sinh  : Bài toán này học sinh có thể  sử  dụng cấu trúc rẽ nhánh dạng thiếu hoặc dạng đủ. Nên khuyến khích học sinh   sử dụng rẽ nhánh dạng đủ. Dựa vào khoảng cách từ  điểm M đến tâm đường tròn so với bán kính,   học sinh dễ ràng kiểm tra được 3 trường hợp. Công thức tính khoảng cách giữa hai điểm  TH1: Nếu IM=R thì điểm M nằm trên đường tròn. TH2: Nếu IM>R thì điểm M nằm phía ngoài đường tròn. TH3: Nếu IM ­b/a Nếu a
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2