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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.02.2010, 09:56   #1
maloy-rom
Пользователь
 
Регистрация: 23.04.2009
Сообщений: 43
По умолчанию

Решить нелинейное уравнение методом простых итераций с точностью до Е =0,0001
cos(x+0,5)=x3

Что то вообще не получается а скоро уже нужно сдавать
Буду благодарен за помощь

Язык С

что то типа такого
Код:
#include<stdio.h>
#include<conio.h>
#include<math.h>
void main()
{
 float p,pd,y=2.1,x0=0.1,q=0.6359;
 int i=0;
 clrscr();
 pd=?????????;
 for(;fabs(y-x0)>0.0001;)
	{
	 x0=y;
	 y=????????????;
	 i++;
	 printf("y%i=%1.10f \n",i,y);
	}
  puts("\nResultat z tochnistyu E=0.0001 :");
  printf("y=%1.10f \n\n",y);
  p=((pow(q,i))*pd)/(1-q);
  printf("Pohubka=%1.20f",p);
  getch();
}
помогите срочно нужно

Последний раз редактировалось MaTBeu; 13.02.2010 в 22:42.
maloy-rom вне форума Ответить с цитированием
Старый 14.02.2010, 15:51   #2
maloy-rom
Пользователь
 
Регистрация: 23.04.2009
Сообщений: 43
По умолчанию

помогите там же всего пару строчек дописать
maloy-rom вне форума Ответить с цитированием
Старый 14.02.2010, 16:06   #3
Vago
Форумчанин
 
Регистрация: 15.01.2010
Сообщений: 948
По умолчанию

Формат "%1.10f" - "Это от души!.. Достойно восхищения!..".
Код:
#include <stdio.h>
#include <conio.h>
#include <math.h>

#define TESTPRINT

double Equation( double x ) {
   
   return pow( cos(x+0.5), (double)(1./3.) );

}


int main() {
   
   const double eps = 0.0001;

   double   x0, x, xNext;
   int      nIter;

   printf( "x0 = ? " ); scanf( "%lg", &x0 );
   x = x0;
   xNext = Equation( x );
   nIter = 1;

   while ( fabs( xNext-x ) > eps ) {
      x = xNext;
      xNext = Equation( x );
      ++nIter;
#ifdef TESTPRINT
      printf( "%.5g %.5g %d\n", x, xNext, nIter );
#endif
   }

   printf( "The root %.5g has been reached to within %.5g after %d iterations.\n", 
      xNext, eps, nIter );
   getch();

   return 0;

}
Начальная область сходимости - где-то [-2;1]. Выход за неё я не обрабатывал. Можешь попрактиковаться...
Vago вне форума Ответить с цитированием
Старый 14.02.2010, 16:33   #4
Card1nal
Пользователь
 
Регистрация: 31.10.2009
Сообщений: 44
По умолчанию

У меня была программа, рассчитывющая нелинеейное уравнение по бисекции, по ньютону и по секущей. Прада, я тогда её писал на пхп. Скинуть?
Card1nal вне форума Ответить с цитированием
Старый 14.02.2010, 23:14   #5
maloy-rom
Пользователь
 
Регистрация: 23.04.2009
Сообщений: 43
По умолчанию

vago огромное тебе СПАСИБО
Цитата:
Сообщение от Card1nal Посмотреть сообщение
У меня была программа, рассчитывющая нелинеейное уравнение по бисекции, по ньютону и по секущей. Прада, я тогда её писал на пхп. Скинуть?
да если не тяжело
может в скором с таким встречусь

Последний раз редактировалось maloy-rom; 14.02.2010 в 23:16.
maloy-rom вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Метод простых итераций в Delphi Tomoyo Помощь студентам 21 26.12.2009 19:11
линеализовать нелинейное уравнение Alis Помощь студентам 2 28.09.2009 22:22
Метод простых итераций church Общие вопросы C/C++ 3 06.06.2009 15:26
Решение СЛАУ (метод простых итераций) XeN0N Помощь студентам 2 15.02.2009 21:33
как решить нелинейное уравнение методом простых итераций??? Bonifaciy Помощь студентам 3 13.11.2008 17:30