Нужно с C++ переписать программу на паскаль с пояснением - Pascal

Формулировка задачи:

Буду очень признателен)
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(0,""); // Чтобы корректно отображались русские буквы
 
    cout << "Вычисление значения гиперболического синуса с точность eps = 0.01\n\n "
         << "y = sh(x) = x + x^3/3! + ... + x^(2n+1)/(2n+1)! + ...\n\n";
 
    double x;
    cout << "Задайте x = ";
    cin >> x;
 
    double an = x, sum = an, eps = 0.01;
    int i = 1;
    while (abs(an) > eps)
     { an *= (x*x)/(2*i*(2*i+1));
       sum += an;
       i++; 
     }
 
    cout << "\n sh(" << x << ") = " << sum << endl;
 
    system("pause > null");
    return 0;
}
Если что, вот сама задача: Не используя стандартные функции (за исключением abs), вычислить с точностью eps > 0 у = shx = x + x3/3! + x5/5! +…+x2n+1/(2n + 1!) +…; Считать, что требуемая точность достигнута, если очередное слагаемое по модулю меньше eps, все последующие слагаемые можно уже не учитывать.

Код к задаче: «Нужно с C++ переписать программу на паскаль с пояснением - Pascal»

textual
const eps=0.01;
var
  x, an, sum: Real;
  i: Integer;
begin
  WriteLn('Вычисление значения гиперболического синуса с точность eps = ',eps);
  WriteLn('y = sh(x) = x + x^3/3! + ... + x^(2n+1)/(2n+1)! + ...');
  Write('Задайте x = '); ReadLn(x);
  an:=x; sum:=x; i:=1;
  while Abs(an)>eps do begin
    an:=an*Sqr(x)/(2*i*(2*i+1));
    sum:=sum+an;
    Inc(i); 
  end;
  WriteLn('sh(',x,') = ',sum);
  Write('Нажмите Enter...'); ReadLn;
end.
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.

10   голосов, оценка 3.600 из 5


СДЕЛАЙТЕ РЕПОСТ