• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Разложение в ряд в Pascal

  • Автор темы Автор темы APTEMKA
  • Дата начала Дата начала

APTEMKA

Ученик
Регистрация
15 Мар 2018
Сообщения
1
Реакции
0
Баллы
0
Разложение в ряд в Pascal

Здравствуйте,форумчане.Нужна помощь с этим,вторым, заданием.Как табулировать и строить таблицу я знаю,но не знаю,как начать. Учитель объяснял отдалённо,но я понял,что необязательно считать каждый член,достаточно лишь умножать предыдущий на какое-то число d,которое находится по формуле: d:=N/N[i-1].
Вот мои тщетные попытки,уже не соображаю,если честно.Заранее спасибо.
Program bulbul;
var N:array [0..100] of double;
d:array [0..100] of double;
i:integer;x:double;
Const e=0.001;
function f(x:double):double;
begin
i:=0;
while d<=e do begin
N[0]:=x;
N[1]:=-exp(ln(x)*3)/6;
d:=N/N[i-1];
result:=d*N[i-1];
end;
end;
Var y:double;
begin
while d<=e do begin
y:=f(x);
end;
writeln(y);
end.
 

Вложения

  • Без имени-1.webp
    Без имени-1.webp
    84.4 KB · Просмотры: 223
Вот мои тщетные попытки,уже не соображаю,если честно.Заранее спасибо.
Да пожалуйста — ничего сложного. Разбирайтесь, спрашивайте...
Код:
Program bulbul;

Const
 A=3.0;

Var
 i:integer;
 z,Step:double;

function Sum(x:double):double;
var
 S,B_old,B_new,Eps:double;
 N:Integer;
begin
 B_old:=x;
 S:=B_old;
 N:=0;
 Repeat
  Inc(N);
  B_new:=-B_old*x*x/(2*N*(2*N+1));
  S:=S+B_new;
  Eps:=Abs(B_old-B_new);
  B_old:=B_new;
 Until (1+Eps)=1;
 Sum:=S;
end;

Begin
 Step:=A/20;
 for i:=0 to 20 do
  begin
   z:=Step*i;
   Writeln(z:4:2,'    ',Sum(z),'    ',Sin(z));
  end;
 Readln;
End.
 
Назад
Сверху