Задание ** написание программы в Pascal. Дано целое число N (>0). Найти сумму...

0 голосов
56 просмотров

Задание на написание программы в Pascal. Дано целое число N (>0). Найти сумму N*2+(N+1)*2+(N+2)*2+...+(2*N)*2


Информатика (21 баллов) | 56 просмотров
0

Сколько раз нужно просуммировать данное число?

0

В задании дано только это. Больше ничего не указано :с

Дан 1 ответ
0 голосов
Правильный ответ

program t;

var n, s, i: integer;

begin

readln(n);

s:=0;

for i:=n to 2*n do s:=s+i*2;

writeln(s)

end.

(148 баллов)
0

Кстати, если воспользоваться формулой суммы арифм. прогрессии, можно еще проще решить задачу:

0

program t; var n, s: integer;begin readln(n); s:=3*n*(n+1); writeln(s)end.

0

* суммы членов арифм. прогрессии

0

Всё увидел, где я сам не додумал. Сказал бы, что я дурак не туда смотрю.

0

Если раскрывать этот цикл, то должно получиться2n^2 + 2n + 2mгде m - это сумма 1 + 2 + 3 + ... + n-1

0

Или я ошибся (

0

Почти верно. Единственная ошибка - m - это сумма 1 + 2 + 3 + ... + n

0

N*2+(N+1)*2+(N+2)*2+...+(2*N)*2=2N+(N+1)*2+(N+2)*2+...+(N+N)*2=2N+(1*2+2*2+...+N*2)+(N*2+N*2+...+N*2)=2N+2(1+2+...+N)+2N^2

0

А если знать формулу суммы чисел от 1 до N (N*(N+1)/2), то можно раскрыть так: 2N+2(1+2+...+N)+2N^2=2N+2N(N+1)/2+2N^2=2N+N(N+1)+2N^2=2N(N+1)+N(N+1)=3N(N+1)

0

Эту формулу (s:=3*n*(n+1);) я и применил в своём решении без цикла ;-)