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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.05.2012, 17:10   #1
marcaa
Новичок
Джуниор
 
Регистрация: 24.05.2012
Сообщений: 1
Смущение Необходимо найти ошибку в коде VB6

Писал программу все бы ничего только, зараз, не хочет работать.
Писал на Visual basic 6.
код:
Код:
Dim x(), e(), em(), o() As Single
Private i, n As Integer
Private x0, xk, y0, h, miny, maxy, minx, maxx As Single
Functiоn f(a, b) As Single
f = (Exp(a) - b) / a
End Functiоn
Private Sub Eiler()
ReDim x(n + 1)
ReDim e(n + 1)
e(0) = y0
For i = 0 To n
x(i) = x0 + (i * h)
e(i + 1) = e(i) + h * f(x(i), e(i))
Next i
End Sub
Private Sub EilerM()
ReDim x(n + 1)
ReDim em(n + 1)
em(0) = y0
For i = 0 To n
x(i) = x0 + i * h
em(i + 1) = em(i) + h * f(x(i) + h / 2, em(i) + h / 2 * f(x(i), em(i)))
Next i
End Sub
Private Sub Obhee()
ReDim x(n + 1)
ReDim o(n + 1)
maxy = y0
miny = y0
maxx = x0
minx = x0
For i = 0 To n
x(i) = x0 + (i * h)
o(i) = (Exp(x(i)) + 1 - Exp(1)) / x(i)
Next i
End Sub
Private Sub Command1_Click()
x0 = Val(Text1.Text)
y0 = Val(Text2.Text)
xk = Val(Text3.Text)
h = Val(Text4.Text)
n = Round((xk - x0) / h)
MSFlexGrid1.Cols = 4
MSFlexGrid1.Rows = n + 2
MSFlexGrid1.TextMatrix(0, 0) = "x"
MSFlexGrid1.TextMatrix(0, 1) = "Общее рещение"
MSFlexGrid1.TextMatrix(0, 2) = "эйлер"
MSFlexGrid1.TextMatrix(0, 3) = "Эйлер модиф."

Eiler
EilerM
Obhee
For i = 0 To n
MSFlexGrid1.TextMatrix(i + 1, 0) = Str(x(i))
MSFlexGrid1.TextMatrix(i + 1, 1) = Str(o(i))
MSFlexGrid1.TextMatrix(i + 1, 2) = Str(e(i))
MSFlexGrid1.TextMatrix(i + 1, 3) = Str(em(i))
Next i
minx = x(0)
maxx = x(n)
miny = o(0)
maxy = o(n)
If e(n) > o(n) Then maxy = e(n)
If em(n) > o(n) Then maxy = em(n)
If e(n) > em(n) Then maxy = e(n)
Label10.Captiоn = Str(miny)
Label11.Captiоn = Str(maxy)
Label8.Captiоn = Str(minx)
Label12.Captiоn = Str(maxx)
Picture1.Cls
kx = (Picture1.Width - 1200) / (xk - x0)
ky = (Picture1.Height - 1000) / (maxy - miny)
For i = 0 To n - 1
z1 = (720 + (x(i) - x0) * kx)
z2 = (5400 - (e(i) - miny) * ky)
z3 = (720 + (x(i + 1) - x0) * kx)
z4 = (5400 - (e(i + 1) - miny) * ky)
Picture1.Line (z1, z2)-(z3, z4), RGB(9999, 0, 0)
Next i
For i = 0 To n - 1
z1 = (720 + (x(i) - x0) * kx)
z2 = (5400 - (em(i) - miny) * ky)
z3 = (720 + (x(i + 1) - x0) * kx)
z4 = (5400 - (em(i + 1) - miny) * ky)
Picture1.Line (z1, z2)-(z3, z4), RGB(0, 9999, 0)
Next i
For i = 0 To n - 1
z1 = (720 + (x(i) - x0) * kx)
z2 = (5400 - (o(i) - miny) * ky)
z3 = (720 + (x(i + 1) - x0) * kx)
z4 = (5400 - (o(i + 1) - miny) * ky)
Picture1.Line (z1, z2)-(z3, z4), RGB(0, 0, 9999)
Next i
End Sub
Помогите найти ошибку. необходимо решить уравнение методом Эйлера.

Последний раз редактировалось ACE Valery; 24.05.2012 в 18:02.
marcaa вне форума Ответить с цитированием
Старый 24.05.2012, 18:03   #2
ACE Valery
Сама себе режиссер
Старожил
 
Аватар для ACE Valery
 
Регистрация: 27.04.2007
Сообщений: 3,365
По умолчанию

Цитата:
Необходимо найти ошибку в коде VB6
Необходимо описать проблему.
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
ACE Valery вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти ошибку в коде,С++ ! Aaaaaa111 Помощь студентам 1 16.02.2012 11:10
Необходимо найти ошибку Eldrich JavaScript, Ajax 6 26.02.2011 16:38
Необходимо найти ошибку, задача на языке С ПеПпИ Помощь студентам 8 14.11.2010 19:58
Турбо паскаль:программа находящая сумму ряда(необходимо найти ошибку в коде) Galchonok Помощь студентам 5 12.06.2010 15:10