Advertisement
Guest User

act4

a guest
Oct 24th, 2016
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.91 KB | None | 0 0
  1. ---main.cpp---
  2. #include <iostream>
  3. #include "class.h"
  4.  
  5. using namespace std;
  6.  
  7. int choice, size;
  8. double numbers[20];
  9. double disp;
  10.  
  11. void collectNumbers();
  12.  
  13. int main()
  14. {
  15. Calc c;
  16.  
  17. do{
  18. system("CLS");
  19. cout<<"Welcome to calculator C++ version\n";
  20. cout<<"[1] Sum\n";
  21. cout<<"[2] Mean\n";
  22. cout<<"[3] Variance\n";
  23. cout<<"[4] Standard Deviation\n";
  24. cout<<"[5] EXIT\n";
  25. cout<<"Please input the number of your choice: ";
  26. cin>>choice;
  27.  
  28. switch(choice)
  29. {
  30. case 1:
  31. collectNumbers();
  32. disp = c.getSum(numbers, size);
  33. cout<<"The sum of your numbers is " <<disp;
  34. system("PAUSE");
  35. break;
  36.  
  37. case 2:
  38. collectNumbers();
  39. disp = c.getSum(numbers, size);
  40. disp = c.getMean(disp, size);
  41. cout<<"The mean of your numbers is " <<disp;
  42. system("PAUSE");
  43. break;
  44.  
  45. case 3:
  46. collectNumbers();
  47. disp = c.getSum(numbers, size);
  48. disp = c.getMean(disp, size);
  49. disp = c.getVariance(numbers, disp, size);
  50. cout<<"The variance of your numbers is " <<disp;
  51. system("PAUSE");
  52. break;
  53.  
  54. case 4:
  55. collectNumbers();
  56. disp = c.getSum(numbers, size);
  57. disp = c.getMean(disp, size);
  58. disp = c.getVariance(numbers, disp, size);
  59. disp = c.getStandardDeviation(disp);
  60. cout<<"The standard deviation of your numbers is " <<disp;
  61. system("PAUSE");
  62. break;
  63. }
  64. }while(choice != 5);
  65.  
  66. cout<<"Closing program...";
  67. system("PAUSE");
  68. return 0;
  69. }
  70.  
  71. void collectNumbers()
  72. {
  73. cout<<"How many numbers do you want to compute: ";
  74. cin>>size;
  75.  
  76. for(int i = 1; i <= size; i++)
  77. {
  78. cout<<"Please input number: ";
  79. cin>>numbers[i];
  80. cout<<endl;
  81. }
  82. }
  83.  
  84.  
  85. ---members.cpp---
  86. #include <iostream>
  87. #include "class.h"
  88.  
  89. using namespace std;
  90.  
  91. Calc::Calc()
  92. {
  93. double input[20];
  94. double mean = 0;
  95. double var = 0;
  96. double tempSum = 0;
  97. double ans = 0;
  98. int cnt = 0;
  99. }
  100.  
  101. double Calc::getSum(double input[], int cnt)
  102. {
  103. for(int i = 1; i <= cnt; i++)
  104. {
  105. ans = ans + input[i];
  106. }
  107.  
  108. return ans;
  109. }
  110.  
  111. double Calc::getMean(double tempSum, int cnt)
  112. {
  113. ans = 0;
  114.  
  115. ans = tempSum/cnt;
  116.  
  117. return ans;
  118. }
  119.  
  120. double Calc::getVariance(double input[], double mean, int cnt)
  121. {
  122. for(int i = 1; i <= cnt; i++)
  123. {
  124. input[i] = (input[i] - mean) * (input[i] - mean);
  125. }
  126.  
  127. ans = getSum(input, cnt);
  128. ans = getMean(ans, cnt);
  129.  
  130. return ans;
  131. }
  132.  
  133. double Calc::getStandardDeviation(double var)
  134. {
  135. ans = var/3;
  136.  
  137. if(var <= 0)
  138. {
  139. return 0;
  140. }
  141.  
  142. for(int i = 0; i < 32; i++)
  143. {
  144. ans = (ans + var / ans) / 2;
  145. }
  146.  
  147. return ans;
  148. }
  149.  
  150.  
  151. ---class.h---
  152. #include <iostream>
  153.  
  154. using namespace std;
  155.  
  156. class Calc
  157. {
  158. private:
  159. double input[];
  160. double mean, var, tempSum, ans;
  161. int cnt;
  162.  
  163. public:
  164. Calc();
  165. double getSum(double input[], int cnt);
  166. double getMean(double tempSum, int cnt);
  167. double getVariance(double input[], double mean, int cnt);
  168. double getStandardDeviation(double var);
  169. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement