Advertisement
Guest User

Untitled

a guest
Feb 7th, 2016
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.75 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3. #include <iomanip>
  4.  
  5. using namespace std;
  6.  
  7. const double pi = atan(1.0)*4.0;
  8.  
  9. double degreesToRadians(double angleDegrees);
  10. double factorial(int number);
  11. double mySine(double angleRadians);
  12. double myCosine(double angleRadians);
  13. double mySec(double angleRadians);
  14. double myCsc(double angleRadians);
  15. double myCot(double angleRadians);
  16. double myTan(double angleRadians);
  17.  
  18. int main(){
  19.  
  20. cout << endl << endl;
  21. cout << "Welcome to 'taylor series'!" << endl << endl;
  22. cout << "Press enter to continue..." << endl << endl;
  23.  
  24. cout << setw(23) << "System" << setw(16) << "System" << setw(16) << "System" << endl;
  25.  
  26. cout << "Degrees" << setw(8) << "Radians" << setw(8) << "Sin" << setw(8) << "Sin" << setw(8) << "Cos" << setw(8) << "Cos"
  27. << setw(8) << "Tan" << setw(8) << "Tan" << setw(8) << "Cotan" << setw(8) << "Secan" << setw(8) << "Cosec" << endl;
  28.  
  29. for(double angleDegrees = 0; angleDegrees <= 360; angleDegrees += 15){
  30.  
  31. double angleRadians = degreesToRadians(angleDegrees);
  32.  
  33. cout << setprecision(4) << fixed << angleDegrees << setw(8) << angleRadians << setw(8) << sin(angleRadians)
  34. << setw(8) << mySine(angleRadians) << setw(8) << cos(angleRadians) << setw(8) << myCosine(angleRadians) << setw(8)
  35. << tan(angleRadians) << setw(8) << myTan(angleRadians) << setw(8)
  36. << setw(8) << myCot(angleRadians) << setw(8)
  37. << mySec(angleRadians) << setw(8) << myCsc(angleRadians);
  38. }
  39.  
  40. return 0;
  41. }double degreesToRadians(double angleDegrees){
  42. double angleRadians = (pi/180.0)*angleDegrees;
  43. return angleRadians;
  44.  
  45. }double factorial(int number){
  46.  
  47. double sum = 1;
  48.  
  49. for(int count = 1; count <= number ; count++){
  50. sum = count*sum;
  51. }
  52. return sum;
  53.  
  54. }
  55.  
  56. double mySine(double angleRadians){
  57.  
  58. double sum = 0, oldsum = 0, diff = 1;
  59. int alt = 1, i = 1;
  60.  
  61. while(diff >= 0.00001){
  62.  
  63. sum = sum + alt * pow(angleRadians,i)/factorial(i);
  64.  
  65. diff = abs(sum - oldsum);
  66. oldsum = sum;
  67.  
  68. alt = alt * -1;
  69. i = i + 2;
  70.  
  71. }
  72. return sum;
  73. }
  74.  
  75. double myCosine(double angleRadians){
  76.  
  77. double sum = 0, oldsum = 0, diff = 1;
  78. int alt = 1, i = 0;
  79.  
  80. while(diff >= 0.00001){
  81.  
  82. sum = sum + alt * pow(angleRadians,i)/factorial(i);
  83.  
  84. diff = abs(sum - oldsum);
  85. oldsum = sum;
  86.  
  87. alt = alt * -1;
  88. i = i + 2;
  89.  
  90. }
  91. return sum;
  92. }
  93.  
  94. double myCot(double angleRadians){
  95.  
  96. double sum = 0;
  97.  
  98. myCosine(angleRadians)/mySine(angleRadians);
  99.  
  100. return sum;
  101.  
  102. }
  103.  
  104. double myCsc(double angleRadians){
  105.  
  106. double sum = 0;
  107.  
  108. 1/mySine(angleRadians);
  109.  
  110. return sum;
  111.  
  112. }
  113.  
  114. double mySec(double angleRadians){
  115.  
  116. double sum = 0;
  117.  
  118. 1/myCosine(angleRadians);
  119.  
  120. return sum;
  121.  
  122. }
  123.  
  124. double myTan(double angleRadians){
  125.  
  126. double sum = 0;
  127.  
  128. myCos(angleRadians)/mySine(angleRadians);
  129.  
  130. return sum;
  131.  
  132. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement