Построение графика функции

Автор: Пользователь скрыл имя, 21 Января 2013 в 21:40, лабораторная работа

Краткое описание

Цель работы: построить график функции в среде разработки Visual Basic.NET.
Будем считать, что на рынке одного товара функция спроса и функция предложения – линейные функции цены на момент времени или цены предыдущего момента времени.
Составить программу, которая:
1. Изображает кривую спроса и кривую предложения на плоскости, по оси абсцисс которой отложена цена , а по оси ординат – количество сделок.
2. Вычисляет начальное предложение исходя из начального значения цены на момент времени .
3. Изображает маршрут "изменение цены → изменение числа сделок", который имеет вид "паутины", повторив несколько раз процессы.

Файлы: 25 файлов

Документ Microsoft Wordистория.docx

— 17.42 Кб (Открыть, Скачать)

ВВОДНИК.doc

— 326.00 Кб (Открыть, Скачать)

код на 3 лабу по модел экон.docx

— 491.37 Кб (Открыть, Скачать)

лаб 3 рис 1.PNG

— 45.97 Кб (Скачать)

лаб 3 рис 2.PNG

— 46.37 Кб (Скачать)

лаб 3 рис 3.PNG

— 42.72 Кб (Скачать)

лаб 3 рис 4.PNG

— 44.47 Кб (Скачать)

код на 4 лабу модел экон.docx

— 22.36 Кб (Открыть, Скачать)

рис 4 1.PNG

— 59.89 Кб (Скачать)

рис 4 2.PNG

— 46.20 Кб (Скачать)

рис 4 3.PNG

— 47.77 Кб (Скачать)

рис 4 4.PNG

— 47.53 Кб (Скачать)

Лабораторная работа №4.xlsx

— 13.29 Кб (Открыть, Скачать)

Конспект лекций.pdf

— 740.17 Кб (Открыть, Скачать)

МоделирЭкон1.pdf

— 619.32 Кб (Открыть, Скачать)

МоделирЭкон2.pdf

— 349.29 Кб (Открыть, Скачать)

МоделирЭкон3.pdf

— 249.18 Кб (Открыть, Скачать)

МоделирЭкон4.pdf

— 221.67 Кб (Открыть, Скачать)

МоделирЭкон5.pdf

— 242.82 Кб (Открыть, Скачать)

ЛР №1 График.pdf

— 71.03 Кб (Скачать)
Page 1
Построение графика функции
Option Explicit
Public NachInt As Single
Public KonInt As Single
Public VibSin As Boolean
Public VibCos As Boolean
Public Kluch As Single
Public KolToch As Single
Форма VvodDan
Option Explicit
Private Sub cmdPechat_Click()
Call VvodDan
Load FrmPechat
End Sub
Private Sub cmdGrafic_Click()
Call VvodDan
Load frmGrafic
End Sub
Private Sub VvodDan()
NachInt = Val(TxtNachInt.Text)
KonInt = Val(TxtKonInt.Text)
KolToch = Val(TxtKolToch.Text)
VibSin = OptSin
VibCos = OptCos
End Sub
Private Sub CmdVixod_Click()
Unload frmVvod
Unload frmGrafic
End
' Конец приложения.
End Sub

Page 2

Option Explicit 'XX, YY, SX, SY,DelY, DelX
Dim x, y, X0, Y0, I
Dim Msg, Style, Title, Soob, FrmX, FrmY, MashX, MashY
Dim MinX, MaxX, MaxY, Shag, Ots
Private Sub Form_Load()
'Dim Width, Height
ScaleMode = 1 ' устанавливаем измерение в твипах.
FontSize = 10 ' устанавливаем размер фонта.
FontName = Screen.Fonts(5) 'устанавливаем фонт Courier
Width = Screen.Width * 0.95 ' ширина формы.
Height = Screen.Height * 0.9 ' высота формы.
Left = 0 '(Screen.Width - Width) / 2 ' левый верхний угол по горизонтали.
Top = 0 '(Screen.Height - Height) / 2 ' левый верхний угол по вертикали.
frmGrafic.Show
Call Osi
Call Grafik
Call PechatOkna
End Sub
Private Sub Grafik()
Dim KXS, KXN, KYS, KYN, MaxY As Single
'Построение графика
DrawWidth = 2 ' Set DrawWidth.
I = 0
For x = NachInt To KonInt Step Shag
If VibSin Then
y = Sin(x)
ElseIf VibCos Then
y = Cos(x)
End If
If x = NachInt Then
KXS = Ots + (I * Shag) * MashX
KYS = Y0 - y * MashY
Else
KXN = Ots + (I * Shag) * MashX
KYN = Y0 - y * MashY
Line (KXS, KYS)-(KXN, KYN), 2
KXS = KXN: KYS = KYN
End If
I = I + 1
Next x
End Sub
' Рисуем оси
Private Sub Osi()
Dim ShagX, Tx, ShagY, Ty

Page 3

Cls
Ots = 200 'Отступ от края
MaxX = KonInt 'Максимальное значение X
MinX = NachInt
MashX = (Width - 2 * Ots) / (MaxX - MinX) 'Масштаб X
X0 = Width - Ots - MashX * MaxX 'Координата оси Y
Y0 = Height / 2 'Координата оси X
MaxY = -1000000
Shag = (KonInt - NachInt) / KolToch
For x = NachInt To KonInt Step Shag
If VibSin Then
y = Sin(x)
ElseIf VibCos Then
y = Cos(x)
Else
End If
'Поиск макс. значения функции
If MaxY <= Abs(y) Then MaxY = Abs(y)
Next x
MashY = (Y0 - 2 * Ots) / MaxY 'Масштаб Y
frmGrafic.Line (X0, Ots)-(X0, Height - Ots), 1 'Рисуем ось Y
frmGrafic.Line (Ots, Y0)-(Width - Ots, Y0), 1 'Рисуем ось X
ShagX = Round((MaxX - MinX) / 10, 2)
ShagY = Round(MaxY / 10, 2)
For I = 1 To 9
Tx = Ots + (I * ShagX) * MashX
Line (Tx, Y0)-(Tx, Y0 + 100)
CurrentX = Tx - 300: CurrentY = Y0 + 40
Print Round(MinX + I * ShagX, 2)
Ty = Y0 - I * ShagY * MashY
Line (X0, Ty)-(X0 - 100, Ty)
CurrentX = X0 - 700: CurrentY = Ty - 100
Print Round(I * ShagY, 1)
Ty = Y0 + I * ShagY * MashY
Line (X0, Ty)-(X0 - 100, Ty)
CurrentX = X0 - 800: CurrentY = Ty - 100
Print "-"; Round(I * ShagY, 1)
Next I
CurrentX = X0 - 600: CurrentY = Ots
Print "y"
CurrentX = Width - 600: CurrentY = Y0 + 50
Print "x"
End Sub
Private Sub PechatOkna()
Dim Response
Msg = "Печатать?" ' Определим сообщение
Style = vbOKCancel + vbExclamation ' Определим кнопки.
Title = "Окно печати" ' Определим заголовок.
Response = MsgBox(Msg, Style, Title)
If Response = vbOK Then ' Если ОК, то печатать.

Page 4

frmGrafic.PrintForm
End If
End Sub
Option Explicit
Private Sub Form_Load()
FrmPechat.ScaleMode = 4 ' устанавливаем измерение в символах.
FrmPechat.FontSize = 10 ' устанавливаем размер фонта.
FontName = Screen.Fonts(5) 'устанавливаем фонт Courier
FrmPechat.Width = Screen.Width * 0.3 ' устанавливаем ширину формы.
FrmPechat.Height = Screen.Height * 0.85 ' устанавливаем высоту формы.
FrmPechat.Left = (Screen.Width - FrmPechat.Width) / 2 ' Центрируем по горизонтали.
FrmPechat.Top = (Screen.Height - FrmPechat.Height) / 2 ' Центрируем по вертикали.
FrmPechat.Show
Call Pechat
End Sub
Private Sub Pechat()
Dim Response, Msg, Style, Title, Stroka
Dim DlinaStr As Integer
Dim x, y, KXS, KXN, KYS, KYN, Str, Shag As Single
Stroka = ""
Shag = (KonInt - NachInt) / KolToch
For x = NachInt To KonInt Step Shag
If VibSin Then
y = Sin(x)
ElseIf VibCos Then
y = Cos(x)
End If
Stroka = Stroka & FixFormat(x, 7, 2) & FixFormat(y, 7, 2) & vbCrLf
If x = NachInt Then
DlinaStr = Len(Stroka)
End If
Next x
Text1.Width = DlinaStr + 10
Text1.Height = 30
Text1.Text = " x
y" & vbCrLf & _
"--------------" & vbCrLf & Stroka
Msg = "Печатать?" ' Определим сообщение
Style = vbOKCancel + vbExclamation ' Определим кнопки.
Title = "Окно печати" ' Определим заголовок.
Response = MsgBox(Msg, Style, Title)
If Response = vbOK Then ' если ОК, то печать
Printer.Print Text1.Text
Printer.EndDoc
End If
End Sub
Private Function FixFormat(Chislo As Variant, Dlina As Byte, Posle As Byte)
Dim Str As String

Page 5

Select Case Posle
Case 1
Str = Format(Chislo, "#####0.0")
Case 2
Str = Format(Chislo, "#####0.00")
Case 3
Str = Format(Chislo, "#####0.000")
Case 4
Str = Format(Chislo, "#####0.0000")
Case 5
Str = Format(Chislo, "#####0.00000")
End Select
FixFormat = String(Dlina - Len(Str), " ") + Str
End Function
Private Function IntFormat(Chislo As Integer, Dlina As Byte)
Dim Str As String
Str = Format(Chislo, "#####0")
IntFormat = String(Dlina + 2 - Len(Str), " ") + Str
End Function

Page 6


ЛР №2 Элементы теории экстремума.pdf

— 404.99 Кб (Открыть, Скачать)

ЛР №3 Кривые безразличия.pdf

— 153.20 Кб (Открыть, Скачать)

ЛР №4 Теория потребления.pdf

— 119.86 Кб (Открыть, Скачать)

ЛР №5 Предельная полезность.pdf

— 95.27 Кб (Открыть, Скачать)

ЛР №6 Теория производства.doc

— 183.00 Кб (Открыть, Скачать)

Информация о работе Построение графика функции