Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2014
194
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.80 KB | None | 0 0
  1. Program project_1;
  2. uses Crt;
  3. Var
  4. // далее напишем 3 функции,которые считают sin(x), cos(x), exp(x)
  5. // при данном X и с заданной точностью E
  6. // Если что, чтобы посмотреть значения рядов, погуглите Ряды Маклорена,там все есть
  7. //_____________________________________
  8. function SUM_SIN (x:real, E:real): real
  9. var ch,n,i:real;
  10. // ch и n используем для факториала в знаменателе каждого нового слагаемого
  11. // чтобы посчитать значение факториала
  12. begin
  13. SUM_SIN:=0;
  14. n:=1*2*3; // 3 факториал
  15. ch:=4;
  16. i:=x;
  17.  
  18. while i>E do
  19. begin
  20. SUM_SIN:=SUM_SIN+i;
  21. i:=i*x*x/n;
  22. n:=n*ch*(ch+1);
  23. ch:=ch+2;
  24. end;
  25. end;
  26. //_____________________________________
  27. function SUM_COS (X:real, E:real): real
  28. var ch,n,i:real;
  29. // ch и n используем для факториала в знаменателе каждого нового слагаемого
  30. // чтобы посчитать значение факториала
  31. begin
  32. SUM_COS:=0;
  33. n:=1*2; // 2 факториал
  34. ch:=3;
  35. i:=1;
  36.  
  37. while i>E do
  38. begin
  39. SUM_COS:=SUM_COS+i;
  40. i:=-i*x*x/n;
  41. n:=n*ch*(ch+1);
  42. ch:=ch+2;
  43. end;
  44. end;
  45. //_____________________________________
  46. function SUM_EXP (X:real, E:real): real
  47. var ch,n,i:real;
  48. // ch и n используем для факториала в знаменателе каждого нового слагаемого
  49. // чтобы посчитать значение факториала
  50. begin
  51. SUM_EXP:=0;
  52. n:=1; // 1 факториал
  53. ch:=2;
  54. i:=1;
  55.  
  56. while i>E do
  57. begin
  58. SUM_EXP:=SUM_EXP+i;
  59. i:=i*x/n;
  60. n:=n*ch;
  61. ch:=ch+1;
  62. end;
  63. end;
  64. Begin
  65. writeln('введите с клавиатуры x и погрешность');
  66. readln(_x, _e);
  67. writeln('выберите пункт меню');
  68. writeln('0 - нами посчитанный sin')
  69. writeln('1 - нами посчитанный cos')
  70. writeln('2 - нами посчитанная exp')
  71. writeln('3 - реальное значение sin')
  72. writeln('4 - реальное значение cos')
  73. writeln('5 - реальное значение exp')
  74. readln(n);
  75.  
  76. case n of
  77. '0': begin writeln(SUM_SIN(_x,_e)); end;
  78. '1': begin writeln(SUM_COS(_x,_e));end;
  79. '2': begin writeln(SUM_EXP(_x,_e));end;
  80. '3': begin writeln(Sin(x)); end;
  81. '4': begin writeln(Cos(x));end;
  82. '5': begin writeln(Exp(x));end;
  83. End.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement