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

Узнай цену своей работы

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

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

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

textual
Листинг программы
  1. const eps=0.01;
  2. var
  3.   x, an, sum: Real;
  4.   i: Integer;
  5. begin
  6.   WriteLn('Вычисление значения гиперболического синуса с точность eps = ',eps);
  7.   WriteLn('y = sh(x) = x + x^3/3! + ... + x^(2n+1)/(2n+1)! + ...');
  8.   Write('Задайте x = '); ReadLn(x);
  9.   an:=x; sum:=x; i:=1;
  10.   while Abs(an)>eps do begin
  11.     an:=an*Sqr(x)/(2*i*(2*i+1));
  12.     sum:=sum+an;
  13.     Inc(i);
  14.   end;
  15.   WriteLn('sh(',x,') = ',sum);
  16.   Write('Нажмите Enter...'); ReadLn;
  17. end.

Объяснение кода листинга программы

  1. Объявляется константа eps со значением 0.01.
  2. Объявляются переменные x (для значения аргумента), an (для вычисления члена ряда), sum (для хранения суммы ряда), и i (для счетчика).
  3. Выводится сообщение о вычислении значения гиперболического синуса с заданной точностью eps.
  4. Выводится формула для вычисления гиперболического синуса.
  5. Пользователю предлагается ввести значение x.
  6. Переменной an присваивается значение x, переменной sum присваивается значение x, и переменная i инициализируется значением 1.
  7. Начинается цикл, в котором вычисляется каждый член ряда, пока абсолютное значение an больше или равно eps.
  8. В каждой итерации переменной an присваивается новое значение на основе предыдущего, и это значение добавляется к переменной sum. Затем счетчик i увеличивается на 1.
  9. После завершения цикла выводится значение гиперболического синуса sh(x) с помощью переменной sum.
  10. После этого отображается приглашение нажать клавишу Enter для завершения программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

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

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы