Advertisement
Eddie_1337

L10 - CN

Dec 19th, 2019
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.82 KB | None | 0 0
  1. clc
  2. clear
  3.  
  4. rel = 0;
  5. while(~rel)
  6. fprintf('Nr. noduri de interpolare(ni):');
  7. ni = input(' ');
  8. rel = 0;
  9. while(~rel)
  10. xi = zeros(ni, 1);
  11. yi = zeros(ni, 1);
  12. for i = 1: ni
  13. fprintf('Abscisa x%g = ', i);
  14. xi(i, 1) = input(' ');
  15. fprintf('Ordonata y%g = ', i);
  16. yi(i, 1) = input(' ');
  17. end
  18. fprintf('Introduceti 1 pentru continuare sau 0 pentru reintroducere perechile de valori pentru interpolare: ');
  19. rel = input(' ');
  20. end
  21. rel = 1;
  22. while(~rel)
  23. fprintf('Pas evaluare (heval): ');
  24. heval = input(' ');
  25. xe = xi(1) : heval : xi(ni);
  26. npev = length(xe);
  27. if(xe(npev) < xi(ni))
  28. npev = npev + 1;
  29. xe = [xe xi(ni, 1)]
  30. end
  31. npev
  32. rel = 0;
  33. while(~rel)
  34. fprintf('Grad polinom de interpolare(mg, 1 <= mg <= ni - 1):');
  35. mg = input(' ');
  36. ye = zeros(npev, 1);
  37. for ip = 1: npev
  38. ye(ip) = INTPL(ni, xi, yi, mg, xe(ip));
  39. xe(ip)
  40. ye(ip)
  41. end
  42. rel = 0;
  43. while(~rel)
  44. plot(xi, yi, 'or', xe, ye, '-b');
  45. fprintf('Introduceti 1 pentru continuare sau 0 pentru reluare reprezentare grafica:');
  46. rel = input(' ');
  47. end
  48. fprintf('Introduceti 1 pentru continuare sau 0 pentru a relua introducerea altui grad pentru polinomul de interpolare:');
  49. rel = input(' ');
  50. end
  51. fprintf('Introduceti 1 pentru continuare sau 0 pentru reluare cu alt pas de evaluare');
  52. rel = input(' ');
  53. end
  54. fprintf('Introduceti 1 pentru continuare sau 0 pentru reluarea introducerii altei functii:');
  55. rel = input(' ');
  56. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement