aless23 Опубликовано 2 ноября, 2011 Жалоба Поделиться Опубликовано 2 ноября, 2011 Очень прошу помочь написать программу на Pascal,для следуюшего примера: n ∑ (-1)^k+1/k*(k+1) k=1 заранее очень благодарен!!! Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 2 ноября, 2011 Жалоба Поделиться Опубликовано 2 ноября, 2011 (изменено) Есть специальная тема Заказы "Сделайте все за меня", в самом верху в этом разделе. Если формула хоть в чем-то правильно записана (на 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. Изменено 2 ноября, 2011 пользователем Тролль 1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
aless23 Опубликовано 2 ноября, 2011 Автор Жалоба Поделиться Опубликовано 2 ноября, 2011 так то всё правильно....но единственный момент ф-я не учитывает момент (-1)в степени n...тоесть не реагирует на четный,нечетный показатель,очень бы хотелось узнать как это реализовать) Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 3 ноября, 2011 Жалоба Поделиться Опубликовано 3 ноября, 2011 (изменено) Учитывает и реагирует. Сумма нечетного числа членов последовательности -1, 1, -1, 1, -1... равна -1, а четного числа членов последовательности равна нулю. То есть можно выкинуть эту часть выражения при суммировании, а в конце проверить, нечетно ли n и если да, то отнять от суммы единицу. Это и делается оператором s:=s-ord(odd(n)); А вычислять и складывать соответствующие выражения каждый раз абсолютно излишне. Изменено 3 ноября, 2011 пользователем Тролль 1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.