![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 10.03.2009
Сообщений: 8
|
![]()
Привет, ребята, очень нужна ваша помощь )))
Задача не получается, сижу уже который час((( Мне нужно вычислить значение X равного корню N-ой степени из A, для A=0.45, 12, 32, 144 и N=2,3,4,5 методом последовательных приближений, и дали мне такую формулу X[k+1]=(N-1)/N*X[k]+A/(N*X[k] в степени (N-1)) Вычисления производить до |X[k+1]-X[k]|<=E, где E - заданная точность, равная 1E-3 Помогите пожалуйста, не могу понять где ошибка/ошибки у меня((( |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 16.03.2009
Сообщений: 1,013
|
![]()
в 34-й строчке исходного кода.. так сказали мне звезды
Uguu~
|
![]() |
![]() |
![]() |
#3 |
Регистрация: 10.03.2009
Сообщений: 8
|
![]()
сорри(((
у меня прога в модуле только: unit glavn; interface type mas=array[1..10] of integer; map=array[1..10] of real; procedure made (var f1:text;var f2:text;var eps:real); implementation uses crt; procedure made; var k,n,i,j,l,m:integer;a:map;b:mas; x1,x0,x,xb:real; begin reset(f1); reset(f2); i:=0;j:=0; while not eof(f1) do begin inc(i); read(f1,a[i]); end; while not eof(f2) do begin inc(j); read(f2,b[j]); end; for l:=1 to i do begin for m:=1 to j do begin x0:=a[l]/b[m]; xb:=1; for k:=1 to b[m]-1 do xb:=xb*x0; repeat x1:=(b[m]-1)/b[m]*x0+a[l]/(b[m]*xb);x:=x0; x0:=x1; until abs(x1-x)<=eps; write(x1:3:1); end; end; end. в f1 содержатся значения A в f2 N Последний раз редактировалось Кэмерон; 24.05.2009 в 15:08. |
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 16.03.2009
Сообщений: 1,013
|
![]()
смотри как у меня получилось
Код:
у меня из-за начального приближения (-1000) выводится отрицательный корень.. можешь от него брать abs или оба выводить.. это будет правильно P.S. ваш код не смотрел потому, что он оформлен ужасно.. лениво копаться во всем этом.. Я думаю вы переделаете без проблем то что я написал в модуль и с массивами (или как вам будет еще угодно)
Uguu~
Последний раз редактировалось __STDC__; 24.05.2009 в 15:32. |
![]() |
![]() |
![]() |
#5 |
Регистрация: 10.03.2009
Сообщений: 8
|
![]()
а что такое X2 и почему оно -1000 ?
![]() |
![]() |
![]() |
![]() |
#6 |
Участник клуба
Регистрация: 16.03.2009
Сообщений: 1,013
|
![]()
x2 это следующее приближение к корню, -1000 начальное значение, т.к. мы не знаем (ну якобы не знаем) на каком отрезке находится корень... хотя можно зная A выбрать более узкий отрезок.. учитывая что квадратный корень из A меньше 1, можно было бы начальным приближением взять -1...
Uguu~
|
![]() |
![]() |
![]() |
#7 |
Регистрация: 10.03.2009
Сообщений: 8
|
![]()
спасибо огромное, буду пробовать)))
|
![]() |
![]() |
![]() |
#8 |
Участник клуба
Регистрация: 16.03.2009
Сообщений: 1,013
|
![]()
пробуйте) будут вопросы - пишите =)
Uguu~
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перевод кода Delphi-Pascal! Метод Пауэлла | bestlover | Помощь студентам | 3 | 21.12.2009 17:35 |
Pascal, метод Ньютона, вычисление корня ф-ии. | Qousio | Помощь студентам | 2 | 02.05.2009 19:47 |
Метод прямого слияния. Pascal | SeRhy | Помощь студентам | 1 | 04.03.2009 09:36 |