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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.03.2009, 17:47   #1
roller
 
Регистрация: 12.03.2009
Сообщений: 5
Восклицание помогите пожалуйста решить задачу на Pascal'e.

Здравствуйте!помогите пожалуйста решить данную задачу.В Паскале я слаб...если честно,то я даже не представляю как решить эту задачу:

По заданному полиному Pn(x)=Summa(от i=0 до n) ai*x^(n-i) найдите коэффициенты полинома Q(n+1)(x)=Integral(от 0 до x) Pn(t) dt.

Расшифрую сумму и интеграл на человеческий язык,а то написал непонятно я:

Pn (n-нижний индекс) от (х)=Сумме(от i=0 до n) выражения: ai (i-нижний индекс) умноженное на х в степени n-i.

Q(n+1) (n+1-нижний индекс)=Интегралу(от 0 до х) Pn(n-нижний индекс) от (t) по dt.

вот на всякий случай еще изображения суммы,интеграла и определения полинома.


http://img17.imageshack.us/img17/980/summa.jpg


Заранее огромнейшее спасибо за помощь! =)
roller вне форума Ответить с цитированием
Старый 12.03.2009, 19:11   #2
Сергей089
Форумчанин
 
Регистрация: 22.09.2008
Сообщений: 214
По умолчанию

Нужно было просто интеграл посчитать?

Код:
program polinom;
uses crt;
const m=100;
var a,b:array [0..m] of real;
    i,n,k:integer;
begin
clrscr;
repeat
write ('n=');
readln (n);
until (n>0) and (n<=m);
for i:=0 to n do
    begin
    write ('a',i,'=');
    readln (a[i]);
    end;
k:=n+1;
for i:=0 to n do
    begin
    b[i]:=a[i]/k;
    k:=k-1;
    end;
writeln ('Resultat:');
k:=n+1;
for i:=0 to n do
    begin
    write (b[i]:7:2,'x^',k);
    k:=k-1;
    end;
end.
Сергей089 вне форума Ответить с цитированием
Старый 12.03.2009, 19:45   #3
capta1n
Форумчанин
 
Аватар для capta1n
 
Регистрация: 06.12.2008
Сообщений: 613
По умолчанию

ну вот что-то такое, написал только для целых положительных степеней:

Код:
program polinom1;
type
  link = ^mem;
  mem = record
          a : real;
          next : link
        end;
var
  polinom,pols : link;
  n,n1 : integer;
  a : real;
  i : word;
begin
  write ('Vvedite stepen'' polinoma: '); readln (n);
  polinom:=nil;
  writeln ('Napishite koefficienti polinoma: ');
  for i:=0 to n do
  begin
    write ('a',i,'= '); readln (a);
    if polinom=nil then
    begin
      new(polinom);
      polinom^.a:=a;
      polinom^.next:=nil;
      pols:=polinom
    end
    else
    begin
      new(pols^.next);
      pols:=pols^.next;
      pols^.a:=a;
      pols^.next:=nil
    end
  end;

  pols:=polinom;
  i:=0;
  while pols<>nil do
  begin
    if pols^.a>=0 then write ('+',pols^.a/(i+1):0:2,'x^',i+1)
                  else write (pols^.a/(i+1):0:2,'x^',i+1);
    pols:=pols^.next;
    inc(i);
    dec(n1)
  end;
  readln
end.
capta1n вне форума Ответить с цитированием
Старый 12.03.2009, 20:27   #4
roller
 
Регистрация: 12.03.2009
Сообщений: 5
По умолчанию

спасибо огромное за решение,но только можешь подправить задачу(т.е. сделать чуть полегче).Просто у тебя тут какие-то mem=record,linki... мы такое не используем в универе.и еще nil не знаю что это.пожалуйста,если можешь сделай задачу на уровне начинающего,а не профессионала.

Последний раз редактировалось roller; 12.03.2009 в 20:34.
roller вне форума Ответить с цитированием
Старый 12.03.2009, 20:28   #5
capta1n
Форумчанин
 
Аватар для capta1n
 
Регистрация: 06.12.2008
Сообщений: 613
По умолчанию

Цитата:
pols^.a/(i+1)
вот тебе и коэффициент новый
capta1n вне форума Ответить с цитированием
Старый 12.03.2009, 21:19   #6
capta1n
Форумчанин
 
Аватар для capta1n
 
Регистрация: 06.12.2008
Сообщений: 613
По умолчанию

ну это я сделал с линейными списками, чтобы можно было вводить сколько угодно большую степень, сейчас времени нет переделывать
capta1n вне форума Ответить с цитированием
Старый 12.03.2009, 21:21   #7
roller
 
Регистрация: 12.03.2009
Сообщений: 5
По умолчанию

вот нужный уровень(пример из методички) :
Изображения
Тип файла: jpg стр7.jpg (48.3 Кб, 144 просмотров)
Тип файла: jpg стр6.jpg (83.5 Кб, 143 просмотров)
roller вне форума Ответить с цитированием
Старый 12.03.2009, 21:22   #8
roller
 
Регистрация: 12.03.2009
Сообщений: 5
По умолчанию

сделай полегче пожалуйста.если это возможно.а то нынешнее поймут в универе что не я делал...

когда сможешь.время до понедельника есть.

только поправь пожаалуйста.

Последний раз редактировалось roller; 13.03.2009 в 10:23.
roller вне форума Ответить с цитированием
Старый 13.03.2009, 10:48   #9
roller
 
Регистрация: 12.03.2009
Сообщений: 5
По умолчанию

Народ,напишите программу пожалуйста на более легком уровне!очень прошу!
roller вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите пожалуйста решить задачи в PASCAL'e. bear12345 Помощь студентам 6 04.03.2009 20:54
Помогите решить задачу, пожалуйста! Elizaveta Паскаль, Turbo Pascal, PascalABC.NET 1 10.11.2008 02:29
Помогите решить задачу пожалуйста Никитка89 Паскаль, Turbo Pascal, PascalABC.NET 3 29.05.2008 08:35