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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.06.2010, 23:12   #1
Раздва
 
Регистрация: 01.06.2010
Сообщений: 5
По умолчанию Найти сумму ряда с необходимой точностью на паскале

Данная программа находит сумму ряда. Ряд , где n от 1 до бесконечности. Задаётся х и е, е - это необходимая точность, и как только n-й член ряда станет меньше e, то программа завершается и подсчитывает сумму членов, кроме того, что меньше е. Также программа выводит количество этих членов.
Здесь используется функция ln(x), и проблема в том, что я х должен быть в этой функции только положительный, а мне нужно, чтобы и с отрицательными тоже работало.
Вот код программы:

Код:
Program tochnoct;
var x,e,s,ch:real;
    n,i:integer;
begin
  write('Введите x: ');
  readln(x);
  write('Введите e: ');
  readln(e);
  n:=0;
  s:=0;
  ch:=0;
  repeat
    s:=s+ch;
    inc(n);
    ch:=n/exp(n*ln(x));
  until(ch<e);
  writeln('Rezultat: ',s:0:16,' , ',n-1,' chlenow');
  readln;
end.
Подскажите, как решить эту проблему?
Раздва вне форума Ответить с цитированием
Старый 02.06.2010, 10:05   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
а мне нужно, чтобы и с отрицательными тоже работало.
Если не опшибаюсь логарифм оттрицательного числа не берется.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.10.2011, 17:18   #3
gylayko
Форумчанин
 
Регистрация: 14.09.2011
Сообщений: 203
По умолчанию

втыкни перед логарифмом модуль!
gylayko вне форума Ответить с цитированием
Старый 06.10.2011, 01:28   #4
Firstchar
Пользователь
 
Регистрация: 29.09.2011
Сообщений: 23
По умолчанию

создай еще одну переменную
например, когда мне в цикле нужно записать что-то типа (-1)^n
я беру переменную d и присваиваю ей 1, а потом в цикле просто записываю d:=d*(-1)
а ну и получается что с каждым выполнением цикла степень D возрастает
Firstchar вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вычислить сумму ряда с точностью e GULNARA666 Помощь студентам 0 20.04.2010 21:19
Найти сумму ряда с точностью до 0.0001 и перевод формулы n-ого члена ivil19 Помощь студентам 5 05.03.2010 06:50
найти бесконечную сумму ряда с заданной точностью логарифм Паскаль, Turbo Pascal, PascalABC.NET 1 23.07.2009 07:17
Найти сумму ряда с точностью e, если дан общий член этого ряда JiLiYa Общие вопросы C/C++ 2 18.02.2009 11:11
Найти сумму ряда с точностью Е=10^-3 Добрый Кот Паскаль, Turbo Pascal, PascalABC.NET 2 12.12.2007 12:04