KĨ THUẬT SỬ DỤNG HÀM ĐIỀU KIỆN TRONG LẬP TRÌNH GIẢI TOÁN MÁY TÍNH CẦM TAY LÊ TRUNG HIẾU*, VÕ MINH TÂM*, NGUYỄN THỊ BÍCH THUẬN* TÓM TẮT Trong bài báo này, chúng tôi đưa ra kĩ thuật mới là kĩ thuật sử d[.]
Lê Trung Hiếu tgk Tạp chí KHOA HỌC ĐHSP TPHCM _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ KĨ THUẬT SỬ DỤNG HÀM ĐIỀU KIỆN TRONG LẬP TRÌNH GIẢI TỐN MÁY TÍNH CẦM TAY LÊ TRUNG HIẾU*, VÕ MINH TÂM*, NGUYỄN THỊ BÍCH THUẬN* TĨM TẮT Trong báo này, đưa kĩ thuật kĩ thuật sử dụng hàm điều kiện để viết giải thuật lập trình giải tốn máy tính cầm tay (MTCT) Nhiều hàm điều kiện đưa nhằm giải số lớp tốn khó tương ứng Một số ví dụ dãy số truy hồi giải để minh họa cho tính hiệu phương pháp Từ khóa: giải thuật lập trình, hàm điều kiện, máy tính cầm tay ABSTRACT The technique of using conditional functions in programing solving mathematical exercises in calculators In this paper, we present a new technique, which is using conditional functions to write programming algorithms and solve mathematical exercises in calculators Many new conditional functions are given to solve some classes of corresponding difficult exercises Some exercises on recurrent sequences are solved to illustrate the effectiveness of the method Keywords: conditional functions, programming algorithms, calculators Mở đầu Máy tính cầm tay cơng cụ hỗ trợ đắc lực cho việc tính tốn học sinh, sinh viên học tập nghiên cứu Việc am hiểu chuyên sâu thuật tốn MTCT góp phần sử dụng hiệu máy tính vào việc tính tốn nhanh, tiết kiệm thời gian, nâng cao tư giải thuật hiệu học tập nghiên cứu mà không làm giảm kĩ tính tốn học sinh, sinh viên giáo viên Lê Thái Bảo Thiên Trung (2011) Mohd Yusuf Yasin (2012) nhiều hiệu thiết thực việc sử dụng MTCT dạy học Toán khẳng định hướng nghiên cứu ứng dụng MTCT dạy học cần đẩy mạnh nhằm phát huy lợi ích sư phạm chúng mang lại (xem [5], [7]) Vì vậy, nhằm khuyến khích khai thác hiệu việc sử dụng MTCT học tập nghiên cứu, nhiều thi giải toán MTCT tổ chức đặn hàng năm cho cấp học với nhiều hình thức khác Trong tốn MTCT dạng tốn giải cách dùng giải thuật lập trình dạng khó, địi hỏi người giải phải tìm giải thuật lập trình giải kết Ngoài ra, số tốn đơn giản giải tính tốn ghi chép thơng thường qua nhiều bước việc nghiên cứu viết giải thuật lập * ThS, Trường Đại học Đồng Tháp trình giải tốn cần thiết nhằm tránh sai số lớn tính tốn ghi chép bước trung gian, đồng thời tiết kiệm lớn lượng thời gian giải tốn Có nhiều kĩ thuật lập trình giải tốn MTCT kĩ thuật sử dụng biến Ans ([2], [6], [7]), kĩ thuật sử dụng biến A, B, C… ([3], [4]) Trong báo này, đưa kĩ thuật kĩ thuật sử dụng hàm điều kiện kết hợp với biến A, B, C, … đồng thời đưa hàm điều kiện hoàn toàn sử dụng giải thuật lập trình Kĩ thuật góp phần đơn giản hóa số dạng tốn có quy luật nâng cao mà khó khơng thể giải chúng theo cách thơng thường ghi chép tính tốn thủ cơng qua nhiều bước lập trình khơng dùng hàm điều kiện Ngồi ra, lợi ích sư phạm việc sử dụng kĩ thuật giải tốn MTCT góp phần tích cực vào việc rèn luyện cho học sinh, sinh viên, đặc biệt sinh viên ngành Toán - Tin, tư thuật toán giúp họ khai thác sâu số yếu tố lập trình vịng lặp, biến tin học Qua đó, giáo viên khai thác để dạy tích hợp Tin học mơn Tốn Giải thuật lập trình nêu áp dụng cho nhiều dòng máy quy định [1] Casio fx 570MS, Casio fx 570ES (PLUS), VinaCal 570MS, VinaCal 570ES (PLUS), VN-570RS, VN-570ES (PLUS)… Để thuận tiện cho việc trình bày, chúng tơi minh họa việc tính tốn dịng máy Casio fx 570MS ví dụ minh họa thơng qua tốn dãy số truy hồi Sau số quy ước trình bày báo nhằm đơn giản cách viết giải thuật lập trình: (1) Lưu giá trị thực a vào biến nhớ A ta viết đủ a a →A tương ứng với dãy phím đầy SHIFT STO A; (2) Nhập biến nhớ A vào hình, ta cần viết A, thay phải viết ALPHA A; (3) Viết dấu “=” “:” giải thuật hiểu dấu dấu hai chấm màu đỏ lập trình (phím gọi thơng qua phím ALPHA); (4) phím gọi trực tiếp kết từ phép toán, khác với dấu “=” (3) Giải thuật sử dụng hàm điều kiện lập trình Trong mục này, đưa hàm điều kiện tương ứng với dạng toán khác đồng thời minh họa cách áp dụng giải thuật lập trình sử dụng hàm điều kiện vào giải toán dãy số truy hồi MTCT Cho dãy số truy hồi cấp hai tổng quát { un } xác định sau: u1 = u2 = b; n ∈ N a; f (un +1,un un+2 = ), * a,b ∈ R f hàm hai biến cho trước cho dãy số xác định với n ∈ N Sau ta xét số dạng toán đặc trưng * Dạng Bài tốn có đan dấu liên tiếp; “nhảy” số hạng; kết hợp đan dấu “nhảy” hai số hạng Thông thường ta dùng hàm điều kiện tương ứng sau, với n ∈ Z : g (n) = (−1)n nhận giá trị n chẵn -1 n lẻ; n + (−1) g(n) = nhận giá trị n chẵn n lẻ; g(n) = sin(90n) , g(n) = cos(90n) nhận giá trị tuần hoàn (0, 1, 0, -1), (1, 0, -1, 0) tương ứng (ở chế độ Mode Deg) Ví dụ a) Tính S30 = u1 − u2 + u3 − + u29 − u30 T30 = u2 + u4 + u6 + + u28 + u30 b) Tính W30 = u2 − u4 + u6 − u8 + + u26 − u28 + u30 Giải thuật a) Lưu giá trị ban đầu: a →A, b →B, (biến tổng S X ), b →M (biến tổng TX ) →X (biến số), a − b →Y Nhập vào hình vòng + (−1) X X +1 :A= B: lặp X = X + 1: C = f ( A, B) : Y = Y + (−1) ×C:M =M +C× B = C Ấn nhiều lần X = 30 , ấn lần để tìm Y, ghi kết S30 Y, ấn lần để tìm M, ghi kết T30 M Chú ý: Để chạy vòng lặp trên, số dòng máy khác, chẳng hạn Casio 570ES (PLUS), VinalCal 570ES (PLUS))… ta cần ấn CALC trước ấn phím máy phải hỏi giá trị biến vịng lặp mới, vịng lặp thực lâu so với chạy máy Casio fx 570MS Để ngắn gọn cách trình bày, giải thuật sau nêu đến dịng lệnh vịng lặp cần nhập vào hình mà khơng nêu phần tìm kết từ việc ấn phím b) Tổng vừa có đan dấu, vừa “nhảy” số hạng nên dùng hàm điều kiện Câu a), giải thuật sau: Mode Deg, a →A, b →B, →X , b →Y (biến tổng WX ) Nhập vào hình X = X + 1: C = f ( A, B) : Y = Y + C ×sin(90X ) : A = B : B = C Chú ý: Đối với tốn có đan dấu “nhân” “chia” giải kĩ thuật lập trình tương tự trên, nhiên hàm điều kiện phải đặt số mũ (xem Bài toán đề nghị (a)) xỉ Dạng Bài tốn có liên quan đến giá trị nguyên, không nguyên dùng hàm xấp sin(180x) nhận giá trị x ∈ Z xấp g (x) sin(180x) + Ta dùng hàm điều kiện: = 10−99 xỉ x ∉ Z (bộ nhớ máy hiểu 1) chế độ Mode Deg Chú ý: Số 10−99 thêm vào mẫu có ý nghĩa số bé tránh dạng vô định Một hạn chế hàm g(x) phụ thuộc vào hàm sin, máy khơng tính sin(180x) x nhận giá trị lớn Ví dụ Lập trình tìm xem có số hạng không nguyên (không số nguyên) 30 số hạng dãy số { un } nêu Kết lưu tự động vào biến Y kết thúc giải thuật Giải thuật Mode Deg, a →A,b →B, →X , k →Y (biến đếm số số hạng không nguyên, giá trị k lưu ban đầu số số không nguyên hai số a b) Nhập vào hình X = X + 1: C = f ( A, B) : Y = Y+ sin(180C) : A = B : B = C sin(180C) +10−99 Dạng Bài tốn có liên quan đến giá trị lớn nhất, giá trị bé Dùng hàm điều kiện max{a,b} = b| a + b+ | a − min{a,b} = a + b− | a − b | 2 Chú ý: Ở chế độ Mode Comp để tính giá trị tuyệt đối số thực x máy 570MS ta dùng công thức | x |= x2 , riêng máy 570ES ta dùng phím Abs Ví dụ Lập trình max1≤n≤30{un} Giá trị cần tìm lưu tự động vào biến Y sau tìm kết thúc giải thuật Giải thuật a →A, b →B, →X , max{a,b} →Y (biến max) Nhập vào hình X = X + 1: Y +C+|Y−C| : A = B : B = C Dạng Bài toán liên quan đến số hạng dương, số hạng âm C = f ( A, B) : Y = Dùng hàm điều kiện a+ | a | g (a) = max{a, 0} = g (a) = min{a, 0} = a−|a| , a ∈ R Ví dụ Lập trình đếm xem có số hạng dương (có giá trị dương) số 30 số hạng từ u30 tính tổng tất số hạng dương Kết đếm tổng u1 đến lưu tự động vào biến Y, M tương ứng Giải thuật a →A, b →B, →X , d →Y (biến đếm số số hạng dương), e →M (biến tổng số hạng dương) giá trị d, e số số hạng dương tổng số hạng dương hai số a, b cho trước, a b nhận giá trị âm e=0 Nhập vào hình C+|C| D X = X + 1: C = f ( A, B) : D = :Y = : M = M + D : A = B B = C D+ : Y+ 10−99 Ở D = max{C, 0} biến trung gian nhằm đơn giản cho biểu thức tính Y M Khi D=0 Y=Y+0 (biến đếm giữ nguyên giá trị), D>0 Y = Y + biến đếm cộng thêm giá trị Ví dụ Tính kết cụ thể Ví dụ 1, 2, 3, cho a = 1, * n+1 ,un ) = n+ 2u + , n ∈ N f n (u u b = −2 Trên sở giải thuật tổng qt có, phần tính tốn dành cho bạn đọc Kết cụ thể sau: Ví dụ 1: S30 = −20790 , T30 = −2826 , W30 = −26450 ; Ví dụ 2: 14 số hạng có giá trị khơng ngun, 16 số hạng có giá trị ngun ; Ví dụ 3: max1≤k ≤30{uk } = 12283; Ví dụ 4: Có 15 số hạng dương giá trị tổng 32772 Sau đề nghị số tốn nâng cao khơng trình bày lời giải, bạn đọc dùng kĩ thuật tương tự kĩ thuật vừa nêu để giải cách nhanh chóng Bài tốn đề nghị Cho hàm số h(x) = sin2 (2x), x ∈ R dãy số truy hồi { u } xác định sau n u1 = 1; u2 = − ; u = −1; n+3 n+2 * u = un 2u + n ∈ N n +1 3u 1, 1 a) Tính 39 = h(u1 ) h(u ) × h(u5 ) h(u ) × × h(u37 ) × × S × h(u ) 39 b) Tìm min1≤n≤40{un } min1≤n≤40{h(un )} c) Tính tổng tất số hạng uk thỏa điều kiện h(uk ) ≤ , với ≤ k ≤ 40 d) Có số hạng có giá trị nguyên số 24 số hạng dãy số Các tính tốn lượng giác cài đặt chế độ độ (Mode Deg) Bài toán đề nghị Cho dãy số xác định: u = + ; 1 21 u2 = ; … Viết giải ; u3 = + 5+ 3+ + 3 5+ thuật lập trình tính giá trị thập phân un u7 , u12 , u32 Dự đoán giới hạn lim un n→∞ với n∈ N* cho trước Từ tính Kết luận Bài báo đưa kĩ thuật dùng hàm điều kiện để viết giải thuật lập trình dịng máy tính Casio fx 570MS máy có chức tương đương Một số dạng toán phân loại rõ ràng giải với hàm điều kiện tương ứng Vấn đề mở báo áp dụng kĩ thuật vào số dạng toán khác ngồi dãy số truy hồi tìm hàm điều kiện để giải dạng tốn khó có quy luật Kĩ thuật đưa báo khơng góp phần giúp học sinh, sinh viên khai thác hiểu sâu vòng lặp, biến tin học mà giúp họ rèn luyện tư thuật tốn khả sáng tạo Qua giáo viên vận dụng để tích hợp dạy học Tin học mơn Tốn đồng thời thiết kế cho tình dạy học theo hướng ứng dụng công nghệ thông tin dạy học với hỗ trợ MTCT Cuối cùng, kiến nghị đến hoạt động tổ chức thi giải toán MTCT cho học sinh, sinh viên thời gian tới ban tổ chức cần ý khai thác số dạng câu hỏi nhằm kết hợp rèn kĩ giải toán phát triển tư thuật toán thí sinh, thi thực có ý nghĩa cao TÀI LIỆU THAM KHẢO Bộ Giáo dục & Đào tạo (2014), Danh sách máy tính cầm tay đem vào phịng thi, Số 2683/BGDĐT-CNTT, Hà Nội Lê Trung Hiếu, Nguyễn Thị Bích Thuận (2014), “Vai trị biến Ans giải tốn máy tính cầm tay”, Tạp chí Thiết bị giáo dục, (106), tr.24-26 Tạ Duy Phượng, Phạm Thị Hồng Lý (2005), Một số dạng toán thi học sinh giỏi giải tốn máy tính điện tử, Nxb Giáo dục Nguyễn Văn Trang, Nguyễn Trường Chấng, Nguyễn Thế Thạch, Nguyễn Hữu Thảo (2007), Hướng dẫn sử dụng giải toán máy tính Casio fx 570MS, Nxb Giáo dục Lê Thái Bảo Thiên Trung (2011), “Vấn đề ứng dụng cơng nghệ thơng tin dạy học tốn lợi ích máy tính cầm tay”, Tạp chí Khoa học Trường Đại học Sư phạm TPHCM, 30(64), tr.51-58 Tay, K G (2006), Numerical Methods with Calculator Casio fx-570MS, Malaysia: Penerbit KUiTTHO Yasin, M Y (2012), “Scientific Calculators and the Skill of Efficient Computation”, BIBECHANA: A Multidisciplinary Journal of Science, Technology and Mathematics, Vol 8, pp.31-36 (Ngày Tòa soạn nhận bài: 07-7-2014; ngày phản biện đánh giá: 12-11-2014; ngày chấp nhận đăng: 21-11-2014) ... [7]), kĩ thuật sử dụng biến A, B, C… ([3], [4]) Trong báo này, đưa kĩ thuật kĩ thuật sử dụng hàm điều kiện kết hợp với biến A, B, C, … đồng thời đưa hàm điều kiện hoàn toàn sử dụng giải thuật lập. .. Từ tính Kết luận Bài báo đưa kĩ thuật dùng hàm điều kiện để viết giải thuật lập trình dịng máy tính Casio fx 570MS máy có chức tương đương Một số dạng toán phân loại rõ ràng giải với hàm điều kiện. .. trình Trong mục này, chúng tơi đưa hàm điều kiện tương ứng với dạng toán khác đồng thời minh họa cách áp dụng giải thuật lập trình sử dụng hàm điều kiện vào giải toán dãy số truy hồi MTCT Cho dãy