Мегаобучалка Главная | О нас | Обратная связь  


Скриншоты из программы Microsoft Excel




 

 

1.4. ПРОГРАММНЫЙ КОД К ВАРИАНТУ № 10

 

 

Public Class Form1

Dim x() As Single

Dim I() As Double

Dim Y() As Double

Dim n As Integer

Dim f() As Double

Dim j As Integer

Dim S1 As Double

Dim S2 As Double

Dim S3 As Double

Dim S4 As Double

Dim S5 As Double

Dim a As Double

Dim b As Double

Dim RowI As Integer

Dim ColI As Integer

Dim sigma As Double

Dim sigmaA As Double

Dim sigmaB As Double

Dim absalutA As Double

Dim absalutB As Double

Dim I0 As Double

Dim T1_2 As Double

 

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

'n = CSng(InputBox("Введите число n = "))

n = CSng(TextBox6.Text)

ReDim x(n)

ReDim I(n)

ReDim Y(n)

 

AxMSFlexGrid1.Col = 1 'первый столбец

AxMSFlexGrid1.Row = 0 'шапка

AxMSFlexGrid1.Text = "час" 'заголовок в табл

 

'ввод τ

For j As Integer = 1 To n

x(j) = CSng(InputBox("Введите число t(" & j & ")"))

''''''''''''''''' TextBox1.Text = TextBox1.Text + CStr(x(j)) + vbCrLf

AxMSFlexGrid1.Col = 1

AxMSFlexGrid1.Row = j ' - 1

AxMSFlexGrid1.Text = CStr(x(j))

'номера строк-----------------------

AxMSFlexGrid1.Row = j

AxMSFlexGrid1.Col = 0

AxMSFlexGrid1.Text = CStr(j)

Next

 

AxMSFlexGrid1.Col = 2 '2й столбец

AxMSFlexGrid1.Row = 0 ' шапка

AxMSFlexGrid1.Text = "имп./мин" 'заголовок табл

'ввод I

For j As Integer = 1 To n

I(j) = CSng(InputBox("Введите число I(" & j & ")"))

'''''''''''''''''''''''''' TextBox2.Text = TextBox2.Text + CStr(I(j)) + vbCrLf

'AxMSFlexGrid1.Col = 2

AxMSFlexGrid1.Row = j ' - 1

AxMSFlexGrid1.Text = CStr(I(j))

Y(j) = Math.Log(I(j))



Next

 

myFunction()

 

End Sub

Private Sub myFunction()

S1 = 0

S2 = 0

S3 = 0

S4 = 0

S5 = 0

 

 

AxMSFlexGrid1.Row = 0

 

AxMSFlexGrid1.Col = 3

AxMSFlexGrid1.Text = "x" 'S1

 

AxMSFlexGrid1.Col = 4

AxMSFlexGrid1.Text = "y" 'S2

 

 

AxMSFlexGrid1.Col = 5

AxMSFlexGrid1.Text = "x*y" 'S3

 

AxMSFlexGrid1.Col = 6

AxMSFlexGrid1.Text = "x^2" 'S4

 

AxMSFlexGrid1.Col = 7

AxMSFlexGrid1.Text = "y^2" 'S5

 

 

For j As Integer = 1 To n

 

AxMSFlexGrid1.Row = j

 

AxMSFlexGrid1.Col = 3

S1 = x(j) + S1

AxMSFlexGrid1.Text = CStr(Math.Round(x(j), 2))

 

AxMSFlexGrid1.Col = 4

S2 = S2 + Y(j)

AxMSFlexGrid1.Text = CStr(Math.Round(Y(j), 2))

 

AxMSFlexGrid1.Col = 5

S3 = S3 + x(j) * Y(j)

AxMSFlexGrid1.Text = CStr(Math.Round(x(j) * Y(j), 2))

 

AxMSFlexGrid1.Col = 6

S4 = S4 + x(j) ^ 2

AxMSFlexGrid1.Text = CStr(Math.Round(x(j) ^ 2, 2))

 

AxMSFlexGrid1.Col = 7

S5 = S5 + Y(j) ^ 2

AxMSFlexGrid1.Text = CStr(Math.Round(Y(j) ^ 2, 2))

 

Next

 

 

AxMSFlexGrid1.Row = n + 1

AxMSFlexGrid1.Col = 0

AxMSFlexGrid1.Text = "сумма"

 

AxMSFlexGrid1.Col = 3

AxMSFlexGrid1.Text = CStr(Math.Round((S1), 2)) 'округляем до второго числа

 

AxMSFlexGrid1.Col = 4

AxMSFlexGrid1.Text = CStr(Math.Round((S2), 2))

 

AxMSFlexGrid1.Col = 5

AxMSFlexGrid1.Text = CStr(Math.Round((S3), 2))

 

AxMSFlexGrid1.Col = 6

AxMSFlexGrid1.Text = CStr(Math.Round((S4), 2))

 

AxMSFlexGrid1.Col = 7

AxMSFlexGrid1.Text = CStr(Math.Round((S5), 2))

 

'-----------------------формулы----------------------

a = 0

b = 0

a = (n * S3 - S1 * S2) / (n * S4 - S1 ^ 2)

b = (S4 * S2 - S1 * S3) / (n * S4 - S1 ^ 2)

' --------------------------------------------------

 

TextBox4.Text = CStr(a) ' вывод a

TextBox5.Text = CStr(b) 'вывод b

 

 

ReDim f(n)

TextBox3.Text = "" 'ОЧИСТИТЬ

 

For j As Integer = 1 To n

f(j) = a * x(j) + b

TextBox3.Text = TextBox3.Text + CStr(f(j)) + vbCrLf

Next

 

'расчет дисперсии

sigma = (1 / (n * (n - 2))) * (n * S5 - S2 ^ 2 - ((n * S3 - S1 * S2) ^ 2) / (n * S4 - S1 ^ 2)) ' Math.Sqrt корень

'вывод сигма ^2

TextBox8.Text = CStr(sigma)

 

'---------------------------дисперсия параметра a и b-----------------

sigmaA = (n * sigma) / (n * S4 - S1 ^ 2)

sigmaB = ((1 / n) * S4 * sigmaA)

TextBox9.Text = CStr(sigmaA)

TextBox10.Text = CStr(sigmaB)

 

'---------------------------------------------------------

absalutA = Math.Sqrt(sigmaA) * CSng(TextBox11.Text)

absalutB = Math.Sqrt(sigmaB) * CSng(TextBox11.Text)

 

Label11.Text = CStr(a) + " +/- " + CStr(absalutA)

Label12.Text = CStr(b) + " +/- " + CStr(absalutB)

 

 

I0 = Math.Exp(b)

T1_2 = 0.693 / a

 

TextBox12.Text = CStr(I0)

TextBox13.Text = CStr(T1_2)

 

End Sub

 

 

Private Sub TextBox6_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox6.TextChanged

If TextBox6.Text <> "" Then

AxMSFlexGrid1.Rows = CInt(TextBox6.Text) + 2 '+1тк верхняя строка серая +1 для сумм

End If

End Sub

 

 

Private Sub AxMSFlexGrid1_DblClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AxMSFlexGrid1.DblClick

End Sub

 

 

Private Sub TextBox7_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox7.TextChanged

End Sub

 

Private Sub AxMSFlexGrid1_ClickEvent(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AxMSFlexGrid1.ClickEvent

 

TextBox7.Text = AxMSFlexGrid1.Text 'окно для редактирования данных табл

RowI = AxMSFlexGrid1.Row 'номер строки

ColI = AxMSFlexGrid1.Col ' номер столбца

 

If TextBox7.Text <> "" And (ColI = 1 Or ColI = 2) Then 'если первый или 2й столбец то окошко редактирования и кнопка активны

TextBox7.Enabled = True

Button4.Enabled = True

Else : TextBox7.Enabled = False

Button4.Enabled = False

End If

 

' строка состояния

ToolStripStatusLabel1.Text = "строка=" + CStr(RowI) + " " + "столбец=" + CStr(ColI)

End Sub

 

Private Sub Button4_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

'редактирование таблицы

 

If TextBox7.Text <> "" And (ColI = 1 Or ColI = 2) Then

AxMSFlexGrid1.Row = RowI

AxMSFlexGrid1.Col = ColI

If ColI = 1 Then '1й столбец x

x(RowI) = CSng(TextBox7.Text)

AxMSFlexGrid1.Text = TextBox7.Text

End If

If ColI = 2 Then ' второй столбец I

I(RowI) = CSng(TextBox7.Text)

AxMSFlexGrid1.Text = TextBox7.Text

End If

myFunction() 'процедура расчета

Else : TextBox7.Text = ""

End If

 

End Sub

 

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

 

 

'--------------------------------------------------------

Chart1.Series.Clear()

Chart1.Series.Add("(Ipi;τ)")

Chart1.Series.Add("Ipi(τ)")

Chart1.ChartAreas("ChartArea1").AxisX.Title = "τ, ч."

Chart1.ChartAreas("ChartArea1").AxisY.Title = "Ipi, имп./мин."

Chart1.Series("Ipi(τ)").ChartType = DataVisualization.Charting.SeriesChartType.Spline

Chart1.Series("(Ipi;τ)").ChartType = DataVisualization.Charting.SeriesChartType.FastPoint

 

Chart1.Series("(Ipi;τ)").Color = Color.Red

Chart1.Series("Ipi(τ)").Color = Color.Blue

 

Chart1.Series("(Ipi;τ)").BorderWidth = 3

Chart1.Series("Ipi(τ)").BorderWidth = 2

 

For j As Integer = 1 To n

Chart1.Series("(Ipi;τ)").Points.AddXY(x(j), Y(j))

Chart1.Series("Ipi(τ)").Points.AddXY(x(j), f(j))

Next

'----------------------------------------------------------------

 

 

'---------------------ЭКСПЕРЕМЕНТАЛЬНЫЕ ДАННЫЕ

Chart2.Series.Clear()

Chart2.Series.Add("(I;τ)")

'Chart2.Series.Add("f(x)")

Chart2.ChartAreas("ChartArea1").AxisX.Title = "τ, ч."

Chart2.ChartAreas("ChartArea1").AxisY.Title = "I, имп./мин." ', f(x)"

'Chart2.Series("f(x)").ChartType = DataVisualization.Charting.SeriesChartType.Spline

Chart2.Series("(I;τ)").ChartType = DataVisualization.Charting.SeriesChartType.FastPoint

 

Chart2.Series("(I;τ)").Color = Color.Red

'Chart2.Series("f(x)").Color = Color.Blue

 

Chart2.Series("(I;τ)").BorderWidth = 3

' Chart2.Series("f(x)").BorderWidth = 2

 

For j As Integer = 1 To n

Chart2.Series("(I;τ)").Points.AddXY(x(j), I(j))

' Chart2.Series("f(x)").Points.AddXY(x(j), f(j))

Next

 

End Sub

End Class

 

 

ВЫВОДЫ

 

В процессе работы над курсовой работой проведен анализ методов статистической обработки экспериментальных данных. Разработано программное обеспечение для построения статистической модели методом наименьших квадратов в программах Microsoft Visual Studio и Microsoft Excel. Совпадение результатов двух программ доказывает правильность написания программного обеспечения.

 

 

ЛИТЕРАТУРА

 

1. ГОСТ Р 8.736-2011 «Государственная система обеспечения единства измерений. Измерения прямые многократные. Методы обработки результатов измерений. Основные положения».

2 Агапьев Б.Д., Белов В.Н., Кесаманлы Ф.П., Козловский В.В., Марков С.И. Обработка экспериментальных данных. Учеб. пособие. – СПб.:АОЗТ «Констрой». – 84 с.

3 Симонович, С.В. Информатика. Базовый курс: Учебник для вузов / С.В. Симонович.- СПб.: Питер, 2011. - 640 с.

4 Информатика: учебник под редакцией В.В. Трофимова. Электронные текстовые данные. – М: Юрайт, 2012. – 911 с. (ЭБ)

5 Шапорев, С.Д. Информатика. Теоретический курс и практические занятия / С.Д. Шапорев. - СПб.: БХВ, 2008. - 469 с.

Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой



Читайте также:
Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ...
Генезис конфликтологии как науки в древней Греции: Для уяснения предыстории конфликтологии существенное значение имеет обращение к античной...
Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение...
Как построить свою речь (словесное оформление): При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою...



©2015-2020 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (467)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.041 сек.)
Поможем в написании
> Курсовые, контрольные, дипломные и другие работы со скидкой до 25%
3 569 лучших специалисов, готовы оказать помощь 24/7