% ========================== % instrucciones apartado 1.1 % ========================== % Representación sqrt(2) format long; ans format rat; ans vpa(ans,30) dec2bin(1234) base2dec('1234',6) % % Fallo de las propiedades matematicas % a=eps/2,1+a-1, 1-1+a % No asociatividad de la suma x=rand(1,1000);y=sort(x);z=y(end:-1:1); % El orden de la suma cambia el resultado vpa(sum(x),20),vpa(sum(y),20), vpa(sum(z),20) format long; % La precisión del resultado depende del orden de las operaciones a=0;b=-10; x=logspace(a,b,10000); sx=sum(x); y=x(end:-1:1); sy=sum(y); r=x(2)/x(1);se=(x(end)*r-x(1))/(r-1); % ========================== % instrucciones apartado 1.2 % ========================== % Bucles simples serie=0;for i=1:n; serie=serie+i*i;end serie=1:10;serie=serie*serie’ % alternative sin bucles factorial=1; for i=2:10;factorial=factorial*i; end % % EJEMPLOS % ======== % Ejemplo 1: Evaluacion de un polinomio mediante horner % Caso de un vector fila para el polinomio y un punto para evaluar % ##################### Inicio del fichero #################### function q = horner(p,x) % % Funcion que evalua el polinomio p(x) en el punto x % p(x) almacena los coeficientes del polinomio en orden decreciente % en un vector fila [fp,cp]=size(p); if fp~=1;error('El primer argumento debe ser un vector fila');end; nx=size(x);if any(nx~=1);error('El segundo argumento debe ser un punto');end q=p(1); for i=2:cp; q=q*x+p(i); end % ##################### fin del fichero #################### % % Caso de un vector para el polinomio y un vector de puntos para evaluar % ##################### Inicio del fichero #################### function q = horner(p,x) % % Funcion que evalua el polinomio p(x) en el punto x % p(x) almacena los coeficientes del polinomio en orden decreciente % en un vector (preferiblemente fila) np=size(p); if all(np~=1);error('El primer argumento debe ser un vector');end; nx=size(x); if all(nx~=1);error('El segundo argumento debe ser un vector');end; % q=p(1)*ones(size(x)); for i=2:max(np) q=p(i)+x.*q; end % ##################### fin del fichero #################### % % Ejemplo 2: funcion armónica % % ##################### Inicio del fichero #################### function y=armonica(n) if n<=0;armonica=0;exit;end % k=1:n;y=sum(1./k); % Opcion sin bucles y=0;for k=1:n;y=y+1/k;end % ##################### fin del fichero #################### % % ========================== % instrucciones apartado 1.3 % ========================== % Bucles condicionales % ##################### Inicio del fichero #################### function y=armonica2(error) y=0; k=1; while (1/k)>error;y=y+1/k;k=k+1;end % ##################### fin del fichero #################### % % ##################### Inicio del fichero #################### function y=armonica3(error) y=0; for k=1:10000; y=y+1/k; if (1/k)