Реферат

Реферат Создание программных продуктов для решения задач

Работа добавлена на сайт bukvasha.net: 2015-10-28

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 28.12.2024





Санкт-Петербургский государственный технологический институт

( Технический университет)
Кафедра Математического моделирования и оптимизации химико-технологических процессов
Факультет 5

                      Курс I

Группа 517
Дисциплина: информатика.
КУРСОВАЯ РАБОТА
Тема: Создание программных продуктов для решения задач.
Студент: Хохленко Сергей Дмитриевич
Научный руководитель:

Гайков Андрей Владимирович
Санкт-Петербург

2002
Содержание
Введение…………………………………………………………………………3

Задание на работу……………………………………………………………….4

Описание метода………………………………………………………………...5

Алгоритм построения решения задачи……………………………………...…6

Глава I…………………………………………………………………………….7

    Проект. Рабочая форма Visual Basic…………………………………………8

    Программный код……………………………………………………………..9

    Свойства объектов……………………………………………………………10

    Рабочая форма с данными……………………………………………………11

Глава II……………………………………………………………………….......12

    Решение в MathCad’е…………………………………………………………13

    Графики №1 и №2.............................................................................................14

Глава III..................................................................................................................15

    Решение задачи в Excei’е.................................................................................16

    Графики зависимостей......................................................................................17

Заключение.............................................................................................................18

Аннотация..............................................................................................................19
Аннотация
В данной курсовой работе рассмотрен Метод наименьших квадратов, позволяющий вести расчеты  в различных физико-химических задачах.

Главными законами, необходимыми для решения поставленной  задачи, являются: Закон Ньютона и Закон Стефана-Больцмана.

Работа выполнена в трех программных средах: Visual Basic, Excel и Math-Cad. Программный код, написанный на языке программирования Visual   Basic, читается с легкостью и прост в понимании. Построенные графики позволяют выбрать наиболее подходящий закон для расчета скорости охлаждения.
Введение

Современное программирование развивается и широко используется для решения таких задач, как программирование баз данных, реализация обмена между приложениями, использование сетевых технологий и т.д.; современ-ные системы программирования обеспечивают генерацию кода.

Большинство компьютеров в рамках всего мира работают под управлением операционной системы Windows корпорации Microsoft. Каждый пользователь хотя бы раз в жизни работал с приложениями Word, Excel или Access. Практические задачи иногда требуют обмена данными между прило-жениями; пусть, например, имеется база данных, нужно сделать запрос к ней, а затем – математическую обработку результатов запроса, которую, можно выполнить только с использованием Excel; здесь следует передать резуль-таты запроса в приложение Excel и для этого нужно использовать язык про-граммирования.

Базовым языком программирования корпорации Microsoft является Visual Basic. Современные его версии позволяют,  и реализовать в программе SQL-запрос к базе данных и выполнить вышеупомянутую передачу данных. Особенность языка Visual Basic заключается в репликации и синхронизации баз данных.

Курсовая работа включает в себя три различных варианта ввода данных значений: автоматический (наиболее простой) и два ручных: открытие файла и самостоятельный ввод каждого отдельного числа (значения). Кроме этого, работа включает в себя универсальный инженерный калькулятор, необходи-мый для каких либо вычислений. Построенные графики зависимостей в про-граммах позволяют выбрать наиболее приемлемый закон, а также сам язык программирования. 

 

  
Задание №7
Закон Ньютона имеет вид: V=AQ (1)

где V- скорость охлаждения, а Q- избыток температуры.

По данным наблюдений,  представляемым в таблице:



№ Опыта

V(I)

Q(I)

V(I) расч.

         V(I)



1

8.81

220





2

7.40

200





3

6.10

180





4

4.89

160





5

3.88

140





6

3.02

120





7

2.30

100






Найти значения коэффициента A; скорость охлаждения, вычисляемую по  формуле (1); относительную погрешность.
     (2)

Для вычисления коэффициента A необходимо решить систему уравнений:

 

        (3)
Для этого следует решить уравнения:
 (4)

Если максимальная относительная погрешность (2) окажется больше 5%,

проверить, согласуется ли с данными опыта закон Стефана:     V=k((Q+273)^4-273^4)              (5).
Обозначив Z=k((Q+273)^4-273^4), где k=5,67*10^(-9), подобрать коэффи-циент A, скорость охлаждения, относительную погрешность, решить сле-дующую систему уравнений:  

V=AZ                                    (6)

План решения задачи
1.     Составить алгоритм и программу вычисления коэффициента А,

V(I) расчетного и  относительную погрешность.
2.     Вычисление А оформить в виде подпрограммы общего вида.
3.     Напечатать таблицы.
4.     Построить графики зависимостей V(I) расчетного и V(I) от Q(I).
5.     Выбрать закон, по которому расчетные значения V(I) расчетные лучше согласуются с данными опыта.
Проект. Рабочая форма Visual Basic:

Программный код в среде Visual Basic:
Option Explicit

Dim I As Integer

Dim a(7) As Single
ВВОД ЭЛЕМЕНТОВ МАССИВОВ

Private Sub Комманда1_Click()

Dim V(7) As Single, Q(7) As Single

MSFlexGrid1.TextMatrix(0, 0) = “№ Опыта

MSFlexGrid1.TextMatrix(0, 1) = “  V(I) “

MSFlexGrid1.TextMatrix(0, 2) = “  Q(I) “

MSFlexGrid1.TextMatrix(0, 3) = “  V(I)расч.”

MSFlexGrid1.TextMatrix(0, 4) = “V(I), %”

For I = 1 To 7

MSFlexGrid1.TextMatrix(I, 0) = I

Next I

'АВТОМАТИЧЕСКИЙ ВВОД

If Проверка1.Value = 1 Then

  Open “A:\Данные.txt” For Input As #1

  For I = 1 To 7

  Input #1, V(I), Q(I)

  MSFlexGrid1.TextMatrix(I, 1) = V(I)

  MSFlexGrid1.TextMatrix(I, 2) = Q(I)

  Next I

  Close #1

End If

ВВОД ЭЛЕМЕНТОВ МАССИВОВ ВРУЧНУЮ

If Проверка1.Value = 0 Then

  For I = 1 To 7

  MSFlexGrid1.TextMatrix(I, 1) = InputBox(“ВВЕДИТЕ ЭЛЕМЕНТ МАССИВА V(I)”)

  Next I

  For I = 1 To 7

  MSFlexGrid1.TextMatrix(I, 2) = InputBox(“ВВЕДИТЕ ЭЛЕМЕНТ МАССИВА Q(I)”)

  Next I

End If

End Sub
'РЕШЕНИЕ A=V/Q, НАХОЖДЕНИЕ MIN (MAX),СУММЫ ЭЛЕМЕНТОВ МАССИВОВ

Private Sub Комманда2_Click()

Список1.Clear

For I = 1 To 7

Список1.AddItem (CCur(MSFlexGrid1.TextMatrix(I, 1) / MSFlexGrid1.TextMatrix(I, 2)))

Next I

Dim Summ As Single

Summ = 0

For I = 1 To 7

 Summ = Summ + MSFlexGrid1.TextMatrix(I, 1)

Next I

Текст1.Text = CSng(Summ)

 Dim Summa As Single

For I = 1 To 7

 Summa = Summa + MSFlexGrid1.TextMatrix(I, 2)

Next I

Текст2.Text = CSng(Summa)

РАСЧЕТ КОЭФФИЦИЕНТА А

Dim a As Single

a = Текст1.Text / Текст2.Text

Текст3.Text = CSng(a)

End Sub
‘V(I)РАСЧЕТНАЯ

Private Sub Комманда3_Click()

For I = 1 To 7

MSFlexGrid1.TextMatrix(I, 3) = Текст3.Text * MSFlexGrid1.TextMatrix(I, 2)

Next I

End Sub
ПОГРЕШНОСТЬ

Private Sub Комманда4_Click()

For I = 1 To 7

MSFlexGrid1.TextMatrix(I, 4) = Ccur(Sqr((((MSFlexGrid1.TextMatrix(I, 3) – MSFlexGrid1.TextMatrix(I, 1)) / MSFlexGrid1.TextMatrix(I, 1)) * 100) ^ 2))

Next I

СОРТИРОВКА

Dim min As Single

Dim max As Single

min = MSFlexGrid1.TextMatrix(7, 4)

НАХОЖДЕНИЕ MIN

For I = 1 To 7

 If MSFlexGrid1.TextMatrix(I, 4) < min Then min = MSFlexGrid1.TextMatrix(I, 4)

Next I

Текст4.Text = CSng(min)

max = MSFlexGrid1.TextMatrix(1, 4)

НАХОЖДЕНИЕ MAX

For I = 1 To 7

 If MSFlexGrid1.TextMatrix(I, 4) > max Then max = MSFlexGrid1.TextMatrix(I, 4)

Next I

Текст6.Text = CSng(max)

End Sub
Private Sub Комманда5_Click()

'ЗАКОН СТЕФАНА-БОЛЬЦМАНА

'V=k*Q^4, где k-постоянная Стефана-Больцмана: k = 5.67 * 10 ^ -8

Dim z(7) As Single, V(7) As Single

For I = 1 To 7

z(I) = 0.0000000567 * ((MSFlexGrid1.TextMatrix(I, 2) + 273) ^ 4 – 273 ^ 4)

‘V=AZ

V(I) = 0.1 * Текст3.Text * z(I)

'ВЫВОД СКОРОСТИ ОХЛАЖДЕНИЯ

Список2.AddItem (Ccur(V(I)))

Next I

End Sub
Private Sub Комманда6_Click()

End

End Sub
Private Sub Command7_Click()

Dim V(7) As Single, Q(7) As Single

MSFlexGrid1.TextMatrix(0, 0) = “№ Опыта

MSFlexGrid1.TextMatrix(0, 1) = “  V(I) “

MSFlexGrid1.TextMatrix(0, 2) = “  Q(I) “

MSFlexGrid1.TextMatrix(0, 3) = “  V(I)расч.”

MSFlexGrid1.TextMatrix(0, 4) = “V(I), %”

For I = 1 To 7

MSFlexGrid1.TextMatrix(I, 0) = I

Next I
'АВТОМАТИЧЕСКИЙ ВВОД

If Проверка1.Value = 1 Then

  Open “A:\Данные.txt” For Input As #1

  For I = 1 To 7

  Input #1, V(I), Q(I)

  MSFlexGrid1.TextMatrix(I, 1) = V(I)

  MSFlexGrid1.TextMatrix(I, 2) = Q(I)

  Next I

  Close #1

End If

ВВОД ЭЛЕМЕНТОВ МАССИВОВ ВРУЧНУЮ

If Проверка1.Value = 0 Then

  For I = 1 To 7

  MSFlexGrid1.TextMatrix(I, 1) = InputBox(“ВВЕДИТЕ ЭЛЕМЕНТ МАССИВА V(I)”)

  Next I

  For I = 1 To 7

  MSFlexGrid1.TextMatrix(I, 2) = InputBox(“ВВЕДИТЕ ЭЛЕМЕНТ МАССИВА Q(I)”)

  Next I

End If

Список1.Clear

For I = 1 To 7

Список1.AddItem (Ccur(MSFlexGrid1.TextMatrix(I, 1) / MSFlexGrid1.TextMatrix(I, 2)))

Next I

Dim Summ As Single

Summ = 0

For I = 1 To 7

 Summ = Summ + MSFlexGrid1.TextMatrix(I, 1)

Next I

Текст1.Text = CSng(Summ)

 Dim Summa As Single

For I = 1 To 7

 Summa = Summa + MSFlexGrid1.TextMatrix(I, 2)

Next I

Текст2.Text = CSng(Summa)

РАСЧЕТ КОЭФФИЦИЕНТА А

Dim a As Single

a = Текст1.Text / Текст2.Text

Текст3.Text = CSng(a)

For I = 1 To 7

MSFlexGrid1.TextMatrix(I, 3) = Текст3.Text * MSFlexGrid1.TextMatrix(I, 2)

Next I

For I = 1 To 7

MSFlexGrid1.TextMatrix(I, 4) = Ccur(Sqr((((MSFlexGrid1.TextMatrix(I, 3) – MSFlexGrid1.TextMatrix(I, 1)) / MSFlexGrid1.TextMatrix(I, 1)) * 100) ^ 2))

Next I

СОРТИРОВКА

Dim min As Single

Dim max As Single

min = MSFlexGrid1.TextMatrix(7, 4)

НАХОЖДЕНИЕ MIN

For I = 1 To 7

 If MSFlexGrid1.TextMatrix(I, 4) < min Then min = MSFlexGrid1.TextMatrix(I, 4)

Next I

Текст4.Text = CSng(min)

max = MSFlexGrid1.TextMatrix(1, 4)

НАХОЖДЕНИЕ MAX

For I = 1 To 7

 If MSFlexGrid1.TextMatrix(I, 4) > max Then max = MSFlexGrid1.TextMatrix(I, 4)

Next I

Текст6.Text = CSng(max)
'ЗАКОН СТЕФАНА-БОЛЬЦМАНА

'V=k*Q^4, где k-постоянная Стефана-Больцмана: k = 5.67 * 10 ^ -8

Dim z(7) As Single, W(7) As Single

For I = 1 To 7

z(I) = 0.0000000567 * ((MSFlexGrid1.TextMatrix(I, 2) + 273) ^ 4 – 273 ^ 4)

‘V=AZ

W(I) = 0.1 * Текст3.Text * z(I)

'ВЫВОД СКОРОСТИ ОХЛАЖДЕНИЯ

Список2.AddItem (Ccur(W(I)))

Next I

End Sub
Private Sub mnuВключить_Click()

'ВКЛЮЧЕНИЕ КАЛЬКУЛЯТОРА

‘OLE1.SourceDoc = “C:\WINDOWS\CALC.EXE”

OLE1.Action = 7

End Sub
Private Sub mnuВыход_Click()

End

End Sub
Private Sub mnuОткрыть_Click()

Dim V(7) As Single, Q(7) As Single

MSFlexGrid1.TextMatrix(0, 0) = “№ Опыта

MSFlexGrid1.TextMatrix(0, 1) = “  V(I) “

MSFlexGrid1.TextMatrix(0, 2) = «  Q(I) «

MSFlexGrid1.TextMatrix(0, 3) = “  V(I)расч.”

MSFlexGrid1.TextMatrix(0, 4) = «V(I), %»

For I = 1 To 7

MSFlexGrid1.TextMatrix(I, 0) = I

Next I

АВТОМАТИЧЕСКИЙ ВВОД

Open “A:\Данные.txt” For Input As #1

For I = 1 To 7

Input #1, V(I), Q(I)

MSFlexGrid1.TextMatrix(I, 1) = V(I)

MSFlexGrid1.TextMatrix(I, 2) = Q(I)

Next I

Close #1

End Sub
Private Sub mnuСкрыть_Click()

СКРЫТЬ ВРЕМЯ

Часы1.Enabled = False

Текст5.Text = “”

End Sub
Private Sub mnuПоказать_Click()

ПОКАЗАТЬ ВРЕМЯ

Часы1.Enabled = True

Часы1.Interval = 250

End Sub

 

Private Sub Часы1_Timer()

'ВЫВОД ВРЕМЕНИ

Текст5.Text = CStr(Time)

End Sub
Значения свойств объектов:
VERSION 5.00

Object = "{5E9E78A0-531B-11CF-91F6-C2863C385E30}#1.0#0"; "MSFLXGRD.OCX"

Begin VB.Form Форма1

   Caption         =   "КУРСОВАЯ РАБОТА"

   ClientHeight    =   4905

   ClientLeft      =   165

   ClientTop       =   735

   ClientWidth     =   6660

   LinkTopic       =   "Form1"

   ScaleHeight     =   4905

   ScaleWidth      =   6660

   StartUpPosition =   3  'Windows Default

   Begin VB.ListBox Список2

      Height          =   1425

      ItemData        =   "КУРСОВАЯ РАБОТА.frx":0000
      Left            =   3600

      List            =   "КУРСОВАЯ РАБОТА.frx":0002

      TabIndex        =   16

      Top             =   3240

      Width           =   1095

   End

   Begin VB.ListBox Список1

      Height          =   1425

      ItemData        =   "КУРСОВАЯ РАБОТА.frx":0004

      Left            =   2400

      List            =   "КУРСОВАЯ РАБОТА.frx":0006

      TabIndex        =   15

      Top             =   3240

      Width           =   1095

   End

   Begin VB.TextBox Текст6

      Height          =   285

      Left            =   5040

      TabIndex        =   14

      Top             =   3480

      Width           =   1095

   End

   Begin VB.TextBox Текст5

      Height          =   285

      Left            =   5280

      TabIndex        =   13

      Top             =   360

      Width           =   855

   End

   Begin VB.TextBox Текст 4

      Height          =   285

      Left            =   5040

      TabIndex        =   12

      Top             =   2880

      Width           =   1095

   End

   Begin VB.TextBox Текст 3

      Height          =   285

      Left            =   5040

      TabIndex        =   11

      Top             =   2280

      Width           =   1095

   End
   Begin VB.TextBox Текст 2

      Height          =   285

      Left            =   5040

      TabIndex        =   10

      Top             =   1680

      Width           =   1095

   End

   Begin VB.TextBox Текст 1

      Height          =   285

      Left            =   5040

      TabIndex        =   9

      Top             =   1080

      Width           =   1095

   End

   Begin VB.Timer Часы1

      Interval        =   250

      Left            =   4800

      Top             =   3840

   End

   Begin VB.CommandButton Комманда6

      Caption         =   "ВЫХОД"

      Height          =   195

      Left            =   240

      TabIndex        =   7

      Top             =   4440

      Width           =   1575

   End

   Begin VB.CommandButton Комманда 5

      Caption         =   "ПРОВЕРКА"

      Height          =   195

      Left            =   240

      TabIndex        =   6

      Top             =   4200

      Width           =   1575

   End

   Begin VB.CommandButton Комманда 4

      Caption         =   "ПОГРЕШНОСТЬ"

      Height          =   195

      Left            =   240

      TabIndex        =   5

      Top             =   3960

      Width           =   1575

   End

   Begin VB.CommandButton Комманда 3

      Caption         =   "Vрасч.=AQ"

      Height          =   195

      Left            =   240

      TabIndex        =   4

      Top             =   3720

      Width           =   1575

   End

   Begin VB.CommandButton Комманда 2

      Caption         =   "РЕШЕНИЕ"

      Height          =   195

      Left            =   240

      TabIndex        =   3

      Top             =   3480

      Width           =   1575

   End
   Begin VB.CommandButton Комманда 1

      Caption         =   "ВВЕСТИ"

      Height          =   195

      Left            =   240

      TabIndex        =   2

      Top             =   3240

      Width           =   1575

   End

   Begin VB.CheckBox Проверка1

      Caption         =   " АВТОМАТИЧЕСКИЙ    ВВОД"

      Height          =   375

      Left            =   120

      TabIndex        =   1

      Top             =   240

      Width           =   2775

   End

   Begin MSFlexGridLib.MSFlexGrid MSFlexGrid1

      Height          =   2055

      Left            =   0

      TabIndex        =   0
      Top             =   840

      Width           =   4935

      _ExtentX        =   8705

      _ExtentY        =   3625

      _Version        =   393216

      Rows            =   8

      Cols            =   5

   End

   Begin VB.OLE OLE1

      Class           =   "Package"

      Height          =   495

      Left            =   5280

      OleObjectBlob   =   "КУРСОВАЯ РАБОТА.frx":0008

      SourceDoc       =   "C:\WINDOWS\CALC.EXE"

      TabIndex        =   24

      Top             =   3840

      Width           =   855

   End

   Begin VB.Label Метка8

      Caption         =   "  ПРОВЕРКА"

      Height          =   255

      Left            =   3600

      TabIndex        =   23

      Top             =   3000

      Width           =   1095

   End

   Begin VB.Label Метка 7

      Caption         =   "      A=V/Q"

      Height          =   255

      Left            =   2280

      TabIndex        =   22

      Top             =   3000

      Width           =   1095

   End

   Begin VB.Label Метка 6

      Caption         =   "   Max V(I), %"

      Height          =   255

      Left            =   5040

      TabIndex        =   21

      Top             =   2640

      Width           =   1095

   End
   Begin VB.Label Метка 5

      Caption         =   "   Min V(I), %"

      Height          =   255

      Left            =   5040

      TabIndex        =   20

      Top             =   3240

      Width           =   1095

   End

   Begin VB.Label Метка 4

      Caption         =   "  Коэфф-нт А"

      Height          =   255

      Left            =   5040

      TabIndex        =   19

      Top             =   2040

      Width           =   1095

   End

   Begin VB.Label Метка 3

      Caption         =   "   Сумма Q(I)"

      Height          =   255

      Left            =   5040

      TabIndex        =   18

      Top             =   1440

      Width           =   1095

   End

   Begin VB.Label Метка 2

      Caption         =   "   Сумма V(I)"

      Height          =   255

      Left            =   5040

      TabIndex        =   17

      Top             =   840

      Width           =   1095

   End

   Begin VB.Label Метка 1

      Caption         =   "ТЕКУЩЕЕ ВРЕМЯ"

      Height          =   255

      Left            =   3720

      TabIndex        =   8

      Top             =   360

      Width           =   1575

   End

   Begin VB.Menu mnuФайл

      Caption         =   "Файл"

      Begin VB.Menu mnuОткрыть

         Caption         =   "Открыть"

      End

      Begin VB.Menu mnuВыход

         Caption         =   "Выход"

      End

   End

   Begin VB.Menu mnuВремя

      Caption         =   "Время"

      Begin VB.Menu mnuПоказать

         Caption         =   "Показать"

      End

      Begin VB.Menu mnuСкрыть

         Caption         =   "Скрыть"

      End

   End

   Begin VB.Menu mnuКалькулятор

      Caption         =   "Калькулятор"

      Begin VB.Menu mnuВключить

         Caption         =   "Включить"

      End

   End

End

Attribute VB_Name = "Форма1"

Attribute VB_GlobalNameSpace = False

Attribute VB_Creatable = False

Attribute VB_PredeclaredId = True

Attribute VB_Exposed = False
Рабочая форма с данными:

Решение задачи с помощью MathCad.
                                                 Вычисление суммы элементов массивов: 

                                      

                                                                                                     Относительная погрешность:

                                                                    
                                                     
Расчет скорости охлаждения по закону Стефана: V=kT^4
       Постоянная Стефана-Больцмана:

                                                                                                              
                                            

                      

   
График №1 построен по данным, а №2- по расчетам.
Решение задачи в Excel



         V(I)

        Q(I)

  V(I) расч

    V(I), %

8,81

220

7,15

18,84222

7,4

200

6,5

12,16216

6,1

180

5,85

4,098361

4,89

160

5,2

6,339468

3,88

140

4,55

17,26804

3,02

120

3,9

29,13907

2,3

100

3,25

41,30435

36,4

1120













    A=V/Q

 КОЭФ. А

           Z

СТЕФАНА

0,040045

0,0325

303,4484467

9,862075

0,037



252,3155307

8,200255

0,033889



207,2734376

6,736387

0,030563



167,8181271

5,454089

0,027714



133,4673316

4,337688

0,025167



103,7605564

3,372218

0,023



78,25907956

2,54342


Графики зависимостей:


Заключение:
На основании полученных в программах данных:

расчетов и графиков, можно сделать вывод, что наиболее прие-млемым языком программирования является Visual Basic, а закон наиболее точно дающий схожие результаты с данными опыта является закон Стефана.


1. Реферат на тему Мона Лиза Рождение легенды Леонардо да Винчи
2. Реферат Реставрация в Швейцарии
3. Реферат Потребности и их роль в экономической теории
4. Курсовая на тему Прибыль предприятий и ее планирование
5. Реферат Новые системы оплаты труда
6. Курсовая Учет и анализ эффективности использования основных средств ООО Завод керамических материало
7. Реферат на тему Legalizing Ecstasy Essay Research Paper Legalizing EcstasyHave
8. Кодекс и Законы Принципы права 4
9. Реферат Основные инструменты макроэкономической политики в открытой экономике
10. Реферат на тему Historical Analysis Of One Of Emily Dickinson