CƠ SỞ LÝ LUẬN
C. Form hàm hữu tỉ loại 1
— ( c #0,ad-bcz 0)
1c. Tống quát :
- Hàm số có miền xác định : D = R\ {-d/c}.
- Hàm số suy biến khi ad - be = 0, c=0.
- Hàm số có tiệm cận đứng: x = -d/c.
- Tiệm cận ngang y = a/c.
Giao diện của hàm hữu tỉ loại này:
SVTH : Lê Văn Doan Trang 70
2c. Cơ sở lý luận :
Chúng ta đi vào phân tích hoạt động của mỗi nút và cơ chế xử lý của chúng. Ở đây thực sự thì chúng ta chỉ cần quan tâm tới 2 nút đó là
nút _wm_ và nút “TẠO MỚI. :
Nut VE2D:
Khi người dùng nhập dữ kiện vào các textbox có 2 trường hợp xảy
ra:
- Trường hợp người dùng nhập sai hoặc thiếu dữ kiện, sẽ có các MessageBox xuất hiện đẻ thông báo lỗi:
* Với thông báo lỗi:
SVTH : Lê Văn Doan Trang 71
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
PrðjECTT1
là do người dùng nhập mà ad — be = 0 hoặc c = 0, code xử lý lỗi này
như sau:
Ifc = 0 Or DD = 0 Then
MsgBox " Xin hay nhap lai,vi day la ham huu ti (c#0 va a*d-b*c # 0) P1", vbOKOnly
Cls
hsa.SetFocus hsa.Text = ""
hsb.Text = ""
hse.Text = ””
hsd.Text = ""
dothi. Visible = False
Ibybang.Caption = ""
Ibtuy.Caption = ""
lbmauy.Caption = ""
Ibyphaybang.Caption = ""
Ibtuyphay.Caption = ""
Ibmauyphay.Caption = ""
lbdauyphay.Caption = ""
lbmu2yphay.Caption = ”"
lbdongnghichbien.Caption = “”
lIblimdungl.Capuon = ""
Iblimdung2.Caption = ""
SVTH : Lé Van Doan Trang 72
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
Ibxdung!.Caption = `”
Ibxdung2.Caption = '
Ibdauamdung.Caption = '
lbdauduongdung.Caption = ""
Iblimngang.Caption = ""
Ibxngang.Caption = ””
Ibsuyradung.Caption = ' Ibmxd.Caption = we
Ibtiemcandungx.Caption = ""
Ibdaul.Caption = ""
Ibdau2.Caption = ""
lbtcngangyl 1.Caption = ""
Ibtengangy12.Caption = ""
Ibvocung11.Caption = Ibvocung12.Caption =
lbvocung21.Caption = ""
lbvocung22.Caption = ""
Ibtcngangy21.Caption = ""
Ibtcngangy22.Caption = ""
Else
// Phần này xử lý nếu thoả điều kiện trên.
End If
* Với thông báo lỗi:
Projecti
Báo lỗi, do cé hé số a lđn hơn 10
SVTH : Lê Văn Doan Trang 73
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
Do người dùng nhập hệ số quá giới hạn mà chương trình cho
phép (a,b,c,d >10 ), xử lý lỗi này cũng tương tự như trên, nhưng nó
được lồng vào phần Else của lỗi trên.
Hai xử lý lỗi này khi người dùng bam Ok thì chương trình sẽ xoá toàn bộ: Xử lý code cho biệt lệ này cũng tương tự như các hàm số trước là đặt các dữ kiện mà người dùng nhập vào và các dit kiện không can thiết ân đi, con trỏ về vị trí hệ SỐ a bang câu lệnh:
has.setFocus
- Trường hợp người dùng nhập đúng: Chương trình sẽ xử lý ở phần
Else của biệt lệ lỗi do a, b, c, d > 10:
Đầu tiên là đoạn code dành cho người ding khảo sát xong hàm nào đó muốn khảo sát hàm khác mà có một số dit kiện giống với hàm
trước và thực thi chương trình:
Xoá đường thăng, và đặt các label không cần thiết băng trống (cho an di):
Cls
dothi. Visible = True
Ibtcngangy!1.Caption = ""
Ibtecngangy12.Caption = ""
Ibyocung!1.Caption = we
Ibvocung12.Caption = Ibvocung21.Caption =
Ibvocung22.Caption = ""
Ibtcngangy21.Caption = ""
Ibtcngangy22.Caption = ""
“Tiếp theo bat dau phân khảo sat:
strDD = format(DD, "0.00")
SVTH : Lé Van Doan Trang 74
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
§trcx = format(c, " #x")
‘Xuat chuỗi y =, xuất tử va đường thang nằm đưới tử ra man hình:
strax = format(a, "#x") strb = format(b, "#)")
Ibybang.Caption = “y="
Ibtuy.Caption = strax & "+ (" & strb
Line (9000, 480)-( 10200, 480), &H80000018
‘Xuat ra màn hình chuỗi y` =, tử, mũ bình phương của mau và đường thăng nằm dưới tử của hàm vừa nhập vào:
lbyphaybang.Caption = "y'="
Ibtuyphay.Caption = strDD Ibmu2yphay.Caption = "2"
Line (7200, 2280)-(8400, 2280), &H80000018
strtcdung = format(-d / c, "0.00") strtcngang = format(a / c, "0.00")
“Xuất ra miền xác định:
lbmxd.Caption = "D= R\{" & strtcdung & " }"
“Xét d dé xuất ra mau của y và y’:
Ifd<> 0 Then
strd = format(d, "#)”)
Ibmauyphay.Caption = "(" & strex & "+ (" & strd & ")"
Ibmauy.Caption = lbmauyphay Else
Ibmauyphay.Caption = "(" & strex & ")”
Ibmauy.Caption = Ibmauyphay End If
°Xét dau của y’ va lập bảng biến thiên:
SVTH : Lê Văn Doan Trang 75
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
If DD > 0 Then
‘Xuat ra chuỗi xét tinh đồng biến nghịch biến của ham số:
lbdauyphay.Caption = "> 0=> ”
Ibdongnghichbien.Caption = "=> Dong bien trong (-oo,” &
strtcdung & ”) va (” & strtcdung & ",+00)"
'Lập bảng biến thiên:
Ibdaul.Caption = "+"
Ibdau2.Caption = "+"
Ibtiemcandungx.Caption = strtcdung Ibtengangy12.Caption = strtcngang Ibtcngangy21.Caption = strtcngang Ibvocung!1.Caption = "+00"
lbvocung22.Caption = "-oo”
‘Line (9720, 5400)-(9720, 6960)
‘Line (9840, 5400)-(9840, 6960)
Line (8160, 6720)-(9240, 6240), &H80000018
Line (10440, 6720)-(11400, 6240), &H80000018
‘Néu d < 0 cũng tương tự ta xét tinh đồng biến, nghịch biến và tim lập bảng biến thiên:
Else
°Xét đồng biến, nghịch biến:
Ibdauyphay.Caption = "< 0=> "
lbdongnghichbien.Capton = "=> Nghịch bien trong (-oo.” &
strtcdung & ") va (” & strtcdung & ”,+oo)”
‘Lap bảng biến thiên:
SVTH : Lê Văn Doan Trang 76
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
ẺŠẰẰẤ`Ò<== —=—————._____________________ÊŸ
Ibdaul.Caption = "-"
Ibdau2.Caption = "-"
Ibtiemcandungx.Caption = strtcdung Ibtcngangy1 1.Caption = strtcngang
lbtcngangy22.Caption = strtcngang Ibvocung12.Caption = "-oo”
Ibvocung21.Caption = "+00"
‘Line (9720, 5400)-(9720, 6960)
‘Line (9840, 5400)-(9840, 6960)
Line (8160, 6120)-(9240, 6720), &H80000018
Line (10320, 6120)-(11400, 6720), &H80000018 End If
‘Tim tiệm cận của dé thị:
Iblimdung!.Caption = "Lm y= +00 ;"
Ibxdung1.Caption = "x-> " & strtcdung Ibdauamdung.Caption = ”-
Iblimdung2.Caption = "Lim y= -00; =>"
Ibxdung2.Caption = "x-> ” & stricdung Ibdauduongdung.Caption = "+"
Ibsuyradung.Caption = "=> Duong thang x= " & strtcdung & " la tiem can dung "
Iblimngang.Caption = "Lim y = " & strtcngang & " => Duong thang y=" & strtcngang & " la tiem can ngang”
Ibxngang.Caption = "x-> 00"
Đoạn code trên đây đã xong phan khảo sát của hàm hữu ti loại 1, để vẽ hàm số loại này chúng ta theo đõi đoạn code sau:
DirLen = GetTempPath(256, temppath(0))
SVTH : Lé Van Doan Trang 77
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
If DirLen <> 0 Then
TempFile = "dothi.gif”
‘TempFile = Left(StrConv(temppath(), vbUnicode), DirLen) &
“plot” & Int(Rnd(Q) * 10) & ".gif"
End If
Call EvalMapleStatement(kv, “”plotsetupCgif,plotoutput=`” + TempFile + "*,plotoptions=*colour=3,width=340,height=280°);")
‘Tao ra chuỗi s hàm số dé đưa vào làm đối số của ham plot trong
OpenMaple:
s= "((" & hsa.Text & ")*x + (" & hsb.Text & "))V/(C" & hsc.Text &
")#x + (" & hsd.Text & "))"
‘Day là đoạn tìm giới hạn hoành độ. tung độ cho đồ thi, ở đây em dựa
vảo tiệm cận đứng va tiệm cận ngang:
xduoi = CStr(-d /c - 10) xtren = CStr(-d/c + 10) yduoi = CStr(a /c - 10) ytren = CStr(a /c + 10)
“Cú pháp dé vẽ dé thi:
r = EvalMapleStatement(kv, "plot(" & s & ", x=(" & xduoi & ")..(" &
xren & "), y=(" & yduoi & ”).(” & ytren & ")color=” &
danhsachcolor.Text & ");") Ifr <> 0 Then
dothi.Picture = LoadPicture(TempF ile) End If
PlotFileName = TempFile
Í 1a như vay. với n BH
chúng ta cũng xử lý tương tự như thế, chỉ khác một chút là trong phần Phần xử lý của nút
SVTH : Lê Văn Doan Trang 78
Chương THỊ : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
vẽ đô thị thay vì cú pháp vẽ như ở trên, chúng ta sẽ dùng cú pháp vẽ cho không gian 3 chiều:
r = EvalMapleStatement(kv, "plot3d(" & s & ”, x=(" & xduoi &
”).('Ô & xtren & ”) y=(" & yduoi & ").( & ytren &
"),axes=normal,color=" & danhsachcolor.Text & ");")
Sau day là hình ảnh của 2 trường hợp này khi người dùng nhập
một hàm hữu tỉ loại 1 dé khảo sát và vẽ:
SVTH : Lê Văn Doan Trang 79
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
4. Bing biến thiền :
Hình đồ thị trong không gian 3 chiéw Oxyz (3-D).
Nút TẠO MỚI :
Dé khảo sát và vẽ một hàm khác, người dùng sẽ bam vào nút
_ TẠO MồI trên form này, chương trình sẽ “làm sạch” màn hình nghĩa
là xoá những dữ kiện trước và đặt con trỏ vào hệ số a, sau đây là code
của nó:
Cls
dothi. Visible = False
‘Dat màu mặc định cho đồ thị là blue:
danhsachcolor.Text = "blue"
“Đặt con trỏ về hệ số a:
hsa.SetFocus
SVTH : Lê Văn Doan Trang 80
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
‘Dat các textbox trồng:
hsa.Text = ""
hsb. Text = ""
hse. Text = ””
hsd.Text = ""
*Đặt các label của phan khao sat bằng trồng:
Ibybang.Caption = ””
Ibtuy.Caption = ""
lbmauy.Caption = ""
Ibyphaybang.Caption = ""
Ibtuyphay.Caption = `
Ibmauyphay.Caption = ""
Ibdauyphay.Caption = ""
lbmu2yphay.Caption = ""
Ibdongnghichbien.Caption = ""
Iblimdung1.Caption = ""
Iblimdung2.Caption = ""
Ibxdung!.Caption = 'wrt
Ibxdung2.Capuion = 'Hải
Ibdauamdung.Caption = ""
Ibdauduongdung.Caption = ""
Iblimngang.Caption = ""
lbxngang.Caption = ""
Ibsuyradung.Caption = ""
lbmxd.Caption = ""
Ibtiemcandungx.Caption =
Ibdaul.Caption = ””
SVTH : Lé Van Doan Trang 81
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
Ibdau2.Caption = ""
lbtcngangyl 1 .Caption = ""
lbtcngangy12.Caption = ""
lbvocung1 1.Caption =
Ibvocung12.Caption = ' Ibvocung21.Caption = Ibvocung22.Caption = '
Ibtcngangy21.Caption = ""
lbtcngangy22.Caption = ""
Nhu vay phan cơ sở lý luận cho ham hữu ti loại 1 đã được trình bày cụ thé ở trên bao gồm việc giải thích xử lý các đối tượng (Object)
a. 6 p ` ‘ À F Lops a ow
trên form, ví dụ hình ảnh về các dang của do thị loại này.
D. Form hàm hữu tỉ loại 2:
ax? + bz+(C
te (c#O ade 0)
1d. Tổng quát:
- Hàm hữu tỉ loại 2 có miễn xác định D = R\ {-e/d).
Có tiệm cận đứng x = -e/d.
- Tiệm cận xiên y = kx +n.
- Hàm số suy biến khi và ad =0.
- _ Giao điện của hàm này được thê hiện qua hình sau :
SVTH : Lê Văn Doan Trang 82
Form nay gồm tat cả là 5 textbox tương ứng với 5 hệ số của hàm:
a, b,c trên tử vad, e ở dưới mẫu, một combobox màu, một picturebox
dé chứa đồ thi, 4 nút điều khién và các label, đường thăng cần thiết cho
việc khảo sát.
2d. Cỡ sở lý luận:
Người dùng muốn khảo sát và vẽ một hàm số hữu tỉ loại 2 bằng
cách nhập dữ kiện vào trong các textbox của chương trình. Có 2 trường
hợp xảy ra khi người dùng thực thi chương trình bằng cách nhấn Enter khi con trỏ còn ở các textbox điều này cũng tương đương với việc
người đùng dùng chuột click lên nút yep ,
- Trường hợp 1: Dữ kiện nhập vào không hợp lệ, xảy ra do người
dùng nhập sai với điều kiện của hàm số mà chương trình quy định
SVTH : Lê Văn Doan Trang 83
Chương IIL: Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
JE========——ễ
chang hạn như người dùng nhập vào textbox các hệ số mà a (c - ((e (b d - ae)) / (dd))) = 0 nên đồ thị suy biến và hộp thông báo lỗi xuất hiện:
Xin nhập lại do ađ=ệ
và cudi cùng nếu người ding nhập các hệ số mà một trong chúng có giá trị lớn hơn 10 theo giới hạn của chương trình, hộp thông báo lỗi sẽ xuất
hiện:
Project?
Báo lỗi, de có hé số aldn hơn 10
với code như sau;
Ifa * d= 0 Then
MsgBox "Xin nhap lai, do khong hop le”, vbOKOnly
‘Cho ân PictureBox dothi đặt con trỏ ở textbox hệ SỐ a:
dothi. Visible = False hsa.SetFocus
SVTH : Lé Van Doan Trang 84
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
“Đặt các textbox hệ số và các label không cần thiết bang trồng:
hsa.Text = ””
hsb. Text = ""
hse. Text = ""
hsd.Text = ""
hse.Text = ""
Ibybang.Caption = ””
Ibtuy.Caption = ""
Ibmauy.Caption = ""
lbmxd.Caption = ""
lbyphaybang.Caption = ""
Ibtuyphay.Caption = ""
Ibmauyphay.Caption =
lbyphaybango.Caption = lbnghiemI .Caption = ””
lbnghiem2.Caption = ””
lbmu2yphay.Caption = ""
Iblimdung!.Caption = ""
Iblimdung2.Caption = ""
Ibdauamdung.Caption = ””
Ibdauduongdung.Caption = ""
Ibxdung!.Caption = ` Ibxdung2.Caption = “"
Ibsuyradung.Caption = ””
Ibtcxien! Caption = ""
Ibtcxien2.Caption = ""
lbtcxien3.Caption = ""
Ibtcxienlim1.Caption = ""
SVTH : Lé Van Doan Trang 85
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
Ibtcxienlim2.Caption = ""
Ibsuyraxien.Caption = ""t Ibx1.Caption = ""
Ibx2.Caption = ""
Ibted.Caption = ” Ibdaul.Caption = '
Ibdau2.Caption = ` lbdau3.Caption = ””
lbdau4.Caption = ” Ibol.Caption = ""
lbo2.Caption = ""
Ibduongy!.Caption = `Hài
Ibduongy2.Caption = '
Ibduongy3.Caption = ”Hài
Ibduongy4.Caption = ””
Ibamy1.Caption = ""
Ibamy2.Caption = ""
Ibamy3.Caption = ""
Ibamy4.Caption = ""
Ibyl I.Caption = ""
Iby12.Caption = ""
Iby21.Caption = ""
Iby22.Caption = ""
“Nếu ad # 0 thì tiếp tục tính biéu thức sb dé xét xem đồ thị có Suy biến
hay không ? Else
§b= a *(c-((e*(b*d-a*e))/(d *# d)))
SVTH : Lê Văn Doan Trang 86
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
strsuybien = format(sb, "0.00") Acd = val(strsuybien)
‘Néu biéu thức sb = 0 thì đồ thị suy biến tat cả các xử lý trong phan này tương tự như trong phần ad=0:
If Acd = 0 Then
MsgBox " Do thi suy bien, xin hay nhap lai ", voOKOnly dothi. Visible = False
hsa.SetFocus hsa.Text = ""
hsb. Text = ""
hse. Text = ""
hsd.Text = ""
hse.Text = ""
Ibybang.Caption = ' Ibtuy.Caption = ""
lbmauy.Caption = ""
lbmxd.Caption = ""
Ibyphaybang.Caption = Ibtuyphay.Caption = ""
lbmauyphay.Caption = ""
Ibyphaybango.Caption = we
lbnghiemI .Caption = ””
lbnghiem2.Caption = ””
lbmu2yphay.Caption = ”"
Iblimdungl.Caption = ””
Iblimdung2.Caption = ””
Ibdauamdung.Caption = `
Ibdauduongdung.Caption = ""
SVTH : Lé Van Doan Trang 87
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
Ibxdung1.Caption = '”
lbxdung2.Caption = '
lbsuyradung.Caption = ` lbtcxien 1 .Caption = ""
Ibtcxien2.Caption = ""
Ibtcxien3.Caption = "”
lbtcxienliml .Caption = ””
Ibtcxienlim2.Caption = ""
lbsuyraxien.Caption = ""
Ibx1.Caption = ""
Ibx2.Caption = ""
Ibtcd.Caption = `
Ibdaul Caption = '
Ibdau2.Caption = ' Ibdau3.Caption = ””
Ibdau4.Caption = ""
Ibol.Caption = ""
Ibo2.Caption = ””
Ibduongy!.Caption = 'wt
Ibduongy2.Caption = ””
Ibduongy3.Caption = ' Ibduongy4.Caption = ""
Ibamy1.Caption = ""
lbamy2.Caption = ""
Ibamy3.Caption = ""
Ibamy4.Caption = ""
Ibyl I.Caption = `
Iby12.Caption = ""
SVTH : Lé Van Doan Trang 88
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
Iby21.Caption = ""
Iby22.Caption = ""
‘Néu thoả ad # 0, sb # 0 thì thực hiện đoạn code bên dưới:
Else
“Nếu giá trị tuyệt đối của a, b, c, đ, e lớn hơn 10 thì xuất hộp thông báo lỗi sau đó code trong đoạn này xử lý giống như hai trường hợp trên:
If Abs(a) > 10 Or Abs(b) > 10 Or Abs(c) > 10 Or Abs(d) > 10 Or
Abs(e) > 10 Then
MsgBox " Do mot trong cac he so > 10", vbOKOnly dothi. Visible = False
hsa.SetFocus
hsa.Text = ""
hsb.Text = ""
hse.Text = ""
hsd.Text = ""
hse. Text = "”
Ibybang.Caption = "”
Ibtuy.Caption = '
lbmauy.Caption = ""
Ibmxd.Caption =
Ibyphaybang.Caption = Ibtuyphay.Caption = ""
lbmauyphay.Caption = we
lbyphaybango.Caption = we
lbnghieml .Caption = * Ibnghiem2.Caption = ' Ibmu2yphay.Caption =
Iblimdung!.Caption = ””
SVTH : Lé Van Doan Trang 89
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
Iblimdung2.Caption = ””
Ibdauamdung.Caption = ””
lbdauduongdung.Caption = ""
Ibxdung1.Caption = ””
Ibxdung2.Caption = ""
Ibsuyradung-Caption = ""
Ibtcxien! Caption = ""
lbtcxien2.Caption = ""
lbtcxien3.Caption = ""
lbtcxienlimi .Caption = ""
Ibtcxienlim2.Caption = ""
Ibsuyraxien.Caption = ""
Ibx1.Caption = ""
Ibx2.Caption = ""
Ibted.Caption = ””
Ibdaul.Caption = ””
lbdau2.Caption = “"
Ibdau3.Caption = ""
Ibdau4.Caption = ""
Ibo] .Caption = ””
Ibo2.Caption = ””
Ibduongy!.Caption = ””
Ibduongy2.Caption = ""
Ibduongy3.Caption = ""
Ibduongy4.Caption = ""
Ibamy!.Caption = ""
Ibamy2.Caption = ""
Ibamy3.Caption = ""
SVTH : Lé Van Doan Trang 90
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
Ibamy4.Caption = ""
Ibyl1.Caption = ””
Iby12.Caption = "”
Iby21.Caption = "”
Iby22.Caption = '
“Nếu thoả cả 3 điều kiện trên thi bước qua đoạn code dưới đây:
Else
'Bước đầu tiên là xoá các đường thăng các label không can thiết ở hàm khảo sát trước néu có:
Cls
dothi. Visible = True
Ibnghiem| .Caption = '
lbnghiem2.Caption = ””
lbxI.Caption = ””
Ibx2.Caption = ""
lbtcd.Caption = ””
lbdaul.Caption = 'dài
Ibdau2.Caption = ” Ibdau3.Caption = ""
Ibdau4.Caption = ””
lbol.Caption = ””
lbo2.Caption = ””
lbduongyl.Caption = 'wt
Ibduongy2.Caption = ” Ibduongy3.Caption = 'Hải
Ibduongy4.Caption = '
Ibamy1.Caption = ""
SVTH : Lé Van Doan Trang 91
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
Ibamy2.Caption = ""
Ibamy3.Caption = ""
Ibamy4.Caption = ""
Iby11.Caption = ""
Iby12.Caption = ""
Iby21.Caption = ""
Iby22.Caption = ""
'Xuất ra giới hạn của các tiệm cận: Tiệm cận đứng và tiệm cận xiên:
“Tiệm cận đứng:
strtcdung = format(-e / d, "#0.00")
Iblimdung1.Caption = "Lim y = -oo”
Ibxdung!.Caption = "x->" & strtcdung Ibdauamdung.Caption = ”-”
Iblimdung2.Caption = "Lim y =+oo”
Ibxdung2.Caption = "x->" & strtcdung Ibdauduongdung.Caption = "+"
Ibsuyradung-Caption = "=> Duong thang x=" & strtcdung & " la tiem can dung”
“Tiệm cận xiên:
strxienl = format(a /d, ”0.00x")
strxien2 = format((b # d-a * e)/(d * d), "0.00")
strxien3 = format((c - (b*d-a#e) * e)/(d * d)), "0.00") strxien4 = format(d, "#x")
strxienS = format(e, "#)")
strxien6 = format(a / d, "0.00)x")
Ibtexien| Caption = ”y <=> y= " & strxien] & "+ (" & strxien2 &
") +
Ibtexien2.Caption = "(" & strxien3 & ")"
SVTH : Lé Van Doan Trang 92
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
Ibtcxien3.Caption = strxien4 & " + (" & strxlenŠ Line (8760, 4560)-(10080, 4560), &H80000018
Ibtcxienlim1.Caption = "Lim (y - (" & strxien6 & "+ (" & strxien2 &
")=0”
lbtcxienlim2.Caption = ”x->oo”
Ibsuyraxien.Caption = "=> DT y=" & strxien] & ” + (” & strxien2 &
") la tiem can xien ”
°Xuất ra hàm số hữu tỉ loại 2:
Ibybang.Caption = "y= ”
Line (8520, 480)-(10440, 480), &H80000018 Ifb <> 0 Then
Ifc <> 0 Then
Ife <> 0 Then
strax2 = format(a, "#x^2") strbx = format(b, "#)x")
strc = format(c, "#)") strdx = format(d, "#x") stre = format(e, "#)")
Ibtuy.Caption = strax2 &" + (” & strbx & "+ (" & stre Ibmauy.Caption = strdx & ” + (" & stre
Else
strax2 = format(a, "#x^2") strbx = format(b, "#)x")
strc = format(c, "#)") strdx = format(d, "#x")
Ibtuy.Caption = strax2 &" + ("& strbx & "+ (" & strc Ibmauy.Caption = strdx
End If
SVTH : Lé Van Doan Trang 93
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
'c=0 Else
Ife <> 0 Then
strax2 = format(a, "#x^2") strbx = format(b, "#)x")
strdx = format(d, "#x") stre = format(e, "#)")
Ibtuy.Caption = strax2 &" + (" & strbx Ibmauy.Caption = strdx & "+ (" & stre Else
strax2 = format(a, "#x^2") strbx = format(b, "#)x")
strdx = format(d, "#x")
Ibtuy.Caption = strax2 &" + (" & strbx Ibmauy.Caption = strdx
End If
End If
Else
If c <> 0 Then
Ife <> 0 Then
strax2 = format(a, "#x^2") stre = format(c, "#)")
strdx = format(d, "#x") stre = format(e, "#)")
Ibtuy.Caption = strax2 & "+ (" & strc
Ibmauy.Caption = strdx & " + (" & stre
SVTH : Lé Van Doan Trang 94
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
Else
strax2 = format(a, "#x^2") stre = format(c, "#)")
strdx = format(d, "#x")
Ibtuy.Caption = strax2 & "+ (" & stre Ibmauy.Caption = strdx
End If
Else
Ife <> 0 Then
strax2 = format(a, "#x^2") strdx = format(d, "#x")
stre = format(e, "#)") Ibtuy.Caption = strax2
Ibmauy.Caption = strdx & " + (" & stre Else
strax2 = format(a, "#x^2") strdx = format(d, "#x")
Ibtuy.Caption = strax2 Ibmauy.Caption = strdx
End If End If
End If
‘Ket thúc phan xuất ham y:
“Tìm nghiệm của y':
If Acd > 0 Then
SVTH : Lé Van Doan Trang 95
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
deltayphay = val(format(Sqr((a * a) * (e * e)-(a“*d) *“(b*e-c*
d)), "0,00"))
nghiemxI = ((-a * e) + deltayphay) / (a * d) nghiemX2 = ((-a * e) - deltayphay) / (a * d) strxl = format(nghiemx1, "0.00")
strx2 = format(nghiemx2, "0.00") xl = val(strxl)
x2 = val(strx2)
xImu2 = x1 * xl x2mu2 = x2 * x2
nghiemyl = (a * xlmu2 + b * xl + c)/(d * xl + e) nghiemy2 = (a * x2mu2 + b * x2 + c)/(d * x2 + c)
stryl = format(nghiemyl, "0.00") stry2 = format(nghiemy2, ”0.00”) tcdung = format(-e / d, "0.00”)
‘Tim và xuất ra miễn xác định:
Ibmxd.Caption = "D=R\{" & tcdung & "}"
Ifa * d> 0 Then
‘Xuat bang biển thiên:
lbtcd.Caption = tcdung
lbdaul .Caption = "+"
lbdau2.Caption = "-"
lbdau3.Caption = "-"
lbdau4.Caption = "+"
Ibamyl.Caption = ”-oo”
Ibduongy4.Caption = "+00"
Ibol.Caption = "0"
SVTH : Lé Van Doan Trang 96
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
lbo2.Caption = "0"
Ibamy2.Caption = "-oo”
Ibduongy3.Caption = "+00"
Line (6960, 7920)-(7920, 7320), &H80000018 Line (8040, 7320)-(9000, 7920), &H80000018 Line (9600, 7320)-(10560, 7800), &H80000018 Line (10680, 7800)-(1 1640, 7320), &H80000018
'Xét 2 nghiệm của y’ dé tìm ra cực đại, cực tiểu và xuất chúng ra:
IfxI < x2 Then
lbxI.Caption = strxI lbx2.Caption = strx2 Ibyl1.Caption = stryl Iby22.Caption = stry2
Ibnghiem1.Caption = "x_CT=" & strxl & "=>y_CT=" & stryl Ibnghiem2.Caption = "x_CD=" & strx2 & "=>y_CD=" & stry2 Else
Ibx1.Caption = strx2 Ibx2.Caption = strxl Ibyl1.Caption = stry2 Iby22.Caption = stryl
Ibnghiem!.Caption = "x_CD=" & strxl & "=>y_CD=" & stryl Ibnghiem2.Caption = "x_CT=" & strx2 & "=>y_CT=" & stry2 End If
“Nếu ad nhỏ hơn 0:
Else
‘Xuat bang bién thiên trong trường hợp này:
Ibtcd.Caption = tcdung
SVTH : Lé Van Doan Trang 97
Chương M1 : Cơ sở lý luận GVHD : Ts. Nguyễn Hữu Thông
ẺŠẰẰẤ`Ò<== —=—————._____________________ÊŸ
lbdaul.Caption = "-"
lbdau2.Caption = "+"
lbdau3.Caption = "+"
lbdau4.Caption = "-"
lbduongyl.Caption = "+00"
Ibduongy2.Caption = "+00"
Ibol.Caption = "0"
lbo2.Caption = "0"
lbamy3.Caption = ”-oo”
lbamy4.Caption = ”-oo”
Line (6960, 7320)-(7920, 7920), &H80000018 Line (8160, 7920)-(9000, 7320), &H§0000018 Line (9720, 7920)-(10560, 7320), &H80000018
Line (10680, 7320)-(1 1640, 7920), &H80000018
*Xét x1, x2 tìm cực đại cực tiéu và xuất chúng ra màn hình:
If xl < x2 Then
Ibx1.Caption = strxI Ibx2.Caption = strx2 Ibyl2.Caption = stryl Iby21.Caption = stry2
lbnghiemIl.Caption = "x_CT=" & strxl & "=>y_CT=" & stryl Ibnghiem2.Caption = "x_CD=" & strx2 & "=>y_CD=" & stry2
Else
lbxI.Caption = strx2
Ibx2.Caption = strxI Iby12.Caption = stry2 Iby21.Caption = stryl
Ibnghiem!.Caption = "x_CD=" & strxl & "=>y_CD=" & stryl
SVTH : Lé Van Doan Trang 98