Термінова допомога студентам
Дипломи, курсові, реферати, контрольні...

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

РефератДопомога в написанніДізнатися вартістьмоєї роботи

ВВОД ЕЛЕМЕНТІВ МАСИВІВ 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… Читати ще >

Создание програмних продуктів на вирішення задач (реферат, курсова, диплом, контрольна)

Санкт-Петербурзький державний технологічний институт.

(Технічний университет).

Кафедра Математичного моделювання й оптимізації хіміко-технологічних процессов.

Факультет 5.

Курс I.

Група 517.

Дисциплина: информатика.

КУРСОВА РАБОТА.

Тема: Створення програмних продуктів на вирішення задач.

Студент: Хохленко Сергій Дмитриевич.

Науковий руководитель:

Гайков Андрій Владимирович.

Санкт-Петербург.

Содержание Введение…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) расч. | [pic]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); відносну погрешность.

[pic] (2) Для обчислення коефіцієнта A вирішити систему уравнений:

[pic] (3).

Для цього треба вирішити уравнения:

[pic] (4) Якщо максимальна відносна похибка (2) виявиться більше 5%, перевірити, чи узгоджується з цими досвіду закон Стефана: V=k ((Q+273)^4- 2734) (5).

Обозначив Z=k ((Q+273)^4−2734), де 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*Q4, де k-постоянная Стефана-Больцмана: k = 5.67 * 10 ^ -8 Dim z (7) As Single, V (7) As Single For I = 1 To 7 z (I) = 0.567 * ((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*Q4, де k-постоянная Стефана-Больцмана: k = 5.67 * 10 ^ -8 Dim z (7) As Single, W (7) As Single For I = 1 To 7 z (I) = 0.567 * ((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:WINDOWSCALC.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 = 393 216.

Rows = 8.

Cols = 5.

End.

Begin VB. OLE OLE1.

Class = «Package «.

Height = 495.

Left = 5280.

OleObjectBlob = «КУРСОВА РАБОТА. frx » :0008.

SourceDoc = «C:WINDOWSCALC.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.

Робоча форма з данными:

[pic].

Рішення завдання з допомогою MathCad.

[pic] Обчислення суми елементів массивов:

[pic] [pic] [pic] [pic].

Відносна погрешность:

[pic] [pic] [pic].

[pic] [pic] [pic] [pic] [pic].

Розрахунок швидкості охолодження згідно із законом Стефана: V=kT4.

[pic] [pic] Постійна Стефана-Больцмана:

[pic].

[pic] [pic].

[pic] [pic].

График № 1 побудований за даним, а № 2- по расчетам.

Рішення завдання у Excel.

| | | V (I) расч | V (I), % | |V (I) |Q (I) | | | |8,81 |220 |7,15 |18,84 222 | |7,4 |200 |6,5 |12,16 216 | |6,1 |180 |5,85 |4,98 361 | |4,89 |160 |5,2 |6,339 468 | |3,88 |140 |4,55 |17,26 804 | |3,02 |120 |3,9 |29,13 907 | |2,3 |100 |3,25 |41,30 435 | |36,4 |1120 | | | | | | | | | A=V/Q | КОЭФ. А | Z |СТЕФАНА | |0,40 045 |0,0325 |303,4 484 467 |9,862 075 | |0,037 | |252,3 155 307 |8,200 255 | |0,33 889 | |207,2 734 376 |6,736 387 | |0,30 563 | |167,8 181 271 |5,454 089 | |0,27 714 | |133,4 673 316 |4,337 688 | |0,25 167 | |103,7 605 564 |3,372 218 | |0,023 | |78,25 907 956 |2,54 342 |.

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

[pic].

[pic].

Заключение

:

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

Показати весь текст
Заповнити форму поточною роботою