Monday, May 4, 2015

Small basic Функцийн график байгуулах

Small basic дээр функцийн график байгуулах
Доорх кодыг Small basic дээрээ хуулж хийснээр функцын график байгуулж болно
GraphicsWindow.Title = " функцын график байгуулах"
Controls.ButtonClicked = buttoncliked
GraphicsWindow.Clear()
begin()
tsonx1 = Controls.AddTextBox(490,20)
Controls.SetSize(tsonx1,100,40)
tsonx2 = Controls.AddTextBox(490,45)
Controls.SetSize(tsonx2,100,20)
tsonx3 = Controls.AddTextBox(490,70)
Controls.SetSize(tsonx3,100,20)
GraphicsWindow.DrawText(460,22," a = ")
GraphicsWindow.DrawText(460,45," b = ")
GraphicsWindow.DrawText(460,68," c = ")
GraphicsWindow.Height = 650
GraphicsWindow.Width =700
GraphicsWindow.CanResize = "False"
kv = Controls.AddButton("квадрат функц бодох",470,230)
Sub begin
  GraphicsWindow.BackgroundColor = "white"
  GraphicsWindow.BrushColor = "Gray"
  GraphicsWindow.FillRectangle(30,30,420,410)
  GraphicsWindow.FillRectangle(30,30,420,410)
  GraphicsWindow.PenWidth = 2
  GraphicsWindow.BrushColor = "Dark"
  GraphicsWindow.PenWidth = 1
 
  GraphicsWindow.DrawLine(230,30,230,430)
  GraphicsWindow.DrawLine(30,230,430,230)
  GraphicsWindow.PenWidth = 3
  GraphicsWindow.DrawLine(230,30,225,50)
  GraphicsWindow.DrawLine(230,30,235,50)
  GraphicsWindow.DrawLine(430,230,415,225)
  GraphicsWindow.DrawLine(430,230,415,235)
  GraphicsWindow.PenWidth = 2
  GraphicsWindow.BrushColor = "blue"
  GraphicsWindow.DrawText(214,34,"y")
  GraphicsWindow.DrawText(430,230"x")
  GraphicsWindow.PenWidth = 1
EndSub
Sub buttoncliked
  If Controls.LastClickedButton = kv Then
    a=Controls.GetTextBoxText(tsonx1)
    b=Controls.GetTextBoxText(tsonx2)
    c=Controls.GetTextBoxText(tsonx3)
    begin()
    For x = -200 To 200 Step 0.01
      y = a*x+b*x+c
      If 230-y*20<430 And 230-y*20>30 And 230-x*20<430 And 230-x*20>30 Then
        GraphicsWindow.SetPixel(18*x+230,230-y*18,"red")
      EndIf
    EndFor
      For x = -200 To 200 Step 0.01
      y = x*x
      If 230-y*20<430 And 230-y*20>30 And 230-x*20<430 And 230-x*20>30 Then
        GraphicsWindow.SetPixel(18*x+230,230-y*18,"red")
      EndIf
    EndFor
    GraphicsWindow.DrawText(30,450, "Тэншитгэл бодох:")
    g=b-b - 4*a*c
    If g>=0 Then
      m = Math.SquareRoot(g)
      If a =0 Then
        GraphicsWindow.DrawText(30,450,"a = 0 учраас квадрат тэгшитгэл үүсэхгүй")
      Else
        x1 = (-b+m)/(2*a)
        x2 = (-b-m)/(2*a)
        GraphicsWindow.DrawText(30,480, "Тэгштигэлийн эхний шийд " + x1)
        GraphicsWindow.DrawText(30,510, "Тэгштитгэлийн удаах шийд "+ x2)
      EndIf
    Else
      GraphicsWindow.DrawText(30,480,"D<0 учраас квадрат тэгшитгэл шийдгүй")
      EndIf
    EndIf
EndSub  
small basic Энд дар татаж авна уу

No comments:

Post a Comment