Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи по C/С++

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

topotuno



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

program ITERAT;
{uses crt;}
 
const max_iter=100;   {???????????? ?????????? ????????}
var
 i :integer;
 x,x0,eps,M :real;
 
 
 
 
function F(x:real):real; {функция}
 begin
   F:=5*x*x-exp(1-x)-4;
 end;
 
begin {основная программа}
 clrscr;
 write('Введите приближенное значение x='); readln(x);
 write('Введите точность вычислений eps='); readln(eps);
 
 i:=0;
 repeat
   M:=-(F(x+eps)-F(x-eps))/(2*eps); {коэффициент для улучшения сходимости}
   x0:=x;
   x:=x0+F(x0)/M; {сердце метода итераций}
   inc(i);
   writeln('--- Итерация ',i:3,'   x=',x);
   writeln('F(x)=',F(x),'    точность=',abs(x-x0));
 until (abs(x-x0)<=eps)or(i>max_iter);
 
 if (abs(x-x0)<=eps) then writeln('Ответ: X=',x)
 else writeln('Ответ не найден! За ',max_iter:0,' шагов итерация не сошлась.');
 
end.
 

Всего записей: 315 | Зарегистр. 28-10-2006 | Отправлено: 16:45 13-04-2008 | Исправлено: topotuno, 17:04 13-04-2008
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи по C/С++


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru