Перейти к содержанию
СофтФорум - всё о компьютерах и не только

цикл с предусловием


Рекомендуемые сообщения

s:=1;k:=1;p:=1;while k<=n do begin p:=-p*sqr(x)/((2*k)*(2*k-1));s:=s+p;inc(k) end; 
Изменено пользователем Тролль
Ссылка на комментарий
Поделиться на другие сайты

Если вычислять "в лоб", то подходит. Я вычисляю каждый новый член ряда по предыдущему, при этом достаточно просто предыдущий умножить на -x² (ну и скорректировать факториал, на который делится).

Ссылка на комментарий
Поделиться на другие сайты

ясно)

а если не в "лоб", т е писать как меняется K, x и -1

а то боюсь, у нас так не прокатит

а можно всё оставить так же, только факториал, на который делится записать просто как К, а потом написать, что К:=2К?

нельзя, уже саме себе на вопрос ответила)

Ссылка на комментарий
Поделиться на другие сайты

Можно отдельно вычислять знак ( (-1)^n ) для каждого члена ряда, заново вычислять через логарифм и экспоненту x в степени 2n для каждого члена ряда, вычислять дополнительным циклом каждый раз заново факториал от 2n для каждого члена ряда... Только все это будет писаться сложнее и намного дольше вычисляться. А так мы гораздо лучше используем то, что уже сделано.

Изменено пользователем Тролль
Ссылка на комментарий
Поделиться на другие сайты

Факториал от 2k, если не вычислять домножением предыдущего на (k-1)*k - только отдельным циклом внутри основного цикла:

f:=1; m:=1; while m<=2*k do begin f:=f*m; inc(m) end;

:)

Прямой формулы, дающей значение факториала, не существует (хотя имеются приближенные формулы для больших значений факториала).

Ряды практически никогда не вычисляют "в лоб", прямым вычислением "с нуля" очередного члена ряда. Всегда стараются использовать предыдущие члены ряда для вычисления нового.

Изменено пользователем Тролль
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...