Ищется решения для такой задачи : Вычислить сумму ряда: S=X+(x(в пятой степени)/5)+......(x(в степени4n+1)/4n+1)
0.1<=x<=0.8 n=30! шаг равен h=0.07
Решение смотрите выше. Это не факториал, а просто опечатка...
Плиз, очень срочно, нужно завтра:
Вычислить сумму ряда методом интераций:
x + (x^3)/3! + ... + (x^(2n+1))/(2n+1)! [a=0; b=1] ( ! - факториал )
Нужно на делфе, но и на паскале думаю разберусь...
Очень нужно, помогите плиз
Добавлено (21.10.04 14:55):
Чуть не забыл.
Погрешность e = 0,0001
именно точность
другими словами член ряда не должен быть меньше e=0,0001 так чтоль???
а X вводится с клавиатуры из промежутка ( a,b )??
Нет, при вычислении шаг какого-либо действия должне быть не более e
Вообще можно понимать по разному точность может быть достигнута когда
An станет меньше "e" или есть ещё такой вариант когда pазница междy An и An-1 бyдет меньше чем "e". Oleg_Z думаю это ты и имел ввиду!!! На первом курсе я применял первый вариант, учительница посчитала это правильным!!!
Думаю здесь условие не точное!!!
Wert Для начала узнай что будут от тебя требовать в отношении "e", а потом мы еже помогём чем смогём!!
под е подразумевается именно точность
"другими словами член ряда не должен быть меньше e=0,0001 так чтоль???
а X вводится с клавиатуры из промежутка ( a,b )??"
ДА
Заранее спасибо
У меня есть похожее приложение но для другого варианта, но в делфи, как собственно почти во всех других языках программирования я смыслю мало, поэтому даже переделать под свой вариант не могу
Далее привожу текст того приложения (задание того варианта мне не известно...), приложение консольное:
однако я не уверен в правильности этого кода...
Большое спасибо!!!
Но наверное я совсем тупой...
Просто до этого по глупости я не изучал языков программирования.
Я просто ума не приложу как написать в коде эту функцию...
Ведь не напишешь же ее так:
x + (x^3)/3! + ... + (x^(2n+1))/(2n+1)!
И куда этот факториал вставлять?
Может так?
Так не пробовал ? :D
program wert;
const
eps = 0.0001;
a = 0.0; b = 1.0;
var
x, s, item: real;
count: integer;
begin
writeln('input x [',a:1:1,', ',b:1:1, ']');
readln(x);
count := 0;
item := x;
s := item;
repeat
inc(count);
item := (item * sqr(x)) /
((2*count)*(2*count+1));
s := s + item;
until item < eps;
writeln( 's = ', s:12:7 );
writeln( 'counter = ', count );
writeln( 'last row item = ', item:12:7 )
end.
zx1024
А у тебя код получше ... Старею
Блин.
Помогите идиоту
Вольво, этот код для консольного приложения?
Я вставляю в консольное а оно выдает: Runtime Error 105
Пожалуйста, напишите уже готовый вариант, если не сложно конечно, а то для меня это как древнегреческий...
:((((((((((((((((((((((((((((((((((((((((((((((
А если переделать так, то при введении х и нажатия Ентер вылетает:
program Project1;
{$APPTYPE CONSOLE}
uses
SysUtils;
const
eps = 0.0001;
a = 0.0; b = 1.0;
var
x, s, item: real;
count: integer;
begin
writeln('input x [',a:1:1,', ',b:1:1, ']');
readln(x);
count := 0;
item := x;
s := item;
repeat
inc(count);
item := (item * sqr(x)) /
((2*count)*(2*count+1));
s := s + item;
until item < eps;
writeln( 's = ', s:12:7 );
writeln( 'counter = ', count );
writeln( 'last row item = ', item:12:7 )
end
Она не вылетает. Она заканчивает свою работу и закрывает окно.
Поставь в конце readln
Поставил, а он выделил как ошибку...
Где именно поставить, и что именно поставить?
"readln;" прямо перед "end." ???
АААААААААААААААААААААААААААААА!!!!!!
С П А С И Б О ! ! !
В С Е Р А Б О Т А Е Т ! ! !
ОГРОМНОЕ СПАСИБО ВСЕМ ЗА ПОМОЩЬ И ПОДДЕРЖКУ!!!!!!!!!!!!!!!!
Чувствую, что нагло испытываю ваше терпение, посему на этот пост можете не отвечать...
Нам задавали 2 проги...
Вторую надо сделать в оконном варианте...
Вот задание для нее:
Решить методом Ньютона (В качестве первого приближения взять значение примерно на 50% отличающееся от приближенного значения корня) и секущих:
x*tg x - 1/3 = 0
x ~=~ 0,5472
Вобщем это наверное уже наглость, так что можете меня послать...
Но если найдется время помогите плиз...
zx1024 volvo Зацените!!!!
А что если так сделать!!!
program wert;
const
eps = 0.0001;
a = 0.0; b = 1.0;
var
x, s, An : real;
fac,n: integer;
function f(k:integer):longint;
begin
if k = 1 then f := 1 else f := k * f(k-1);
end;
begin
writeln('input x [',a:1:1,', ',b:1:1, ']');
readln(x);
n:=1;
s := 0;
repeat
fac:=(2*n+1);
An := exp((2*n+1)*ln(x))/f(fac);
s := s + An;
inc(n);
until An < eps;
writeln( 's = ', s:12:7 );
end.
Amro
делаешь лишнее действие. Тогда уже так:
repeat
fac:=(2*n+1);
An := exp((2*n+1)*ln(x))/f(fac);
s := s + An;
inc(n);
until An < eps;
repeat
fac:=(2*n+1);
An := exp((fac)*ln(x))/f(fac);
s := s + An;
inc(n);
until An < eps;
volvo Да верно подмечено!!! А сам вариант как???
Amro
Вообще красиво смотрится. Но рекурсия... А если число итераций увеличится?
Amro
s := 0;
s := x;
n:=1;так
n:=0;
Подскажите плиз!
Как в Делфи обозначается тангенс???
Пишу cos - понимает, что это такое, пишу tg, tan или tang - выделяет как ошибку!
Подскажите, срочно надо...
а слабо написать sin\cos ?
Блин, и се я сам не догадался!
СПАСИБО!