|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
20.12.2012, 15:29 | #1 |
Новичок
Джуниор
Регистрация: 20.12.2012
Сообщений: 3
|
Программа в бейсике!
Помогите пожалуйста найти ошибку...
DIM Eps AS SINGLE CONST n = 2 DIM i AS INTEGER, j AS INTEGER DIM k AS INTEGER, d AS DOUBLE Private Sub Command1_Click() DIM A(1 TO n, 1 TO n) AS DOUBLE DIM b(1 TO n) AS DOUBLE DIM dx(1 TO n) AS DOUBLE DIM it AS INTEGER DIM x0 AS DOUBLE DIM y0 AS DOUBLE x0 = VAL(InputBox("Vvedite x0", x0)) y0 = VAL(InputBox("Vvedite y0", y0)) Eps = VAL(InputBox("Vvedite eps", Eps)) PRINT "Vxodnye dannye" PRINT "x0="; x0 PRINT "y0="; y0 PRINT "eps="; Eps '-F1(x0,y0)=dF1dX(x0,y0)*dx(1)+dF1dY( x0,y0)*dx(2) '-F2(x0,y0)=dF2dX(x0,y0)*dx(1)+dF2dY( x0,y0)*dx(2) it = 0 DO it = it + 1 b(1) = -F1(x0, y0) b(2) = -F2(x0, y0) FOR i = 1 TO n FOR k = 1 TO n A(i, k) = fxy(x0, y0, i, k) NEXT k NEXT i CALL Gauss(A(), b(), dx()) x0 = x0 + dx(1) y0 = y0 + dx(2) LOOP UNTIL Normal(dx()) < Eps PRINT "Resultat" PRINT "x="; x0 PRINT "y="; y0 PRINT "F1(x,y)="; F1(x0, y0) PRINT "F2(x,y)="; F2(x0, y0) PRINT "kol-vo iteraziy N ="; Str(it) End Sub Private Function F1(x As Double, y As Double) As Double F1 = 2 * x * x - y End Function Private Function F2(x As Double, y As Double) As Double F2 = 5 * x - y * y - 1 End Function Public Function fxy(x As Double, y As Double, i As Integer) As Double IF i = 1 THEN IF k = 1 THEN fxy = 4 * x ELSE fxy = -1 END IF ELSE IF k = 1 THEN fxy = 5 ELSE fxy = -2 * y END IF END IF End Function Private Function Normal(x() As Double) As Double d = 0 FOR i = 1 TO n d = d + x(i) ^ 2 NEXT i Norma = SQR(d) End Function Private Sub Gauss(Al() As Double, b() As Double, x() As Double) FOR i = 1 TO n - 1 FOR k = i + 1 TO n d = A(k, i) / A(i, i) FOR j = i TO n A(k, j) = A(k, j) - A(i, j) * d NEXT j b(k) = b(k) - b(i) * d NEXT k NEXT i d = 1 FOR i = 1 TO n d = d * A(i, i) NEXT i IF d = 0 THEN MsgBox "Yabian raven nuly", vbOKOnly EXIT DEF END IF x(n) = b(n) / A(n, n) FOR i = n - 1 TO 1 STEP -1 FOR j = i + 1 TO n b(i) = b(i) - A(i, j) * x(j) NEXT j x(i) = b(i) / A(i, i) NEXT i End Sub |
20.12.2012, 16:06 | #2 |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Оля_0290, это что? Тест такой, на тему, "найдите семь отличий в рисунке"?
Какая ошибка? Каие данные? что должно вводиться? Что должно получиться? И код нужно соответствующим образом оформлять.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
20.12.2012, 19:18 | #3 |
Новичок
Джуниор
Регистрация: 20.12.2012
Сообщений: 3
|
Задание: решение системы нелинейных уравнений методом ньютона.
2*x^2-y=0 5*x-y^2=1 там много ошибок. но в начале где-то где написано prrivate sub пишет ошибку expected: end-of-statement |
20.12.2012, 19:21 | #4 |
Новичок
Джуниор
Регистрация: 20.12.2012
Сообщений: 3
|
Если не сможете ошибки найти, помогите пожалуйста другую программу написать можно в паскале можно в бейсике же.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
программа на бейсике | marisha12345 | Помощь студентам | 2 | 15.04.2011 21:34 |
Программа на Бейсике | marisha12345 | Помощь студентам | 2 | 09.04.2011 08:36 |
Задание на бейсике | Duran | Помощь студентам | 3 | 08.03.2011 14:19 |
программа на бейсике | Дарьюша | Помощь студентам | 2 | 17.02.2011 14:02 |