Bài toán tiếp tuyến của đường tròn
Bài toán tiếp tuyến đường tròn ========================================================== TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI KHOA TOÁN TIN ỨNG DỤNG - - TIỂU LUẬN Đề tài: Bài toán tiếp tuyến đường tròn Giáo viên hướng dẫn: Nguyễn Hữu Điển Sinh viên thực : Đỗ Phương Liên, Nguyễn Thị Cúc Lớp: toán 2-k51 ĐHBKHN Hà Nội, tháng 11 năm 2009 ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN Bài toán tiếp tuyến đường tròn ========================================================== PHẦN I: GIỚI THIỆU Giới thiệu chung Maple: Maple gói phần mềm toán học thương mại phục vụ cho nhiều mục đích Nó phát triển lần vào năm 1980 Nhóm Tính toán Hình thức Đại học Waterloo Waterloo, Ontario, Canada Từ năm 1988, phát triển thương mại hóa Waterloo Maple Inc (còn biết đến với tên gọi Maplesoft), công ty Canada có trụ sở Waterloo, Ontario Phiên Maple 13 phát hành vào tháng năm 2009 Đối thủ cạnh tranh Mathematica Chức cốt lõi Người dùng nhập biểu thức toán học theo ký hiệu toán học truyền thống Có thể dễ dàng tạo giao diện người dùng tùy chọn Maple hỗ trợ cho tính toán số tính toán hình thức, hiển thị Nhiều phép tính số học thực dựa thư viện số học NAG; Maple, chương trình NAG mở rộng phép độ xác ngẫu nhiên lớn Các ví dụ tính toán hình thức trình bày phần sau Maple có ngôn ngữ lập trình cấp cao đầy đủ Cũng có giao diện cho ngôn ngữ khác (C, Fortran, Java, MatLap, Visual Basic) Cũng có giao diện dành cho Excel Với phần mềm Maple, có thể: + Thực tính toán với khối lượng lớn, với thời gian nhanh độ xác cao ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN Bài toán tiếp tuyến đường tròn ========================================================== + Sử dụng gói chuyên dụng Maple để giải toán cụ thể như: vẽ đồ thị ( gói plot), hình học giải tích ( gói geometry), đại số tuyến tính ( gói linalg), + Thiết kế đối tượng chiều +… Kiến trúc Phần lớn chức toán học Maple viết ngôn ngữ Maple, thông dịch nhân Maple Nhân Maple viết C Maple chạy tất hệ điều hành Ngôn ngữ lập trình Maple ngôn ngữ kiến động Cũng giống hệ thống đại số máy tính, biểu thức hình thức lưu trữ nhớ theo đồ thị không chu trình có hướng (DAG) Ngôn ngữ cho phép biến có phạm vi định (lexical scoping) Ngôn ngữ có hình thức lập trình hàm, có hỗ trợ đầy đủ cho lập trình truyền thống, theo kiểu mệnh lệnh Một điều lạ chương trình thương mại, đa số mã nguồn xem tự Nguồn gốc tên gọi Tên "Maple" tên viết tắt từ cấu tạo chữ đầu, mà đơn giản để hình tượng Lá phong (tiếng Anh: maple) Quốc kỳ Canada Giới thiệu số gói lệnh Maple: 2.1 Gói plots: Gói plots chứa lệnh cho phép vẽ hình không gian chiều, Gói plottools công cụ chứa lệnh cho phép làm việc với đối tượng hình ảnh: ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN Bài toán tiếp tuyến đường tròn ========================================================== a Sự vận động đồ thị: animate3d(ham_co_tham_so,x=gt_dau gt_cuoi, y=gt_dau gt_cuoi, tham_so =gt_dau gt_cuoi); Ý nghĩa: hiển thị biến đổi, vận động đồ thị tham số thay đổi khoảng cho trước b.Lệnh plots[display]() Cú pháp: plots[display](a,b,c ,insequence=true(false),options); plots[display](L,insequence=true(false),options); plots[display](A,options); plots[display](P,options); Các tham số: a,b,c cá đồ thị riêng biệt L: dãy (list) đồ thị(ví dụ L:=a,b,c;) A: mảng chiều hai chiều đồ thị P: đồ thị dạng vận động insequence=true(false): cho phép đồ thị dãy(list) theo trình tự dãy options: tính chất lệnh vẽ plot/options 2.2 Gói plottools Trình tự cú pháp: plottools[các tùy chọn](các đối số) lệnh(các đối số) Vì lệnh vẽ đồ thị hàm số y=f(x) nằm gói (package) plottools thao tác vẽ đồ thị hàm số tốn nhiều nhớ nên trước hết ta phải: > restart ; ‘khởi động lại xóa nhớ > with(plots) ‘nạp gói plots > with(plottools) ; ‘nạp gói plottools Chú ý:Các lệnh vẽ gói PLOTTOOLS phải biểu diễn cách dùng lệnh display gói PLOTS.Vì phải nạp gói PLOTS với gói PLOTTOOLS ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN Bài toán tiếp tuyến đường tròn ========================================================== Phần mô tả: ● Gói plottools chứa thường trình (một đoạn mã chương trình) tự động tạo cách có trình tự đối tượng giao diện đồ họa dùng cấu trúc vẽ hình Kết tùy chọn plottools thường đối tượng vẽ hình- phải biểu diễn cách dùng lệnh plots[display] ● Mỗi lệnh gói plottools thể truy xuất cách dùng long form sort form tên lệnh trình tự gọi lệnh Danh sách tùy chọn gói plottools ● Các tùy chọn tạo cấu trúc vẽ hình là: Maple có nhiều tùy chọn : vẽ hình tròn, arc arrow circle conecuboid curve cutin cutout cylinder disk dodecahedron ellipticArc hemisphere hexahedron hyperbola ellipse icosahedron line octahedron parallelepiped pieslice point polygon rectangle semitorus sphere tetrahedron torus ● Các tùy chọn sửa đổi cấu trúc vẽ hình là: homothety stellate project transform reflect translate rotate scale a.Lệnh plottools[stellate] dùng với cấu trúc POLYGON(hình đa diện) b Lệnh plottools[rotate](): quay đồ thị 2D, 3D: Cú pháp: plottools[rotate](p,ang,pt_2d); quay góc ang quanh điểm có tọa độ pt_2d plottools[rotate](q,alpha,beta,gamma); quay đồ thị q quanh truc x, y, z với góc tương ứng plottools[rotate](q,alpha,[pt_3d1,pt_3d2]); quay đồ thị q quanh trục qua [pt_3d1,pt_3d2] Các tham số: ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN Bài toán tiếp tuyến đường tròn ========================================================== p: cấu trúc đồ thị 2D q: cấu trúc đồ thị 3D ang: góc quay pt_2d: tọa độ điểm làm gốc alpha,beta,gamma:gốc quay quanh trục x,y,z [pt_3d1,pt_3d2]: c.Lệnh plottools[scale](): co giãn đồ thị Cú pháp: plottools[scale](p,a,b,pt_2d); plottools[scale](p,a,b,c,pt_3d); Các tham số: a,b,c: hệ số co giãn theo trục x,y,z pt_2d,pt_3d: tâm co giãn d.Lệnh plottools[translate](p,a,b): Lệnh tịnh tiến đồ thị Lệnh tác động lệnh đồ thị p cho kết tịnh tiến đồ thị đến tọa độ (a,b) Cú pháp: plottools[translate](p,a,b); "dịch chuyển tịnh tiến 2D" plottools[translate](q,a,b,c); "dịch chuyển tịnh tiến 3D" Các tham số: p,q: cấu trúc đồ thị cần dịch chuyển tịnh tiến a,b,c số thực (chính tọa mới) Ví dụ: Vẽ cung tròn: arc(): +Cấu trúc tổng quát : arc(c, r, a b, options) Trong đó: c - tâm đường tròn r - bán kính đường tròn a - góc bắt đầu (tính radian) b - góc kết thúc (tính radian) Options – Các tùy chọn + Mô tả : ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN Bài toán tiếp tuyến đường tròn ========================================================== Tùy chọn arc tạo cung tròn hình tròn với tâm c bán kính r Góc đầu góc kết thúc cung tròn theo lý thuyết miền từ a b, theo thứ tự Đối tượng liệu vẽ hình lệnh arc thể dùng cấu trúc liệu PLOT, dược biểu diễn cách dùng tùy chọn plots[display] options: tùy chọn Vẽ đường tròn: circle(): +Cấu trúc tổng quát: c1:=circle(c,r,option) Trong : c -tâm đường tròn r -(tùy chọn) bán kính đường tròn, mặc định=1.0 option –(tùy chọn) tùy chọn +Mô tả: Tạo đường tròn hai chiều với tâm c, bán kính r .Có thể dùng cấu trúc liệu PLOT, dùng gói plots[display] biểu diễn 3.Giới thiệu đề tài hình học giải tích: Ở cấp trung học, hình học giải tích đòi hỏi học sinh trí tưởng tượng óc nhạy bén để “đoán ra” lời giải trước tìm cách chứng minh Điều làm toán đơn giản Trên đại học, hình học giải tích đưa tất phương trình trước ly luận Việc hệ thống hóa vấn đề đồng thời cho phép giải toán phức tạp mà không cần phải tưởng tượng trước Ví dụ toán quỹ tích Hình học giải tích giúp ta tìm tọa độ điểm muốn tìm Một biết tọa độ, xác định vẽ quỹ tích đơn giản: Đường biểu diễn tham số Maple công cụ ly tưởng để giải vấn đề Mặt khác, nắm vững nguyên tắc tạo hình động, toán quỹ tích đêm đến cho nhiều ly thú qua khía cạnh sinh động lời giải ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN Bài toán tiếp tuyến đường tròn ========================================================== PHẦN II: ỨNG DỤNG CHO BÀI TOÁN TIẾP TUYẾN CỦA ĐƯỜNG TRÒN Bài toán tìm đường thẳng qua điểm cho trước tiếp tuyến đường tròn cho trước: Trong hệ trục tọa độ Oxy, cho đường tròn (C1) tâm I( xI , yI ) bán kính r, điểm A( xA , y A ) Viết phương trình tiếp tuyến của(C1) biết tiếp tuyến qua A Đầu vào: - xI , yI tọa độ tâm I - xA , y A tọa độ điểm A -r : bán kính (C1) Đầu ra: -Phương trình tiếp tuyến của(C1) thỏa mãn tiếp tuyến qua A -Vẽ hình (C1) tiếp tuyến tìm Thuật toán: Phương trình (C1): ( x − xI ) + ( y − yI ) = r (1) - Nếu A nằm phía (C1) (tức AI < r) tiếp tuyến (C1) thỏa mãn qua A -Nếu A nằm đường tròn (C1) tức tọa độ A thỏa mãn phương trình (1) có đường thẳng d thỏa mãn yêu cầu toán (d) qua A( xA , y A ) nhận vecto IA làm vecto pháp tuyến, suy phương trình (d) có dạng: ( x A − xI )( x − x A ) + ( y A − yI )( y − y A ) = -Ngược lại gọi (d) đường thẳng cần tìm +Gọi k hệ số góc (d) (d) qua A có hệ số góc k, suy y = k ( x − xA ) + y A phương trình (d) có dạng: +(d) tiếp tuyến (C1) khoảng cách từ I đến (d) r Hay k phải thỏa mãn phương trình : k ( xI − x A ) + y A − y I 12 + k = r (2) Giải phương trình (2) ta thu nghiệm k Trường hợp 1: xA − xI =r phương trình (2) có nghiệm k1 Khi tiếp tuyến cần tìm là: ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN Bài toán tiếp tuyến đường tròn ========================================================== (d1) x = xA (d2) y = k1( x − x A ) + y A Trường hợp2: xA − xI r phương trình(2)có nghiệm phân biệtk1,k2 Khi tiếp tuyến cần tìm là: y = k1( x − x A ) + y A (d1) (d2) y = k 2( x − x A ) + y A CODE >restart: with(geometry): with(plottools): with(plots, textplot): tieptuyen:=proc(xI,yI,r,xA,yA) local C1,A,I,t1,t2,k1,k2,f1,f2,f,vk,a,g; a:=2; C1:=circle([xI,yI],r,color=blue): A:=textplot([xA+0.1,yA+0.1,"A"],align=ABOVE): I:=textplot([xI+0.1,yI+0.1,"I"],align=ABOVE): g:=point([xI,yI],color=red),point([xA,yA],color=red); if(((xI-xA)^2+(yI-yA)^2) < (r^2)) then print(" Duong tron C1 khong co tiep tuyen nao di qua A"); plots[display](C1,A,I,g,scaling=constrained); elif(((xI-xA)^2+(yI-yA)^2) = (r^2)) then print(" Tiep tuyen cua C1 di qua A la:"): if(yI=yA) then t1:=line([xA,yI-r], [xA,yI+r], color=red, linestyle=5): printf("\nx = %3.2f", xA); else t1:=plot(yA-(xI-xA)*(x-xA)/(yI-yA),x=-a a, linestyle=[DASH], color=(red)): f:=simplify(yA-(xI-xA)*(x-xA)/(yI-yA)); printf("\ny = %a",f); fi; plots[display](C1,A,I,t1,g,scaling=constrained); else ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN Bài toán tiếp tuyến đường tròn ========================================================== print(" Tiep tuyen cua C1 di qua A la:"): f:=((k*(xI-xA)+yA-yI)^2=r*(1+k^2)); if(abs(xI-xA)=r) then k1:= fsolve(f,k): f1:=simplify(k1*(x-xA)+yA); t1:=plot(k1*x-(k1*xA-yA),x=-a a,linestyle=[DASH], color=(red)): t2:=line([xA,yI-r], [xA,yI+r], color=red, linestyle=5): printf("\nx = %3.2f", xA); printf("\ny = %a",f1); else vk:= fsolve(f,k): k1:= vk[1]; k2:= vk[2]; f1:=simplify(k1*(x-xA)+yA); f2:=simplify(k2*(x-xA)+yA); t1:=plot(k1*x-(k1*xA-yA),x=-a a, linestyle=[DASH], color=(red)): t2:=plot(k2*x-(k2*xA-yA),x=-a a,linestyle=[DASH], color=(red)): printf("\ny = %a",f1); printf("\ny = %a",f2); fi; plots[display](C1,A,I,t1,t2,g,scaling=constrained); fi; end: ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN 10 Bài toán tiếp tuyến đường tròn ========================================================== 2.Bài toán tìm tiếp tuyến chung hai đường tròn: Cho đường tròn (C1) tâm A(0,0) bán kính a đường tròn (C2) tâm B(e,0) bán kính b Tìm tiếp tuyến chung (C1) (C2) -Đầu vào : a: bán kính đường tròn (C1) tâm A(0,0) e: hoành độ tâm B đường tròn (C2) b: bán kính đường tròn C2 tâm B(e,0) -Đầu ra: phương trình tiếp tuyến chung (C1) (C2), vẽ hình Chú thích : -Tiếp tuyến chéo: tiếp tuyến chung đường tròn mà làm cho tâm đường tròn nằm khác phía với qua tiếp tuyến Ví dụ: Hai đường tròn có chung tiếp tuyến chéo chúng rời hoàn toàn -Tiếp tuyến ngoài: tiếp tuyến làm cho tâm đường tròn nằm phía với qua tiếp tuyến Ví dụ: ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN 14 Bài toán tiếp tuyến đường tròn ========================================================== -Hai đường tròn có chung tiếp tuyến trừ chúng chứa ( tiếp tuyến chung) Thuật toán: a/ Bài toán tìm tiếp tuyến chéo: - Nếu (C1) (C2) nằm nhau, tức (a-b)>e (b-a)>e đường tròn tiếp tuyến chung Suy tiếp tuyến chéo - Nếu (C1) (C2) rời hoàn toàn (C1) (C2) có tiếp tuyến chéo Giả sử X(x,0) giao điểm tiếp tuyến trục Ox ta có : x0 a k= ae −a + b+a 2 + Thay k vào phương trình (P) phương trình tiếp tuyến cần tìm + Tiếp tuyến thứ đối xứng với (P) qua Ox có phương trình y = -kx+ku(a,b,e) CODE: >restart: with(geometry): with(plottools): tieptuyencheo:=proc(a,b,e) local f,k,u1,vk1,k1,t1,C1,C2,L1,L2; C1:=circle([0,0],a,color=blue): C2:=circle([e,0],b,color=blue): if((a+b)0)then f:=(k*u1/sqrt(1+k^2)=a); vk1:= fsolve(%,k): k1:=simplify(op(select(i->sign(i)>0,[%]))): t1:=simplify(k1*x-k1*u1); printf("y = %a, \ny = %a",t1,-t1); L1:=plot(k1*x-k1*u1,x=(-a) (e+b),linestyle=[DASH], color=(red)): L2:=plot(-k1*x+k1*u1,x=(-a) (e+b),linestyle=[DASH], color=(red)): elif(u1sign(i)>0,[%]))): t1:=simplify(k1*x-k1*u1); ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN 16 Bài toán tiếp tuyến đường tròn ========================================================== printf("y = %a, \ny = %a",t1,-t1); L1:=plot(k1*x-k1*u1,x=(e-b) (a),linestyle=[DASH], color=(red)): L2:=plot(-k1*x+k1*u1,x=(e-b) (a),linestyle=[DASH], color=(red)): fi; plots[display](C1,C2,L1,L2,scaling=constrained); elif(a+b=abs(e)) then print("phuong trinh tiep tuyen cheo la:"); if(e>0) then printf("x = %3.2f",a); L1:=line([a,a], [a,-a], color=red, linestyle=5): else printf("x = %3.2f",-a); L1:=line([-a,a], [-a,-a], color=red, linestyle=5): fi; plots[display](C1,C2,L1,scaling=constrained); else print(" hai duong tron khong co chung tiep tuyen cheo"); fi; end; Ví dụ: > tieptuyencheo(2,1,-3); "phuong trình tiep tuyen cheo la:" x = -2.00 ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN 17 Bài toán tiếp tuyến đường tròn ========================================================== > tieptuyencheo(2,1,-4); "phuong trinh tiep tuyen cheo chung la:" y = 1.133893419*x+3.023715784 y = -1.133893419*x-3.023715784 > tieptuyencheo(2,1,3); "phuong trình tiep tuyen cheo la:" x = 2.00 ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN 18 Bài toán tiếp tuyến đường tròn ========================================================== > tieptuyencheo(2,1,4); "phuong trinh tiep tuyen cheo chung la:" y = 1.133893419*x-3.023715784, y = -1.133893419*x+3.023715784 b/ Bài toán toán tìm tiếp tuyến ngoài: - Nếu (C1) (C2) chứa nhau, tức a − b > e đường tròn tiếp tuyến chung Suy tiếp tuyến - Nếu (C1) (C2) tiếp xúc trong, tức a − b = e (C1) (C2) có tiếp tuyến chung x = a (nếu e>0) x = -a (nếu ee k = a −a + ae a+b x a = x−e b ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN 19 Bài toán tiếp tuyến đường tròn ========================================================== + Biến đổi x theo a,b,e ta : Đặt u ( a, b, e ) = x= ae a −b ae a −b + Gọi (P) tiếp tuyến chéo (C1) (C2) Phương trình (P) có dạng : y = k.x-k.u(a,b,e) + Khoảng cách từ A(0,0) đến (P) : kae a −b k +1 =a + Giải phương trình với điều kiện k>0 a k= ae −a + a+b + Thay k vào phương trình (P) phương trình tiếp tuyến cần tìm + Tiếp tuyến thứ đối xứng với (P) qua Ox có phương trình y = -kx+ku(a,b,e) CODE: >restart: with(geometry): with(plottools): tieptuyenngoai:=proc(a,b,e) local k2,u1,vk1,k1,t1,C1,C2,L1,L2,A,f; C1:=circle([0,0],a,color=blue): C2:=circle([e,0],b,color=blue): if(abs(a-b)>abs(e)) then # truong hop chua print("2 duong tron khong co tiep tuyen chung"); else print("phuong trinh tiep tuyen chung la:"); if((a-b)=e) then # truong hop tiep xuc phia x>0 printf("x = %3.2f",a); L1:=line([a,2], [a,-2], color=red, linestyle=5): plots[display](C1,C2,L1,scaling=constrained); elif((b-a)=e) then # truong hop tiep xuc phia x0) then L1:=line([-a,a], [e+a,a], color=red, linestyle=5): L2:=line([-a,-a], [e+a,-a], color=red, linestyle=5): else L1:=line([e-a,a], [a,a], color=red, linestyle=5): L2:=line([e-a,-a], [a,-a], color=red, linestyle=5): fi; plots[display](C1,C2,L1,L2,scaling=constrained); else u1:=a*e/(a-b): if(u1>0) then f:=(k*u1/sqrt(1+k^2)=a); vk1:= fsolve(%,k): k1:=simplify(op(select(i->sign(i)>0,[%]))): t1:=simplify(k1*x-k1*u1); printf("y = %a, \ny = %a",t1,-t1); if(e>0) then L1:= plot(k1*x-k1*u1,x=(a) (e+b),linestyle=[DASH], color=(red)): L2:=plot(-k1*x+k1*u1,x=(-a) (e+b),linestyle=[DASH], color=(red)): else L1:= plot(k1*x-k1*u1, x=(e-a) (b),linestyle=[DASH], color=(red)): L2:=plot(-k1*x+k1*u1,x=(e-a) (b),linestyle=[DASH], color=(red)): fi; plots[display](C1,C2,L1,L2,scaling=constrained); elif(u1sign(i)>0,[%]))): t1:=simplify(k1*x-k1*u1); printf("y = %a, \ny = %a",t1,-t1); if(e>0) then L1:=plot(k1*x-k1*u1,x=(-a) (e+b),linestyle=[DASH], color=(red)): L2:=plot(-k1*x+k1*u1,x=(-a) (e+b),linestyle=[DASH], color=(red)): else L1:=plot(k1*x-k1*u1,x=(e-a) (b),linestyle=[DASH], color=(red)): L2:=plot(-k1*x+k1*u1,x=(e-a) (b), linestyle=[DASH], color=(red)): fi; plots[display](C1,C2,L1,L2,scaling=constrained); fi; fi; fi; end; Ví dụ: > tieptuyenngoai(1,1,-3); "phuong trinh tiep tuyen chung la:" y = 1.00, y = -1.00 ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN 22 Bài toán tiếp tuyến đường tròn ========================================================== > tieptuyenngoai(1,1,3); "phuong trinh tiep tuyen chung la:" y = 1.00, y = -1.00 > tieptuyenngoai(3,1,2); "phuong trinh tiep tuyen chung la:" x = 3.00 ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN 23 Bài toán tiếp tuyến đường tròn ========================================================== > tieptuyenngoai(2,1,-1); "phuong trinh tiep tuyen chung la:" x = -2.00 > tieptuyenngoai(2,1,2); "phuong trinh tiep tuyen chung la:" y = 5773502692*x-2.309401077, y = -.5773502692*x+2.309401077 ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN 24 Bài toán tiếp tuyến đường tròn ========================================================== > tieptuyenngoai(2,1,3); "phuong trinh tiep tuyen chung la:" y = 3535533906*x-2.121320344, y = -.3535533906*x+2.121320344 > tieptuyenngoai(2,1,-3); "phuong trinh tiep tuyen chung la:" y = 3535533906*x+2.121320344, y = -.3535533906*x-2.121320344 ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN 25 Bài toán tiếp tuyến đường tròn ========================================================== PHẦN III: ĐÁNH GIÁ KẾT QUẢ THU ĐƯỢC Ưu điểm: Chương trình đáp ứng đủ yêu cầu toán, có hình minh họa trực quan sinh động Nhược điểm : -Đối với đầu vào số liệu lẻ lớn chương trình chưa đưa kết xác việc làm tròn số trình tính toán -Riêng toán tìm tiếp tuyến chung hai đường tròn, áp dụng cho trường hợp đường tròn có tâm trùng gốc tọa độ, đường tròn thứ có tâm thuộc trục hoành Muốn mở rộng toán cho hai đường tròn ta phải dùng thêm phép tịnh tiến phép quay ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN 26 Bài toán tiếp tuyến đường tròn ========================================================== PHẦN IV: KẾT LUÂN Các chương trình báo cáo giải yêu cầu toán đặt ra, làm rõ phần mạnh Maple việc hỗ trợ tính toán, đặc biệt ứng dụng môn toán học Từ hình vẽ việc tính toán theo thuật toán ta thấy kết chương trình có độ xác mức chấp nhận Do trình độ kinh nghiệm hạn chế nên luận chúng em tránh khỏi nhiều sai sót, chúng em mong nhận y kiến đánh giá đóng góp thầy bạn để viết hoàn thiện Em xin trân thành cảm ơn thầy Hà Nội, ngày 24 tháng 11 năm 2009 Sinh viên: Đỗ Phương Liên Nguyễn Thị Cúc ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN 27 Bài toán tiếp tuyến đường tròn ========================================================== Tài liệu tham khảo 1.Bài giảng môn Maple ( PGS, TS Nguyễn Hữu Điển) 2.Sách Hình học giải tích 11 ( Bộ giáo dục đào tạo) 3.Giáo trình Maple ( Nguyễn Ngọc Trung- Đại học Sư phạm TP Hồ Chí Minh) 4.Sử dụng Maple để dạy, học toán môi trường tương tác ( Nguyễn Chánh Tú – Khoa Toán – ĐH Sư phạm Huế) http://vi.wikipedia.org/wiki/Maple 6.Một số tài liệu internet (không rõ tác giả) ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin - K51 - ĐHBKHN 28 [...]... tiếp tuyến chung của hai đường tròn: Cho đường tròn (C1) tâm A(0,0) bán kính a và đường tròn (C2) tâm B(e,0) bán kính b Tìm tiếp tuyến chung của (C1) và (C2) -Đầu vào : a: bán kính đường tròn (C1) tâm A(0,0) e: hoành độ tâm B của đường tròn (C2) b: bán kính đường tròn C2 tâm B(e,0) -Đầu ra: phương trình tiếp tuyến chung của (C1) và (C2), vẽ hình Chú thích : -Tiếp tuyến chéo: là tiếp tuyến chung của 2 đường. .. K51 - ĐHBKHN 14 Bài toán tiếp tuyến của đường tròn ========================================================== -Hai đường tròn bất kỳ đều có chung tiếp tuyến ngoài trừ khi chúng chứa nhau ( không có tiếp tuyến chung) Thuật toán: a/ Bài toán tìm tiếp tuyến chéo: - Nếu (C1) và (C2) nằm trong nhau, tức (a-b)>e hoặc (b-a)>e thì 2 đường tròn này không có tiếp tuyến chung Suy ra không có tiếp tuyến chéo - Nếu... Lớp Toán Tin 2 - K51 - ĐHBKHN 12 Bài toán tiếp tuyến của đường tròn ========================================================== ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin 2 - K51 - ĐHBKHN 13 Bài toán tiếp tuyến của đường tròn ========================================================== 2 .Bài toán tìm tiếp. .. đường tròn mà làm cho tâm 2 đường tròn nằm khác phía với nhau qua tiếp tuyến đó Ví dụ: Hai đường tròn chỉ có chung tiếp tuyến chéo khi chúng rời nhau hoàn toàn -Tiếp tuyến ngoài: là tiếp tuyến làm cho tâm 2 đường tròn nằm cùng phía với nhau qua tiếp tuyến đó Ví dụ: ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán. .. Lớp Toán Tin 2 - K51 - ĐHBKHN 18 Bài toán tiếp tuyến của đường tròn ========================================================== > tieptuyencheo(2,1,4); "phuong trinh tiep tuyen cheo chung la:" y = 1.133893419*x-3.023715784, y = -1.133893419*x+3.023715784 b/ Bài toán toán tìm tiếp tuyến ngoài: - Nếu (C1) và (C2) chứa nhau, tức a − b > e thì 2 đường tròn này không có tiếp tuyến chung Suy ra không có tiếp. .. thì chương trình chưa đưa ra được kết quả chính xác do việc làm tròn số trong quá trình tính toán -Riêng trong bài toán tìm tiếp tuyến chung của hai đường tròn, mới chỉ áp dụng được cho trường hợp 1 đường tròn có tâm trùng gốc tọa độ, đường tròn thứ 2 có tâm thuộc trục hoành Muốn mở rộng bài toán cho hai đường tròn bất kỳ ta phải dùng thêm phép tịnh tiến và phép quay ==========================================================... Thị Cúc Lớp Toán Tin 2 - K51 - ĐHBKHN 26 Bài toán tiếp tuyến của đường tròn ========================================================== PHẦN IV: KẾT LUÂN Các chương trình trong báo cáo đã giải quyết được hầu như mọi yêu cầu của bài toán đặt ra, làm rõ được phần nào thế mạnh của Maple trong việc hỗ trợ tính toán, đặc biệt là ứng dụng trong môn toán học Từ hình vẽ và việc tính toán theo thuật toán ta thấy... Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin 2 - K51 - ĐHBKHN 15 Bài toán tiếp tuyến của đường tròn ========================================================== kae a+b k 2 +1 =a + Giải phương trình trên với điều kiện k>0 được a k= ae −a + b+a 2 2 + Thay k vào phương trình (P) được 1 phương trình tiếp tuyến cần tìm + Tiếp tuyến thứ 2 đối xứng với (P) qua Ox và có phương trình là... Nguyễn Thị Cúc Lớp Toán Tin 2 - K51 - ĐHBKHN 25 Bài toán tiếp tuyến của đường tròn ========================================================== PHẦN III: ĐÁNH GIÁ KẾT QUẢ THU ĐƯỢC Ưu điểm: Chương trình đã đáp ứng đủ yêu cầu của bài toán, có hình minh họa trực quan sinh động Nhược điểm : -Đối với đầu vào là các số liệu lẻ và lớn thì chương trình chưa đưa ra được kết quả chính xác do việc làm tròn số trong... ========================================================== Giảng viên : Nguyễn Hữu Điển Sinh viên : Đỗ Phương Liên – Nguyễn Thị Cúc Lớp Toán Tin 2 - K51 - ĐHBKHN 19 Bài toán tiếp tuyến của đường tròn ========================================================== + Biến đổi x theo a,b,e ta được : Đặt u ( a, b, e ) = x= ae a −b ae a −b + Gọi (P) là tiếp tuyến chéo của (C1) và (C2) Phương trình (P) có dạng : y = k.x-k.u(a,b,e) + Khoảng cách từ A(0,0) đến