Главная / Рефераты / Рефераты по кибернетике
Реферат: Создание программных продуктов для решения задач
Notice: Undefined variable: ref_img in /home/area7ru/area7.ru/docs/referat.php on line 323
Санкт-Петербургский государственный технологический институт ( Технический университет)
Кафедра Математического моделирования и оптимизации химико-технологических процессов Факультет 5 Курс I Группа 517 Дисциплина: информатика. КУРСОВАЯ РАБОТА Тема: Создание программных продуктов для решения задач. Студент: Хохленко Сергей Дмитриевич Научный руководитель: Гайков Андрей Владимирович Санкт-Петербург 2002 Содержание Введение3 Задание на работу.4 Описание метода...5 Алгоритм построения решения задачи...…6 Глава I….7 Проект. Рабочая форма Visual Basic8 Программный код…..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: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 =...
ВНИМАНИЕ!
Текст просматриваемого вами реферата (доклада, курсовой) урезан на треть (33%)!
Чтобы просматривать этот и другие рефераты полностью, авторизуйтесь на сайте:
|
|
|
Добавлено: 2010.10.21
Просмотров: 1145
|
Notice: Undefined offset: 1 in /home/area7ru/area7.ru/docs/linkmanager/links.php on line 21
При использовании материалов сайта, активная ссылка на AREA7.RU обязательная! |