Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.05.2010, 20:40   #1
polinka92
Новичок
Джуниор
 
Регистрация: 16.05.2010
Сообщений: 2
По умолчанию перевести с basic на Delphi

помогите пожалуйста, очень нужно. ни как не могу сделать(

Cv= 9R/(Q/T)^3 * (интеграл от 0т 0,00001 до Q/T (x^4*e^x/((e^x-1)^2) dx

Q/T = 0.1; 1; 1.5; 2;3;
R=8, 31
Для вычисления интеграла использовать метод Симпсона с заданной точностью eps. Вычисление интеграла оформить в виде процедуры . Вычисление подынтегральной функции оформить в виде функции.

А вот на Бейсике
Dim g As Integer
Dim q() As Single, Cv() As Single, d() As Single, n As Integer, m As Integer
Private Sub Command1_Click()
Dim i As Integer
Const eps = 0.00001
g = m
Const a As Single = 0.00001
Const R = 8.31
MSFlexGrid1.Rows = g + 1
MSFlexGrid1.Row = 0
MSFlexGrid1.Col = 0
MSFlexGrid1.Text = "N"
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = "Q/T"
MSFlexGrid1.Col = 2
MSFlexGrid1.Text = "Cv"
For i = 1 To g
MSFlexGrid1.Row = i
MSFlexGrid1.Col = 0
MSFlexGrid1.Text = i - 1
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = q(i)
MSFlexGrid1.Col = 2
MSFlexGrid1.Text = Cv(i)
Next i
End Sub
Function Simpson(ByVal a As Single, b As Single, eps As Single)
Dim i As Integer, s1 As Single, s2 As Single, R As Single, h As Single, n As Integer, x As Single
Dim Int1 As Single, Int2 As Single
n = 20
h = (b - a) / n
Int2 = f(a) * (b - a)
Z = f(a) + f(b)
Do
Int1 = Int2
s1 = 0
s2 = 0
For i = 1 To n - 1
x = a + i * h
If i Mod 2 = 0 Then
s2 = s2 + f(x)
Else
s1 = s1 + f(x)
End If
Next i
Int2 = (h / 3) * (4 * s1 + 2 * s2 + Z)
n = 2 * n
h = h / 2
Loop Until Abs(Int2 - Int1) <= eps
Simpson = Int2
End Function
Function f(x As Single) As Single
f = (x ^ 4 * Exp(x)) / (Exp(x) - 1) ^ 2
End Function

Private Sub Command2_Click()
Const a As Single = 0.00001
Dim i As Integer, d() As Single
m = InputBox("Количество соотношений")
ReDim q(m) As Single, Cv(m) As Single
ReDim d(m, 2) As Single
Const R = 8.31
Const eps = 0.00001
For i = 1 To m
q(i) = InputBox("Введите Q/T для опыта" + CStr(i))
Cv(i) = ((9 * R) / q(i) ^ 3) * Simpson(a, q(i), eps)
Next i
Command1.Enabled = True
Command3.Enabled = True
End Sub

Private Sub Command3_Click()
Dim i As Integer
n = m
ReDim d(1 To n, 1 To 2)
For i = 1 To n

d(i, 1) = q(i)
d(i, 2) = Cv(i)
Next i
График.ChartData = d
End Sub

Private Sub Command4_Click()
Dim q As Single, Cv As Single
Const R = 8.31
Const a As Single = 0.00001
Const eps = 0.00001
q = InputBox("введите отношение Q/T для одного опыта")
Cv = ((9 * R) / q ^ 3) * Simpson(a, q, eps)
MsgBox "Cv= " & CStr(Cv), 1, "Cv"
End Sub

Private Sub Form_Load()
Command1.Enabled = False
Command3.Enabled = False
End Sub
polinka92 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
перевести код с basic на delphi Kigmatig Помощь студентам 1 08.02.2010 09:46
Перевести из visual basic в С# Ponvit Общие вопросы .NET 5 30.04.2009 10:15
Перевести с С++ на Delphi DeFaber Общие вопросы C/C++ 2 12.01.2008 06:02
Помогите перевести наипростейшую программу в Visual Basic из Delphi Cooler Общие вопросы Delphi 1 20.11.2006 21:21