Технический форум

Технический форум (http://www.tehnari.ru/)
-   Delphi, Kylix and Pascal (http://www.tehnari.ru/f43/)
-   -   Сумма числового ряда. Найдите ошибку (http://www.tehnari.ru/f43/t52331/)

NamYola 27.05.2011 17:13

Сумма числового ряда. Найдите ошибку
 
Добрый день всем!)

Вычичлить: 2*(3/4)-4*(5/6)+6*(7/8)....


1)Вот вывел формулы её вычисления: S=(-1)*((2n+2)*(2n+3))/(2n+4)

2)написал програмку:

uses
crt;
var
S,elem,z:real;
n,i:integer;
begin
clrscr;
write('Vvedite kolichestvo elementov=');
readln(n);
S:=1.5;
z:=1;
elem:=1.5;
For i:=1 to n do
z:=-z;
elem:=z*(((2*n+2)*(2*n+3))/(2*n+4));
S:=S+elem;

writeln;
writeln(' [ S=', S:5:3,' ]');
readln;
End.


Вот,знакопеременную правильно записать не могу,поэтому и вычисление неправильно выводит..


Как будет выглядить правильная форма?Помогитее,пжлуйста)

ww01031977 27.05.2011 17:31

Вычичлить: 2*(3/4)-4*(5/6)+6*(7/8)....


в строке выше + и -
или только + ?????

Vladimir_S 27.05.2011 17:33

Нет, это же надо, чтобы в такой маленький фрагментик:
Цитата:

For i:=1 to n do
z:=-z;
elem:=z*(((2*n+2)*(2*n+3))/(2*n+4));
S:=S+elem;
да столько ошибок! Тут надо так:
Код:

For i:=1 to n do
 begin
        z:=-z;
        elem:=z*(((2*i+2)*(2*i+3))/(2*i+4));
        S:=S+elem;
 end;

В остальном вроде всё правильно.

NamYola 27.05.2011 18:03

пасиб,прога работает)


Часовой пояс GMT +4, время: 12:20.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.