miércoles, 25 de mayo de 2011

Primera parte.

x=1;
while((1+x)>1)
    x=x/2;
end;
x=2*x;
disp('el valor mas pequeño es');
disp(x);
disp('este programa en particular arroja el minimo de tolerancia o aproximacion que acepta el  matlab, es decir  que valores inferiores a la x/2 calculada el matlab los toma como 0');

segunda parte. Metodo de Newton

disp('Metodo de Newton');
disp('Recomendacion: Introducir un valor pequeño inicial, entre 0 y 1');
t=input('El valor de la tolerancia es:');
t=(1/10)^t;
xo=input('El valor de inicio es:');
fxo=(log10(xo))+xo;
fxd=(1/(log(10)))*(1/xo);
x1=xo-(fxo/fxd);
if(x1<0)
    fprintf('ERROR,Correr de nuevo el programa e introducir un valor de inicio menor que xo= %.5f',xo );
else
    while((abs(x1-xo))>=(t));
        xo=x1;
        fxo=(log10(xo))+xo;
        fxd=(1/(log(10)))*(1/xo);
        x1=xo-(fxo/fxd);
    end;
  x=x1;
fprintf('El valor de la raiz de f(x)=log(x)+x es x= %.5f',x); 
end;

segunda parte.Metodo de biseccion

disp('Metodo de biseccion');
disp('Recomendacion: Usar valores reales positivos para las variables en el intervalo(a,b)');
t=input('El valor de tolerancia es:');
t=(1/10)^t;
a=input('El valor de a es:');
b=input('El valor de b es:');
fa=(log10(a))+a;
fb=(log10(b))+b;
if(fa*fb>=0);
    fprintf('Error; correr de nuevo el programa e introducir otro intervalo (a,b)');
else
    k=abs(fa-fb);
    while(t<k);
        fa=(log10(a))+a;
        fb=(log10(b))+b;
        m=(a+b)/2;
        fm=(log10(m))+m;
        if(fm*fa>0);
            a=m;
            fa=(log10(a))+a;
            k=abs(fa-fb);
        elseif(fm*fb>0);
                b=m;
                fb=(log10(b))+b;
                k=abs(fa-fb);
        end
    end
    x=(a+b)/2;
    fprintf('El valor de la raiz de F(x)=log(x)+x es x= %.5f',x);
end

Segunda Parte.El numero n mas pequeño

disp('el numero entero n  mas pequeño');
M=input('el valor de M es:');
n=0;
k=0;
while((k<M)&&(n<=1000))
    n=n+1;
    k=1/n+k;
end
fprintf('el valor de n es %.4f',n);

jueves, 19 de mayo de 2011

Ejercicio 4. Tabla de comparacion de Pi


n
Vieté
Borwein
Método alternativo
4
3.13654849
3.38871193
3.14260475
8
3.14157294
3.38871193
3.14159977
16
3.14159265
3.38871193
3.14159265

Ejercicio 4. Metodo alternativo

disp('metodo alternativo');
n=input('valor de n:');
if (n>0)
p=0;
for i=0:n
p=p+exp(i*log(-1))/((i+i+1)*exp(i*log(3)));
end;
p=2*(sqrt(3))*p;
fprintf('valor aproximado de pi es %0.8f',p);
else
disp('n tiene que ser mayor que 0');
end;

miércoles, 18 de mayo de 2011

Formula de Viete(1593)

 disp('Cálculo de Pi por la Fórmula de Viete');
n=input('valor de n:');
d=0;
h=1;
m=1;
for i=1:n
    d=sqrt(2+d);
    m=m*d;
    h=h*2;
    p=(2*h)/m;
end;
fprintf('el valor aproximado de pi es %.8f',p);