Составить программу для вычисления значения суммы бесконечного ряда с заданной точностью - Pascal ABC
Формулировка задачи:
Определить число членов ряда,вошедших в сумму.Исходные данные 0.62,точность вычисления 10^-4.
Решение задачи: «Составить программу для вычисления значения суммы бесконечного ряда с заданной точностью»
textual
Листинг программы
const x=0.62;
e=0.0001;
var s,t:real;
n,z:integer;
begin
n:=2; //начинается с 2, 2*(4-1)=6
z:=-1;
t:=sin(x)/6;
while abs(sin(x)/n/(n*n-1))>e do
begin
n:=n+1;
z:=-z;
t:=z*sin(x)/n/(n*n-1);
s:=s+t;
end;
n:=n-1;//1 отнимаем
writeln('Число членов ряда=',n,' сумма=',s:0:4)
end.
Объяснение кода листинга программы
- const x=0.62; - задается значение переменной x равное 0.62
- const e=0.0001; - задается значение переменной e равное 0.0001
- var s,t:real; - объявляются две переменные типа real для хранения суммы и значения t
- var n,z:integer; - объявляются две переменные типа integer для хранения номера члена ряда и знака
- n:=2; - начальное значение переменной n равно 2
- z:=-1; - начальное значение переменной z равно -1
- t:=sin(x)/6; - вычисляется значение t как sin(x)/6
- while abs(sin(x)/n/(nn-1))>e do - начинается цикл while, пока значение выражения sin(x)/n/(nn-1) больше e
- n:=n+1; - увеличивается значение переменной n на единицу
- z:=-z; - меняется знак переменной z
- t:=zsin(x)/n/(nn-1); - вычисляется значение t как zsin(x)/n/(nn-1)
- s:=s+t; - сумма s увеличивается на значение t
- n:=n-1; - уменьшается значение переменной n на единицу
- writeln('Число членов ряда=',n,' сумма=',s:0:4); - выводится сообщение с количеством членов ряда и суммой
- end. - завершается программа