Advertisement
Guest User

Lab3

a guest
Nov 21st, 2018
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scilab 1.84 KB | None | 0 0
  1. //a) parzystosc liczby
  2. liczba=22;
  3.  
  4. if modulo(liczba, 2)==0
  5.     disp("Liczba jest parzysta.");
  6. else
  7.     disp("Liczba jest nieparzysta.");
  8. end
  9.  
  10. //b) rozwiazania rownania kwadratowego ax^2+bx+c
  11. a=-6; //wspolczynnik przy x^2
  12. b=3; //wspolczynnik przy x
  13. c=-1; //wyraz wolny
  14.  
  15. //miejsca zerowe
  16. x1=0;
  17. x2=0;
  18.  
  19.     delta = b*b - 4*a*c;
  20.    
  21.     if (delta > 0)
  22.         x1 = (-b + sqrt(delta)) / (2*a);
  23.         x2 = (-b - sqrt(delta)) / (2*a);
  24.         disp ("Pierwiastki sa rozne.");
  25.         disp (x1,"x1 = ");
  26.         disp (x2,"x2 = ");    
  27.     elseif (delta == 0)
  28.         disp("Dwa pierwiastki rowne (delta=0).");
  29.         x1 = (-b + sqrt(delta)) / (2*a);
  30.         disp (x1,"x1 = x2 = ");      
  31.     else
  32.         rzeczywista = -b/(2*a);
  33.         urojona =sqrt(-delta)/(2*a);
  34.         disp("Delta <0. Pierwiastki zespolone.");
  35.         disp ("i",urojona,"+",rzeczywista, "x1 = ");
  36.         disp ("i",urojona,"-",rzeczywista, "x2 = ");
  37.     end
  38.  
  39. //c) ciag Fibonacciego
  40. dlugosc=20; //liczba elementow ciagu
  41. n=dlugosc-1; //elementy numeruje sie od 0
  42.  
  43. a=0; //n-2 wyraz
  44. b=1; //n-1 wyraz
  45.  
  46. W=zeros(1, n); //wektor z elementami ciagu
  47.  
  48. for i=0:n
  49.     W(1,i+1)=a;
  50.     tmp=a+b;
  51.     a=b;
  52.     b=tmp;
  53. end
  54.  
  55.   disp(W," wyrazow ciagu Fibonacciego: ",dlugosc,"Wektor zawierajacy ");
  56.  
  57. //d) Silnia liczby naturalnej n
  58. function [s]=silnia(n)
  59.     if ( n ~= round(n) || n<0)
  60.         error("Blad! Argument nie jest liczba naturalna.")
  61.     elseif (n<2)
  62.         s=n;
  63.     else
  64.         s=n*silnia(n-1);
  65.     end
  66. endfunction
  67.  
  68. //e) Pole i objetosc ostroslupa
  69. function [p,v]=ost(a,b,h)
  70.     Pp=a*b;
  71.     h1=sqrt((a/2)^2+h^2); //wysokosc sciany 1
  72.     p1=1/2*b*h1; //pole sciany 1
  73.     h2=sqrt((b/2)^2+h^2); //wysokosc sciany 2
  74.     p2=1/2*a*h2; //pole sciany 2
  75.     Pb=2*p1+2*p2; //pole powierzchni bocznej
  76.     v=1/3*Pp*h;
  77.     p=Pp+Pb;
  78. endfunction
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement