Вычисление с заданной точностью суммы ряда - Pascal ABC
Формулировка задачи:
Написать программу на паскале для вычисления с заданной точностью данную сумму (точность 2 знака после запятой вроде )
Я понимаю, что это наверное это очень легкое задание, но прошу у вас помощи потому что сам туплю и просто не понимаю как его делать. Всем спасибо заранее за решения :-)
Решение задачи: «Вычисление с заданной точностью суммы ряда»
textual
Листинг программы
const
EPS = 0.01;
var
x: Single;
y, yi: Double; //Real
i: LongWord;
begin
Write('x='); ReadLn(x);
y := 0; yi := 1; i := 0;
while (yi > EPS) do
begin
y := y + yi;
Inc(i, 2);
yi := yi * Sqr(x) / i / (i - 1);
WriteLn(i, ' ', yi:0:2);
end;
Write('Y=', y:0:2);
end.
Объяснение кода листинга программы
- В начале кода объявляются две переменные: x и y, обе они имеют тип Single, а также переменная i типа LongWord.
- Затем происходит чтение значения переменной x с помощью функции ReadLn.
- Далее переменные y и yi инициализируются значением 0 и 1 соответственно.
- Переменная i устанавливается равной 0.
- Затем начинается цикл while, который выполняется до тех пор, пока значение переменной yi больше заданной точности EPS.
- Внутри цикла переменная y увеличивается на значение yi, переменная i увеличивается на 2, а переменная yi умножается на Sqr(x) / i / (i-1).
- После выхода из цикла значение переменной y выводится на экран с помощью функции WriteLn.
- В конце кода выводится значение переменной y.