|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.10.2009, 21:34 | #1 |
Регистрация: 29.10.2009
Сообщений: 6
|
Программа на VBA выдаёт ошибки.
Помогите, прогдрамма работает.
Sub metod_Nyutona() Dim x As Double, y As Double Dim a As Double, b As Double, eps As Double Dim Dx As Double, Dy As Double Dim J As Double Dim deltaX As Double, deltaY As Double Dim n As Integer Sheets("Лист1").Select 'ввод данных Cells(6, 1) = "x=" Cells(7, 1) = "y=" Cells(8, 1) = "n=" a = 2.1928 b = 0.8223 eps = 0.001 n = 1 'решение системы уравнений metka: J = 4 - 16 * x Dx = 8 * x ^ 2 - 3 * x - 32 Dy = 16 * x * y - 3 * x ^ 2 - 3 * y - 12 deltaX = Dx / J deltaY = Dy / J x = a + deltaX y = b + deltaY If Abs(deltaX) < eps And Abs(deltaY) < eps Then 'вывод корней уравнения Cells(6, 2) = x Cells(7, 2) = y Cells(8, 2) = n Else a = x b = y n = n + 1 GoTo metka End If End Sub Программа Выдаёт ошибку: Run-time error 5: Invalid procedure call or argument. Как исправить? Sub metod_Nyutona() Dim x As Double, y As Double Dim a As Double, b As Double, eps As Double Dim Dx As Double, Dy As Double Dim J As Double Dim deltaX As Double, deltaY As Double Dim n As Integer Sheets("Лист1").Select 'ввод данных Cells(6, 1) = "x=" Cells(7, 1) = "y=" Cells(8, 1) = "n=" a = 2.1928 b = 0.8223 eps = 0.001 n = 1 'решение системы уравнений metka: J = 60 / 2 * x ^ 0.5 * y + 6 * x * 5 * Sin(y) Dx = -6 * (10 * x ^ 0.5 - 5 * Cos(y)) / y + 5 * Sin(y) * (6 * Log(y) - 3 * x ^ 2) Dy = 10 * (6 * Log(y) - 3 * x ^ 2) / 2 * x ^ 0.5 - 6 * x * (10 * x ^ 0.5 - 5 * Cos(y)) deltaX = Dx / J deltaY = Dy / J x = a + deltaX y = b + deltaY If Abs(deltaX) < eps And Abs(deltaY) < eps Then 'вывод корней уравнения Cells(6, 2) = x Cells(7, 2) = y Cells(8, 2) = n Else a = x b = y n = n + 1 GoTo metka End If End Sub |
29.10.2009, 21:53 | #2 |
Старожил
Регистрация: 02.05.2009
Сообщений: 3,907
|
Ничего удивительного нет
выражение деленное на 0 и логарифм 0 Вот и ошибка Добавте после метки Код:
Анализ,обработка данных Недорого
Последний раз редактировалось doober; 29.10.2009 в 21:58. |
05.11.2009, 15:02 | #3 |
Регистрация: 29.10.2009
Сообщений: 6
|
Помогите! Кто нить может написать программу в VBA для решения системы линейных уравнений методом Гауса?
Система следующая: 1,84x1 +2.25x2+2.53x3=-6.09 2.32x1+2.60x2+2.82x3=-6.98 1.83x1+2.06x2+2.24x3=-5.52 Ход письменного её решения есть, а вот как программу для расчёта в Excel написать не знаю |
05.11.2009, 20:56 | #4 |
Старожил
Регистрация: 02.05.2009
Сообщений: 3,907
|
Для личного пользования решение системы уравнений с тремя неизвестными по методу Гауса.
Для студентов другой вопрос,такие курсовые в Инете денег стоят. Поэтому код закрыт
Анализ,обработка данных Недорого
|
05.11.2009, 21:17 | #5 |
Регистрация: 29.10.2009
Сообщений: 6
|
Это не то, такое решение я в инете в онлайне находил. А мне надо решить данную задачу методом Гауса и Зейделя. А именно текст программы, и это будет всего одно задание за семестр.
|
05.11.2009, 21:38 | #6 | |
Старожил
Регистрация: 02.05.2009
Сообщений: 3,907
|
Цитата:
Можно и методом Гауса и Зейделя.
Анализ,обработка данных Недорого
|
|
05.11.2009, 22:35 | #7 |
Регистрация: 29.10.2009
Сообщений: 6
|
|
06.11.2009, 12:30 | #8 |
Регистрация: 29.10.2009
Сообщений: 6
|
Помогите, пожалуйста, исправить программу для решения системы линейных уравнений методом Зейделя. (Если она вообще корректно составлена).
Sub metod_Zeydelya() Dim a11 As Double, a21 As Double, a31 As Double Dim a12 As Double, a22 As Double, a32 As Double Dim a13 As Double, a23 As Double, a33 As Double Dim b1 As Double, b2 As Double, b3 As Double Dim x1 As Double, x2 As Double, x3 As Double Dim x1k As Double, x2k As Double, x3k As Double Dim eps As Double, n As Integer Sheets("Лист1").Select Cells(1, 6) = "Ввод исходных данных" Cells(10, 6) = "Вывод результатов" Cells(3, 1) = "a11 =" Cells(4, 1) = "a21 =" Cells(5, 1) = "a31 =" Cells(3, 4) = "a12 =" Cells(4, 4) = "a22 =" Cells(5, 4) = "a32 =" Cells(3, 7) = "a13 =" Cells(4, 7) = "a23 =" Cells(5, 7) = "a33 =" Cells(3, 10) = "b1 =" Cells(4, 10) = "b2 =" Cells(5, 10) = "b3 =" Cells(12, 1) = "x1 =" Cells(12, 4) = "x2 =" Cells(12, 7) = "x3 =" Cells(12, 10) = "n =" Cells(8, 5) = "eps=" a11 = Cells(3, 2) a21 = Cells(4, 2) a31 = Cells(5, 2) a12 = Cells(3, 5) a22 = Cells(4, 5) a32 = Cells(5, 5) a13 = Cells(3, 8) a23 = Cells(4, 8) a33 = Cells(5, 8) b1 = Cells(3, 11) b2 = Cells(4, 11) b3 = Cells(5, 11) eps = Cells(8, 6) n = 1 x1k = 0 x2k = 0 x3k = 0 metka: x1 = 1 / a11 * (b1 - a12 * x2k - a13 * x3k) x2 = 1 / a22 * (b2 - a21 * x1 - a23 * x3k) x3 = 1 / a33 * (b3 - a31 * x1 - a32 * x2) If Abs(x1 - x1k) < eps And Abs(x2 - x2k) < eps And Abs(x3 - x3k) < eps Then Cells(12, 2) = x1 Cells(12, 5) = x2 Cells(12, 8) = x3 Cells(12, 11) = n Else x1k = x1 x2k = x2 x3k = x3 n = n + 1 GoTo metka End If End Sub |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
программа на С++.помогите исправить ошибки | Юлияw52 | Помощь студентам | 4 | 16.09.2009 22:25 |
Ошибки VBA | nikolai_P | Microsoft Office Excel | 15 | 23.07.2009 17:54 |
Программа на VBA в виде функции пользователя | Strel'nikova | Помощь студентам | 3 | 31.10.2008 13:53 |
Подскажите где ошибки? Не работает программа на Паскале | ЯншинаВера | Помощь студентам | 1 | 21.05.2008 19:47 |