Вычисление рекуррентного выражения - Turbo Pascal
Формулировка задачи:
вычислить Z
Значение A: 3 ≥ |A| > 2.
Решение задачи: «Вычисление рекуррентного выражения»
textual
Листинг программы
uses crt;
var a,t,x,z:real;
i:integer;
begin
clrscr;
repeat
write('Введите 2<|a|<=3 a=');
readln(a);
until (abs(a)>2)and(abs(a)<=3);
x:=sqr(a-2);
t:=x;
z:=t;
for i:=1 to 3 do
begin
t:=-t*x*x/(2*i)/(2*i-1);
z:=z+t;
end;
write('Z=',z:0:4);
readln
end.
Объяснение кода листинга программы
- В начале кода подключается библиотека crt, которая используется для ввода и вывода данных.
- Затем объявляются переменные a, t, x и z типа real, а также переменная i типа integer.
- Строка clrscr используется для очистки экрана перед началом ввода данных.
- Затем идет цикл repeat-until, где пользователю предлагается ввести значение переменной a. Ввод проверяется на соответствие условиям (abs(a)>2)and(abs(a)<=3). Если условия не выполняются, то цикл продолжается до тех пор, пока они не будут выполнены.
- После того, как введенное значение a удовлетворяет условиям, вычисляется значение переменной x по формуле x=sqr(a-2).
- Значение переменной x сохраняется в переменной t.
- Значение переменной x снова сохраняется в переменной z.
- Затем начинается цикл for, который выполняется 3 раза.
- Внутри цикла значение переменной t вычисляется по формуле t=-txx/(2i)/(2i-1).
- Значение переменной t сохраняется в переменной z.
- После завершения внутреннего цикла значение переменной z выводится на экран с помощью функции write.
- Цикл repeat-until завершается, и программа заканчивается.