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

Пример


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

Есть специальная тема Заказы "Сделайте все за меня", в самом верху в этом разделе.

Если формула хоть в чем-то правильно записана (на k+1 умножаем, вообще-то все выражение за знаком суммы надо ставить в скобки), то

var k,n:integer; s:real;beginwrite('n='); readln(n); s:=0;for k:=1 to n do s:=s+1/k*(k+1); s:=s-ord(odd(n)); writeln(s:0:7); readlnend.
Изменено пользователем Тролль
  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

так то всё правильно....но единственный момент ф-я не учитывает момент (-1)в степени n...тоесть не реагирует на четный,нечетный показатель,очень бы хотелось узнать как это реализовать)

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

Учитывает и реагирует. Сумма нечетного числа членов последовательности -1, 1, -1, 1, -1... равна -1, а четного числа членов последовательности равна нулю. То есть можно выкинуть эту часть выражения при суммировании, а в конце проверить, нечетно ли n и если да, то отнять от суммы единицу. Это и делается оператором

s:=s-ord(odd(n));

А вычислять и складывать соответствующие выражения каждый раз абсолютно излишне.

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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

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

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