Дано натуральное число N.
вычислить
1*2+2*3*4+...+N(N+1)+...+2N
очень срочно надо завтра лаба...помогите плиз..
Цитата
1*2+2*3*4+...+N(N+1)+...+2N
Каков последний член последовательности? Может, 2N(2N+1) ?
может и 2Н(2н+1) =))) скорее всего так, хотя..
короче просто эт немного не мне..но человека нужно выручать а у меня просто инет есть))...
есть идеи ??..меня чет в ступор поставило )) до этого как-то решал или находил ответ где-нить..а щас чет завал) были идеи, но чет безрезультатно(( а надо очень срочно....
спасибо за старания)
Код
const
n = 10;
var
i: integer;
s: longint;
begin
s := 0;
for i := 1 to 2 * n do
s := s + i * (i + 1);
writeln( 's = ', s );
end.
спасиб большое только вот поправка...я думал, что сомневался , но нашел тип задачу с последним членом 2N
http://sec17.vstu.vinnica.ua/teacher/book/.../2_2/2_2_6.html2.23
вот как походу звучит
Вычислить P = 1 *2 + 2* 3* 4 + 3 *4 * 5 * 6 + ...+ N * (N+1) * ... * 2N.
вот стоп у меня была неправильная запись я щас так может и сам решу)) только времени в обрез...был бы благодарен, за предоставленную помощь в решении "второго" варианта
В каких пределах изменяется N? При использовании обычной арифметики уже при
N > 12 происходит переполнение
да в том то и дело, что нет никаких пределов)))
можешь накатать вариант пока хотябы с переполнением...там он с проверкой сам разберется)))..
я думаю что ничего страшного буит если препод введет 13 и его немного обломает...главное чтоб принцип был понятен....
а так...пределов нет...(
По-моему, так ...
Код
const
n = 12;
var
i, j: integer;
p, s: longint;
begin
s := 0;
for i := 1 to n do
begin
p := 1;
for j := 0 to i do
p := p * (i + j);
s := s + p;
end;
writeln( 's = ', s );
end.
Кстати, о "длинной арифметике" можно посмотреть
здесь ...
спасибо большое..
щас посмотрим, че получилось))
п.с.
а про длинную арифметику я уже нашел, пока искал, нет ли похожей, уже решенной задачи))
стоп..помойму че то не то ))))
при Н=3 программа дает результат 67
а если брать даже только последнее слагаемое из этой суммы, то
n*(n+1)*...*2N = 3*4*5*6 > 67
выходит что то не так((
блин..может еще кто знает как или Volvo ты еще что нить предложишь7?
Почему 67? У меня - 386...
Код
s := 2;
j := 2;
for i := 2 to n do
begin
j := (j * (i shl 1 - 1) * (i shl 1)) div (i - 1);
s := s + j;
end;
Если надо, учти n=0.
volvo
да все нормально...)) все загнал в дельфи - пучком.дальше наза перепроверил в обяном турбо паскале все норм))...
п.с.
таак..я думаю что пока длинную арифметику оставим)) те, кому надо сами все совместят..
алгоритм понятен)) спасибо за помощь...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста,
нажмите сюда.