Advertisement
napalm30

Untitled

Apr 27th, 2017
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scilab 0.84 KB | None | 0 0
  1. a = 1.5;
  2. b = 3.0;
  3. x = a:b;
  4.  
  5. function y = func(x)
  6. y=1 / (x.*log(x));
  7. endfunction
  8.  
  9. funcprot(0);
  10. v = inttrap(x, func(x));
  11.  
  12. disp("Решение интеграла методом трапеций: ");
  13. disp(v);
  14.  
  15. function s = simpson(a, b, n)
  16.     s = 0;
  17.     h = (b-a) ./ (n-1);
  18.     s = func(a) + func(b);
  19.     mn = 4;
  20.     for m = 1:1:n-2
  21.         s = s + mn .* func(a + h .* m);
  22.         if (mn == 4) then mn = 2;
  23.             else mn = 4;
  24.          end
  25.     end
  26.     s = s .*h ./3;
  27. endfunction
  28.  
  29. n = 2;
  30. r = simpson(a, b, n);
  31. r2 = 0;
  32. while (abs(r - r2)>0.001)
  33.     r2 = r;
  34.     n = n + 2;
  35.     r = simpson(a, b, n);
  36. end
  37.  
  38. disp("Решение интеграла методом Симпсона: ");
  39. disp(r);
  40.  
  41. disp("Решение интеграла методом Симпсона(встр. ф-ция): ");
  42. disp(intsplin(x,func(x)));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement