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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.06.2012, 11:56   #11
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

x^3-3x+1=0

или

x^3+1 = 3x

или

x = (x^3 + 1)/3

Смысл понятен?)

Код:
Public Sub iter()

eps = 0.0001
x = 1
I = 1
Do
  xn = x
  x = (1 + xn ^ 3) / 3
  MsgBox "Step: " & I & "; X=" & x
  I = I + 1
Loop Until Abs(xn - x) < eps

End Sub
вот тут вроде бы правильнее) Можете проверить, подставив значение x в исходное уравнение.
Правильно поставленная задача - три четверти решения.

Последний раз редактировалось DiemonStar; 27.06.2012 в 12:10.
DiemonStar вне форума Ответить с цитированием
Старый 27.06.2012, 12:53   #12
fd_Nikolas
Новичок
Джуниор
 
Регистрация: 26.06.2012
Сообщений: 9
По умолчанию

У меня почему-то х всегда равен 1 на каждом шаге.

Вписал так:
Код:
Public Sub iter()
Dim eps%,x%,i%,xn%
eps = 0.0001
x = 1
I = 1
Do
  xn = x
  x = (1 + xn ^ 3) / 3
  MsgBox "Step: " & I & "; X=" & x
  I = I + 1
Loop Until Abs(xn - x) < eps

End Sub
fd_Nikolas вне форума Ответить с цитированием
Старый 27.06.2012, 13:54   #13
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,309
По умолчанию

Я понимаю, что
Цитата:
не шарю
, но настолько ...

Что значат проценты в описании переменных?

Почитайте хотя бы такую часть темы, как типы данных и способы их описания.

Вы описываете переменные как целого типа, а они вещественного.

Подсказка: Пишите, например, Int и, наведя курсор на это слово, жмете Ctrl+F1. В появившемся окне подсказки ищите объяснение.
Но лучше в книжку.


"Читать, Читать и Читать"- как завещал товарищ ...
А может это был и не он?
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 27.06.2012, 14:37   #14
fd_Nikolas
Новичок
Джуниор
 
Регистрация: 26.06.2012
Сообщений: 9
По умолчанию

Если бы я интересовался данной теме по собственному желанию,я бы наверное и тему бы не создавал и пытался бы понять все самому,да и вряд ли бы это осуществлял в среде VBA...
Но так как меня вообще не привлекают математические задачи,да и которые надо решать в VBA поэтому я не в состоянии их выполнить.
fd_Nikolas вне форума Ответить с цитированием
Старый 27.06.2012, 18:36   #15
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,309
По умолчанию

Если бы я ещё и родился по собственному желанию ...
Если бы да кабы ...
Есть задание и его надо сделать. Важно для себя понять - надо.
Основная часть нашей жизни под этим лозунгом.
Ну да ладно... Это не место для ...

Кстати, а среда VBA уж не так и плоха.
Каждому свое место под этим небом

А вот так (если придерживаться Вашего стиля)?
Код:
Public Sub iter()
Dim eps!, xn!, x!
' Более предпочтительно явное описание
' Dim eps, xn, x As Single

eps = 0.0001
xn = 1
x = (1 + x ^ 3) / 3
While Abs(xn - x) > eps
xn = x
x = (1 + xn ^ 3) / 3
MsgBox x
Wend
End Sub
Пробуй, вроде так ...
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 27.06.2012, 22:16   #16
fd_Nikolas
Новичок
Джуниор
 
Регистрация: 26.06.2012
Сообщений: 9
По умолчанию

Я из принципов "цель не оправдывает средства" в данном случае отношу к данной теме,поэтому я ее создал =)

Да,у меня уже все заработало таким способом:
Код:
Public Sub iter()
Dim eps#, x#, i#, xn#
eps = 0.0001
x = 1
i = 1
Do
  xn = x
  x = (1 + xn ^ 3) / 3
  MsgBox "Шаг: " & i & "; X=" & x
  i = i + 1
Loop Until Abs(xn - x) < eps
End Sub
Спасибо всем за помощь.
fd_Nikolas вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решить СЛАУ методом простых итераций trum Помощь студентам 1 15.04.2012 17:47
решить уравнение методом итераций Evgeniya666777 Помощь студентам 3 16.12.2011 11:13
Решить систему линейных уравнений методом простых итераций на Delphi Кнопик Помощь студентам 2 22.10.2009 16:11
уравнение методом итераций Golovastik Общие вопросы Delphi 2 22.06.2009 15:57
как решить нелинейное уравнение методом простых итераций??? Bonifaciy Помощь студентам 3 13.11.2008 17:30