Sub Job_3_1()
Const x1 = 0, x2 = 4, xd = 0.2, x0 = 0.5
Const R1 = "A1" 'Адрес левой верхней ячейки с данными
' Const R1 = "B2" 'Адрес левой верхней ячейки с данными
Dim i, Nx, x
Dim Fx0, F1x0
Dim R2, RRfunk
Dim WorkSh, DiagName
Nx = Round((x2 - x1) / xd, 0) + 1
ReDim Dann(1 To Nx, 1 To 3)
Fx0 = x0 * Sin(2 * x0)
F1x0 = Sin(2 * x0) + 2 * x0 * Cos(2 * x0)
x = x1
For i = 1 To Nx
Dann(i, 1) = x
Dann(i, 2) = x * Sin(2 * x)
Dann(i, 3) = F1x0 * (x - x0) + Fx0
x = x1 + xd * i
Next
Sheets.Add After:=Sheets(Sheets.Count)
R2 = Range(R1).Offset(Nx - 1, 2).Address
Range(R1 + ":" + R2) = Dann
RRfunk = Range(R1).Offset(0, 1).Address
RRfunk = RRfunk + ":" + R2
WorkSh = ActiveSheet.Name
Range(RRfunk).Select
ActiveSheet.Shapes.AddChart.Select
With ActiveChart
DiagName = Replace(.Name, WorkSh + " ", "")
.ChartType = xlLine
.SetSourceData Source:=Range("'" + WorkSh + "'!" + RRfunk)
.PlotArea.Select
.SeriesCollection(1).XValues = "=" + WorkSh + "!" + R1 + ":" + Range(R1).Offset(Nx - 1, 0).Address
With .Axes(xlCategory)
.TickLabels.NumberFormat = "# ##0.0"
.CrossesAt = 1
.AxisBetweenCategories = False
End With
End With
With ActiveSheet.Shapes(DiagName)
.ScaleWidth 1.1437, msoFalse, msoScaleFromBottomRight
.ScaleHeight 1.366, msoFalse, msoScaleFromBottomRight
.ScaleWidth 1.4025, msoFalse, msoScaleFromTopLeft
.ScaleHeight 1.085, msoFalse, msoScaleFromTopLeft
End With
Range("A1").Select
End Sub
Sub Job_3_2()
Const x = 1.5
Const N = 16
Dim Fx, Yi, dY, Zi, i
Fx = 0
Yi = x
dY = x ^ 0.2
Zi = -1
For i = 1 To N
Yi = Yi * dY
Zi = Zi * (-0.25)
Fx = Fx + Sin(Yi) * Zi
Next
MsgBox "x=" + CStr(x) + vbCrLf + "F(x)=" + CStr(Fx)
End Sub
Если Вы уже зарегистрированы на Портале - войдите в систему, если Вы еще не регистрировались - пройдите простую процедуру регистрации.