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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.12.2015, 17:20   #1
sandersonland
 
Регистрация: 14.12.2015
Сообщений: 4
Восклицание Найти сумму бесконечного ряда в Delphi


Слабо понимаю что от меня требуется.
Использовать Goto зарещено

Последний раз редактировалось sandersonland; 14.12.2015 в 17:41.
sandersonland вне форума Ответить с цитированием
Старый 14.12.2015, 17:53   #2
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,504
По умолчанию

Цитата:
Сообщение от sandersonland Посмотреть сообщение
.. Слабо понимаю что от меня требуется.
Использовать Goto зарещено
Требуется, чтобы вы создали программу, которая суммирует до тех пор , пока очередной член не станет меньше этого самого эпсилон.

PS Хотя строго говоря, это не гарантия того, что погрешность вычисления ( остаточный член) будет меньше эпсилон, но чисто методически этого достаточно.

И то, что Go to запрещено, это само собой. Это считается дурным тоном.

Последний раз редактировалось type_Oleg; 14.12.2015 в 17:55.
type_Oleg вне форума Ответить с цитированием
Старый 14.12.2015, 18:08   #3
sandersonland
 
Регистрация: 14.12.2015
Сообщений: 4
По умолчанию

Цитата:
Сообщение от type_Oleg Посмотреть сообщение
...пока очередной член не станет меньше этого самого эпсилон.
А эпсилон как я понимаю вводится с клавиатуры?
Не могли бы вы написать тело программы, если вам не сложно.
sandersonland вне форума Ответить с цитированием
Старый 14.12.2015, 18:11   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Слабо понимаю что от меня требуется.
От тебя требуют примерно такое:http://www.programmersforum.ru/showp...1&postcount=35
Но только в числителе и знаменателе твоя формула.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.12.2015, 20:38   #5
sandersonland
 
Регистрация: 14.12.2015
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
От тебя требуют примерно такое:http://www.programmersforum.ru/showp...1&postcount=35
Но только в числителе и знаменателе твоя формула.
Спасибо.
Я составил программу, но сумма выходит нулевая, не поможете разобраться?
Код:
Program ProjectHome_3;
{$APPTYPE CONSOLE}

var S,A,e,x,z:real; n:integer;
Begin
writeln('Vvedite Znacheniya');
write('e='); readln(e);
writeln('VVNIMANIYE! 0>=x<=2');
write('x='); readln(x);
S:=0;
n:=1;
  while abs(A)>=e do
    Begin
      n:= n +1;
      if (n mod 2 =0) then z:=1 else z:=-1;
      A:=z*(exp(n*ln(x-1))*sin(exp(n*ln(x-1))))/exp(2*ln(n));
      S:=S+A;
    End;
Write('S=',S:10:3);
End.
sandersonland вне форума Ответить с цитированием
Старый 14.12.2015, 21:26   #6
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,504
По умолчанию

Там непонятно, у синуса - что в степени n? Сам синус или его аргумент. Логичнее - что его аргуемнт, иначе все в кучу бы в степень n возвели.

Если уж в Дельфы, то там не надо городить со всякими логприфами-экспонентами, там есть куча всяких функций в Math.
И лучше repeat а не while. Ведь в самом начале - чему у вас равно A?
Код:
{$APPTYPE CONSOLE}

uses  Math;
var S,A,e,x,z,t:real;
            n:integer;
begin
  writeln('Vvedite Znacheniya');
  write('e='); readln(e);
  writeln('VVNIMANIYE! 0>=x<=2');
  write('x='); readln(x);
  S:=0;
  n:=0;
  repeat
    Inc(n);                    // то же, что и n:=n+1, только изящнее
    t:=IntPower(x-1,n);   // одна из волшебных функций из Math VCL Delphi
    A:=t*Sin(t)/(n*n);
    S:=S+A;
  until Abs(A)<e;
  Write('S=',S:10:3);
  ReadLn;                   // чтобы не сразу окошко закрывалось
end.
PS Это кстати не лучший вариант - каждый раз тупо возводить в степень. Лучше - вычислять очередной член через предыдущий.

Последний раз редактировалось type_Oleg; 14.12.2015 в 21:31.
type_Oleg вне форума Ответить с цитированием
Старый 14.12.2015, 22:37   #7
sandersonland
 
Регистрация: 14.12.2015
Сообщений: 4
По умолчанию

Цитата:
Сообщение от type_Oleg Посмотреть сообщение
Там непонятно, у синуса - что в степени n? Сам синус или его аргумент. Логичнее - что его аргуемнт, иначе все в кучу бы в степень n возвели.

Если уж в Дельфы, то там не надо городить со всякими логприфами-экспонентами, там есть куча всяких функций в Math.
И лучше repeat а не while. Ведь в самом начале - чему у вас равно A?
Код:
{$APPTYPE CONSOLE}

uses  Math;
var S,A,e,x,z,t:real;
            n:integer;
begin
  writeln('Vvedite Znacheniya');
  write('e='); readln(e);
  writeln('VVNIMANIYE! 0>=x<=2');
  write('x='); readln(x);
  S:=0;
  n:=0;
  repeat
    Inc(n);                    // то же, что и n:=n+1, только изящнее
    t:=IntPower(x-1,n);   // одна из волшебных функций из Math VCL Delphi
    A:=t*Sin(t)/(n*n);
    S:=S+A;
  until Abs(A)<e;
  Write('S=',S:10:3);
  ReadLn;                   // чтобы не сразу окошко закрывалось
end.
PS Это кстати не лучший вариант - каждый раз тупо возводить в степень. Лучше - вычислять очередной член через предыдущий.
Спасибо! Будем учиться, учиться, и ещё раз учиться .
sandersonland вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с программой для расчета площади треугольника(Delphi) indext Помощь студентам 20 19.10.2015 19:18
Помогите,пожалуйста,с довольно простенькой программой(Delphi) o_O Помощь студентам 4 27.05.2008 11:35
Помогите с программой в Delphi Ruver000 Помощь студентам 5 16.12.2007 15:16
Помогите с программой (на Delphi) SPQR Помощь студентам 1 06.12.2007 20:00