Сумма элементов ряда чисел

Найти сумму n элементов следующего ряда чисел:
1 -0.5 0.25 -0.125 …
Количество элементов (n) вводится с клавиатуры.

В данном случае ряд чисел состоит из элементов, где каждый следующий меньше предыдущего в два раза по модулю и имеет обратный знак. Значит, чтобы получить следующий элемент, надо предыдущий разделить на -2.

Какой-либо переменной надо присвоить значение первого элемента ряда (в данном случае это 1). Далее в цикле добавлять ее значение к переменной, в которой накапливается сумма, после чего присваивать ей значение следующего элемента ряда, разделив текущее значение на -2. Цикл должен выполняться n раз.

Следует отметить, что чем больше n, тем меньше меняется сумма от прибавления каждого следующего элемента, т.к. на каждой итерации цикла значение элемента уменьшается в два раза (по модулю), т.е. прибавляется все меньшая и меньшая величина. Попробуйте выполнить программу, введя в качестве значения n сначала 3, затем 10 и 20. Вы увидите, что разница между первым и вторым случаем значительна, а между вторым и третьим — нет.

Pascal


сумма ряда паскаль

var
n,i: byte;
e,s: real;
begin
readln(n);
e := 1;
s := 0;
for i:=1 to n do begin
s := s + e;
e := e / -2;
end;
writeln(s:9:7);
end.



6
0.6562500

Язык Си



#include

main() {
unsigned short n,i;
float e, s;
scanf("%d",&n);
e = 1;
s = 0;
for (i=0;i< n;i++) {
s += e;
e /= -2;
}
printf("%.7f\n",s);
}



10
0.6660156

Python


сумма ряда python (питон)

n = int(input())
e = 1
s = 0
for i in range(n):
s += e
e /= -2
print(s)



4
0.625

КуМир


алг сумма рядя
нач
цел n,i
вещ e,s
ввод n
e := 1
s := 0
нц для i от 1 до n
s := s + e
e := e / 2 * (-1)
кц
вывод s
кон



4
0.625

30
0.6666667

Basic-256



input n
start = 1
sum = 0
for i=1 to n
sum = sum + start
start = start / -2
next i
print sum



20
0.666666

Подписаться
Уведомить о
guest

1 Комментарий
Новые
Старые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
иииигорь
иииигорь
2 лет назад

не помогло

Pascal

сумма ряда паскаль

var
n,i: byte;
e,s: real;
begin
readln(n);
e := 1;
s := 0;
for i:=1 to n do begin
s := s + e;
e := e / -2;
end;
writeln(s:9:7);
end.



6
0.6562500

Язык Си


#include

main() {
unsigned short n,i;
float e, s;
scanf("%d",&n);
e = 1;
s = 0;
for (i=0;i< n;i++) {
s += e;
e /= -2;
}
printf("%.7f\n",s);
}



10
0.6660156
Python

сумма ряда python (питон)

n = int(input())
e = 1
s = 0
for i in range(n):
s += e
e /= -2
print(s)



4
0.625
КуМир

алг сумма рядя
нач
цел n,i
вещ e,s
ввод n
e := 1
s := 0
нц для i от 1 до n
s := s + e
e := e / 2 * (-1)
кц
вывод s
кон



4
0.625

30
0.6666667

Basic-256


input n
start = 1
sum = 0
for i=1 to n
sum = sum + start
start = start / -2
next i
print sum



20
0.666666