Приближённое вычисление суммы бесконечно убывающего ряда - Turbo Pascal (248581)

Узнай цену своей работы

Формулировка задачи:

Приходится обратиться к ранее рассматриваемой книжной программе из книги Паскаль для школьников, 2005 год. Пример 7.1 со стр. 113. Хотелось бы довести её до ума. Приближённое вычисление суммы бесконечно убывающего ряда: 1 + + + + + + + + + … 1+х/1!+х^2/2!+x^3/3!+x^4/4!+x^5/5!+x^6/6!+x^7/7!+x^8/8!+x^9/9!+… Зададим Х = 2 и Eps = 0.005. Десятое слагаемое x^9/9!=512/362880 = 0.0014 < Eps = 0.005. Поэтому количество слагаемых должно быть 9 и сумма их S = 7.3873. Вот эта программа. В ней добавлены строки 11, 18, 21 и 22 ( для печати).
И выход такой:
И всё тот же вопрос: Почему печатается 10-е слагаемое, равное 0.0014 < Eps = 0.005 и это же слагаемое суммируется в окончательную сумму S = 7.3887. Должно быть девять слагаемых, последнее из них равно 0.0063 > Eps = 0.005 и сумма должна быть S = 7.3873. Можно удалить строки 11, 18, 21, 22 будет копия книжной. Результат тот же – только без печатания ряда слагаемый и количества их (но такой выход слишком – куцый – невозможно проверить). Строку 11 ввёл – чтобы печаталось первое слагаемое, равное единице.

Решение задачи: «Приближённое вычисление суммы бесконечно убывающего ряда»

textual
Листинг программы
t:=первый_элемент;
while t<eps do begin
  s:=s+t;
  t:=следующий_элемент;
end;

Объяснение кода листинга программы

  1. Введенные переменные:
    • t := первый_элемент;
    • s := 0;
  2. В цикле while выполняется следующее:
    • t < eps;
    • s := s + t;
    • t := следующий_элемент;
  3. Значение переменной s приближенно равно сумме бесконечно убывающего ряда.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.273 из 5