Advertisement
Guest User

penis

a guest
Apr 22nd, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.62 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. void integrate(double function[], double integratedFunction[], int size = 101)
  6. {
  7. double integralMatrix[size][size+1];
  8. for(int i = 0; i < size+1; i++)
  9. for(int j = 0; j < size; j++)
  10. integralMatrix[j][i] = 0;
  11. for(int i = 0; i < size; i++)
  12. integralMatrix[i][i+1] = (double)1/(i+1);
  13. for(int i = 0; i < size+1; i++)
  14. for(int j = 0; j < size; j++)
  15. integratedFunction[i] += function[j] * integralMatrix[j][i];
  16. }
  17.  
  18. double integrateFrom0to1(double functionn[])
  19. {
  20. double integratedFunction[102];
  21. for(int i = 0; i < 102; i++)
  22. integratedFunction[i] = 0;
  23. integrate(functionn, integratedFunction);
  24. // cout << "I AM INTEGRATING\n";
  25. // cout << functionn[0] << " " << functionn[1] << " " << functionn[2] << " \n\n";
  26. // for(int i=0;i<102;i++)
  27. // cout << integratedFunction[i] << " ";
  28. // cout<<endl;
  29. double answer = 0;
  30. for(int i = 0; i < 102; i++)
  31. answer += integratedFunction[i];
  32. // cout << endl << answer << "integralas\n";
  33. return answer;
  34. }
  35.  
  36. void multiply(double function1[], double function2[], double multipliedFunction[])
  37. {
  38. double answer[102];
  39. for(int i = 0; i < 102; i++)
  40. answer[i] = 0;
  41. for(int i = 0; i < 102; i++)
  42. for(int j = 0; j < 102; j++)
  43. {
  44. answer[i+j] += function1[i] * function2[j];
  45. }
  46. // cout << "daugyba \n";
  47. for(int i = 0; i < 102; i++)
  48. {
  49. multipliedFunction[i] = answer[i];
  50. // cout << multipliedFunction[i] << " ";
  51. }
  52. // cout<<endl;
  53. }
  54. void subtraction(double function1[],double function2[],double (&subFunction)[102])
  55. {
  56. for(int i = 0; i < 102; i++)
  57. {
  58. subFunction[i] = function1[i] - function2[i];
  59. }
  60. }
  61. int main()
  62. {
  63. // double functionn[101], functionn2[101], answer[101];
  64. // for(int i = 0; i < 101; i++)
  65. // {
  66. // answer[i] = 0;
  67. // functionn[i] = 0;
  68. // functionn2[i] = 0;
  69. // }
  70. // functionn2[1] = 2;//2x
  71. // functionn[0] = 5;
  72. // functionn[2] = 3;//3x^2+5 {5,0,3,0,0,0,...,0}->{0,5,0,3/3,0,0,...,0}
  73. // subtraction(functionn2, functionn, answer);//2x-(3x^2+5)=-3x^2+2x-5 {-5, 2, -3, 0, ... , 0}
  74. // //multiply(functionn, functionn2, answer);//2x*(3x^2+5) = 6x^3 + 10x {0, 10, 0, 6, 0...0}
  75. // cout << answer[2];
  76.  
  77. double v[101][102],v1[101][102];
  78. for(int i = 0; i < 101; i++)//1, x, x^2, ..., x^100
  79. for(int j = 0; j < 101; j++)//1, x, x^2, ..., x^100
  80. {
  81. v[i][j] = 0;
  82. v1[i][j] = 0;
  83. }
  84. for(int i = 0; i < 101; i++)
  85. {
  86. v[i][i] = 1;
  87. v1[i][i] = 1;
  88. }
  89.  
  90. double temp[102], temp2[102];
  91. double skaitiklis, vardiklis;
  92.  
  93. // for(int i = 0; i < 102; i++)
  94. // temp2[i] = 0;
  95. //
  96. // //u0 = v0 v[0] daryt nk nereik
  97. //
  98. // //u1
  99. //
  100. // multiply(v[0],v[1], temp);
  101. // skaitiklis = integrateFrom0to1(temp);
  102. // multiply(v[0],v[0],temp);
  103. // vardiklis = integrateFrom0to1(temp);
  104. // temp2[0] = skaitiklis/vardiklis;
  105. // multiply(v[0],temp2,temp2);
  106. // subtraction(v[1],temp2,v[1]);
  107. // for(int i = 0; i < 102; i++)
  108. // temp2[i] = 0;
  109. // //u2
  110. //
  111. // multiply(v1[2],v[0], temp);
  112. // skaitiklis = integrateFrom0to1(temp);
  113. // multiply(v[0],v[0],temp);
  114. // vardiklis = integrateFrom0to1(temp);
  115. // temp2[0] = skaitiklis/vardiklis;
  116. // multiply(v[0],temp2,temp2);
  117. // subtraction(v[2],temp2,v[2]);
  118. // for(int i = 0; i < 102; i++)
  119. // temp2[i] = 0;
  120. //
  121. //
  122. // multiply(v1[2],v[1], temp);
  123. // skaitiklis = integrateFrom0to1(temp);
  124. // multiply(v[1],v[1],temp);
  125. // vardiklis = integrateFrom0to1(temp);
  126. // temp2[0] = skaitiklis/vardiklis;
  127. // multiply(v[1],temp2,temp2);
  128. // subtraction(v[2],temp2,v[2]);
  129. //
  130. // cout << v[2][0] << " " << v[2][1]<< " " << v[2][2]<< " " << v[2][3]<< " " << v[2][4] << endl;
  131. //
  132. // for(int i = 0; i < 102; i++)
  133. // temp2[i] = 0;
  134. // //u3
  135. //
  136. // multiply(v1[3],v[0], temp);
  137. // skaitiklis = integrateFrom0to1(temp);
  138. // vardiklis = integrateFrom0to1(v[0]);
  139. // temp2[0] = skaitiklis/vardiklis;
  140. // subtraction(v[3],temp2,v[3]);
  141. //
  142. // cout << "aaaaaa";
  143. // cout << v[3][0] << " " << v[3][1]<< " " << v[3][2]<< " " << v[3][3]<< " " << v[3][4];
  144. //
  145. //
  146. // multiply(v1[3],v[1], temp);
  147. // skaitiklis = integrateFrom0to1(temp);
  148. // multiply(v[1],v[1],temp);
  149. // vardiklis = integrateFrom0to1(temp);
  150. // temp2[0] = skaitiklis/vardiklis;
  151. // multiply(v[1],temp2,temp2);
  152. // subtraction(v[3],temp2,v[3]);
  153. // for(int i = 0; i < 102; i++)
  154. // temp2[i] = 0;
  155. //
  156. // multiply(v1[3],v[2], temp);
  157. // skaitiklis = integrateFrom0to1(temp);
  158. // multiply(v[2],v[2],temp);
  159. // vardiklis = integrateFrom0to1(temp);
  160. // temp2[0] = skaitiklis/vardiklis;
  161. // multiply(v[2],temp2,temp2);
  162. // subtraction(v[3],temp2,v[3]);
  163. // for(int i = 0; i < 102; i++)
  164. // temp2[i] = 0;
  165. //
  166. // cout << v[3][0] << " " << v[3][1]<< " " << v[3][2]<< " " << v[3][3]<< " " << v[3][4];
  167. //
  168. // cout << "penis\n";
  169.  
  170. for(int i = 0; i <94; i++)
  171. {
  172. for(int j=0; j<i; j++)
  173. {
  174. multiply(v1[i],v[j], temp);
  175. skaitiklis = integrateFrom0to1(temp);
  176. multiply(v[j],v[j],temp);
  177. vardiklis = integrateFrom0to1(temp);
  178. temp2[0] = skaitiklis/vardiklis;
  179. multiply(v[j],temp2,temp2);
  180. subtraction(v[i],temp2,v[i]);
  181. for(int k = 0; k < 102; k++)
  182. temp2[k] = 0;
  183. }
  184. cout << v[i][0] << " "<< v[i][1] << " "<< v[i][2] << " "<< v[i][3] << " "<< v[i][4] << " "<< v[i][5] << "\n";
  185. }
  186.  
  187. //cout << integrateFrom0to1(functionn);
  188. // double integratedFunction[101];
  189. // for(int i = 0; i < 101; i++)
  190. // integratedFunction[i] = 0;
  191. // integrate(functionn, integratedFunction);
  192. //
  193. // for(int i = 0; i < 100; i ++)
  194. // if(integratedFunction[i] != 0)
  195. // cout << integratedFunction[i] << "x^" << i << "+";
  196. // cout << '\b';
  197. // cout << ' ';
  198. //
  199. //
  200. // double functions[100][100];
  201. // double integratedFunctions[100][101];
  202. // for(int i = 0; i < 100; i++)
  203. // {
  204. // functions[i][i] = i;
  205. // for(int j = 0; j < 101; j++)
  206. // integratedFunctions[i][j] = 0;
  207. // }
  208. //
  209. // for(int i = 0; i < 101; i++)
  210. // {
  211. // for(int j = 0; j < 100; j++)
  212. // if(integratedFunctions[j][i] != 0)
  213. // cout << integratedFunctions[j][i] << "x" << "^" << i << "+";
  214. // cout << '\b';
  215. // cout << " ";
  216. // cout << endl;
  217. // }
  218. // return 0;
  219. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement