0% encontró este documento útil (0 votos)
63 vistas

Program Hecho en Matlab

Este documento contiene varios programas en Matlab. El primer programa calcula la solución de una ecuación iterativamente usando el método de Newton-Raphson. Los otros programas resuelven diversos problemas matemáticos como calcular factoriales, sumatorias y encontrar el número entero más pequeño cuya suma es menor a un límite.

Cargado por

EDUARDO QUEZADA
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
63 vistas

Program Hecho en Matlab

Este documento contiene varios programas en Matlab. El primer programa calcula la solución de una ecuación iterativamente usando el método de Newton-Raphson. Los otros programas resuelven diversos problemas matemáticos como calcular factoriales, sumatorias y encontrar el número entero más pequeño cuya suma es menor a un límite.

Cargado por

EDUARDO QUEZADA
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 8

Realizar un programa en Matlab que calcule la solucin de una

ecuacin de forma iterativa utilizando el Metodo de Newton-


Raphson.

%Realizar un programa en Matlab que calcule la solucin de una
ecuacin de
%forma iterativa utilizando el Metodo de Newton-Raphson.

fprintf('\n\n\t\t\t\t *****PROGRAMA PARA CALCULAR EL METODO DE NEWTON-
RAPHSON***** \n\n')
disp('### DATOS DE ENTRADA ###');
fprintf('\n\n\t\t\t\t PORCENTAJE DE ERRORES: \n\n')
cota = input(' ');
fprintf('\n\n\t\t\t\t N MAXIMO DE ITERACIONES: \n\n')
n = input(' ');
fprintf('\n\n\t\t\t\t VALOR INCIAL DE LA X: \n\n')
xi = input(' ');

xanterior = xi;
x = xanterior;
eanterior = inf;
e = eanterior;

i = 1; %contador de interaciones

% voy a dibujar las tangentes mientras calculo
figure(1)
clf
hold on
fplot('mifuncion(x)',[-3 3],'b');
grid

%debo realizar un procedimiento iterativo mientras el error sea mayor
que
%la cota y el numero de iteraciones sea menor que n

while (e>cota) && (i<n)
y = mifuncion (xanterior);
yd = mifuncion_derivada (xanterior);
x = (xanterior - y)/yd;

%para dibujar
yant = mifuncion (xanterior);
plot ([xanterior x],[yant 0], 'r')
e = abs (x - xanterior);
xanterior = x;
eanterior = e;
i=i+1;
end
hold off

%comprobacion de por cual de las dos (tres) condiciones salio
if (e<cota)
disp('### DATOS DE SALIDA O SOLUCION ###');
fprintf('\n\n\t\t\t\t la solucion hallada es: %d\n',x)
fprintf('\n\n\t\t\t\t la cota de error es: %d\n',e)
fprintf('\n\n\t\t\t\t el numero de interaciones utilizado es:
%d\n',i)
fprintf('\n\n\t\t\t\t y el valor de la funcion en dicho punto es:
%d\n',mifuncion(x))
else
fprintf('\n\n\t\t\t\t !!!SE SUPERO EL NUMERO DE
INTERACIONES!!!!!\n\n\n\n')
end
pause
clc

SUBPROGRAMA # 01:
%Este el subprograma mifuncion llamado en el programa de Newton-
Raphson

function y = mifuncion(x)
y = ((x*x)+(0.5-exp(-x)));

SUBPROGRAMA # 02:
%Programa mifuncion_derivada igual llamado en el programa de Newton-
Raphson

function y = mifuncion_derivada(x)
y = ((2*x)+exp(-x));




Programa de el factorial de un numero

%Programa de el factorial de un numero
fprintf('PROGRAMA QUE CALCULA EL FACTORIAL DE UN NUMERO')
fprintf('\n\n\t\t\t\t Ingrese el numero: \n\n')
n=input(' ');
fact=1;
i=1;
while i<=n
fact=fact*i;
i=i+1;
end
fprintf('\n\n\t\t\t\t El factorial del numero es de: %d\n',fact)
pause
clc


Realizar un programa en Matlab que encuentre el entero ms
pequeo (nm.) para el cual la suma 1+2+3+.+nm. es
menor o igual que el limite.

Solucin:
%Realizar un programa en Matlab que encuentre el entero ms pequeo
(nm.) para el cual la suma 1+2+3+.+nm. es menor o igual que el
limite.
fprintf('PROGRAMA QUE CALCULA ENTERO POSITIVO MAS PEQUEO')
num=0;
suma=0;
fprintf('\n\n\t\t\t\t Ingrese el limite: \n\n')
limite =input(' ');
while suma <= limite
num=num+1;
suma=suma+num;
end
fprintf('\n\n\t\t\t\t el numero es: %d\n',num)
fprintf('\n\n\t\t\t\t la suma es: %d\n',suma)
pause
clc

Realizar un programa en Matlab que se ingrese informacin
por teclado de las notas de una clase de n alumnos y nos
calcule el tanto por ciento de suspensin.

Solucin:
%Realizar un programa en Matlab que se ingrese informacin por teclado
de las notas de una clase de n alumnos y nos calcule el tanto por
ciento de suspensin.
fprintf('\n\n\t\t\t\t *PROGRAMA PARA CALCULAR EL TANTO POR CIENTO DE
ALUMNOS SUSPENDIDOS* \n\n')
alumnos=1;
suspendidos=0;
fprintf('\n\n\t\t\t\t Ingrese el numero de alumnos: \n\n')
n=input(' ');
while alumnos <= n
fprintf('\n\n\t\t\t\t Ingrese nota de alumno N %d\n',alumnos)
nota= input (' ');
if nota<7
suspendidos=suspendidos+1;
end
alumnos = alumnos+1;
end
tantoporciento=(suspendidos*100)/n;
fprintf('\n\n\t\t\t\t EL PORCENTAJE DE LOS ALUMNOS SUSPENDIDOS ES DE:
%d\n',tantoporciento)
pause
clc

Realizar un programa en Matlab para encontrar y visualizar la
ciudad ms poblada de cada provincia del Ecuador.

Solucin:
%Realizar un programa en Matlab para encontrar y visualizar la ciudad
ms poblada de cada provincia del Ecuador.
fprintf('\n\n\t\t\t\t *PROGRAMA PARA CALCULAR LA CIUDAD MAS POBLADA
DEL ECUDOR* \n\n')
fprintf('\n\n\t\t\t\t Ingrese numero de Provincias: \n\n')
n=input(' ');
i=1;
while i<=n
mayor=0;
j=1;

fprintf('\n\n\t\t\t\t PROVINCIA N: %d\n',i)

fprintf('\n\n\t\t\t\t Ingrese numero de Cantones: \n\n')
m=input(' ');
while j<=m
fprintf('\n\n\t\t\t\t CANTON N: %d\n',j)

fprintf('\n\n\t\t\t\t Ingrese N de ciudadanos del Canton:
\n\n')
ciudadanos=input(' ');
if ciudadanos > mayor
mayor=ciudadanos;
end
j=j+1;
end
i=i+1;
fprintf('\n\n\t\t\t\t LA MAYOR POBLACION DE LOS CANTONES DADOS ES
DE: %d\n',mayor)
end
pause
clc

Realizar un programa en Matlab que realice la definicin de

(potencia n de x)

Solucin:
%Realizar un programa en Matlab que realice la definicin de y=x^n
(potencia n de x)

fprintf('\n\n\t\t\t\t *****PROGRAMA QUE CALCULA POTENCIAS***** \n\n')
fprintf('\n\n\t\t\t\t Ingrese numero de base: \n\n')
x=input(' ');
fprintf('\n\n\t\t\t\t Ingrese numero de exponente: \n\n')
n=input(' ');
y=1;
for i = 1:abs(n)
y=y*x;
end
if n<0
y=1/y;
end
fprintf('\n\n\t\t\t\t !!!!!.....EL RESULTADO ES: %d unidades \n',y)
pause
clc

Realizar un programa en Matlab que realice la siguiente
formula de sumatoria:

()



Solucin:
%Realizar un programa en Matlab que realice una formula de sumatoria
dada:

fprintf('\n\n\n\t\t\t *****PROGRAMA QUE RESUELVE UNA ECUACION DE
SUMATORIA DADA*****\n\n\n')
fprintf('\n\n\t\t\t\t Ingrese el limite de la sumatoria: \n\n')
n=input(' ');
fprintf('\n\n\t\t\t\t Ingrese el valor de X o la base: \n\n')
x=input(' ');
fact=1;
i=1;
k=0;
while i<=n
fact=fact*i;
resultado=(((-1)^i)*(x^i)/(fact));
i=i+1;
k=resultado+k;
end
fprintf('\n\n\t\t\t\t !!!!!!.....EL RESULTADO ES: %d unidades \n',k)
pause
clc

Realizar un programa en Matlab que busque un determinado
nombre en una lista de nombres, de modo que el algoritmo
imprima los siguientes mensajes segn el resultado: Nombre
Encontrado si el nombre est en la lista; Nombre no existe
si el nombre no est en la lista.

Solucin:
%Realizar un programa en Matlab que busque un determinado nombre en
%una lista de nombres, de modo que el algoritmo imprima los siguientes
%mensajes segn el resultado: Nombre Encontrado si el nombre est en
%la lista; Nombre no existe si el nombre no est en la lista.

fprintf('\n\n\t\t\t\t*****PROGRAMA PARA ENCONTRAR UN NOMBRE EN UNA
LISTA***** \n\n')
disp('RECUERDE:');
disp('Que en MATLAB para escribir nombres se utiliza los apostrofes ')
disp('ahora intentalo!!!')
fprintf('\n Ingrese numero de personas: \n')
n=input(' ');
fprintf('\n Ingrese el nombre de la persona que deseada buscar: \n')
nombre2=input(' ');
fprintf('\n Ingrese los nombres de la LISTA de personas: \n')
y=0;
j=0;

for i=1:n
fprintf('\t\t\t\t N%d: \n',i)
nombre=input(' ');
if strcmp(nombre2,nombre)==1
y=1;
k=i;
j=j+1;
end
end
if y==1
if j>=2
fprintf('\n\n\t\t\t\t !!!!!!!!...NOMBRE ENCONTRADO....%d veces
y su posicion actual es N:%d \n',j,k)
else
fprintf('\n\n\t\t\t\t !!!!!!!!...NOMBRE ENCONTRADO...y su
posicion es N:%d \n',k)
end
else
fprintf('\n\n\t\t\t\t !!!!!!!!...NOMBRE NO EXISTE EN LA LISTA
\n')
end
pause
clc



Realizar un programa en Matlab que cuente cuantas ies
existen en una frase

Solucin:
%Realizar un programa en Matlab que cuente cuantas ies existen en
una frase
fprintf('\n\n\t\t\t\t*****PROGRAMA PARA ENCONTRAR Ies EN UN FRASE*****
\n\n')
disp('RECUERDE:');
disp('Que en MATLAB para escribir nombres se utiliza los apostrofes ')
disp('ahora intentalo!!!')
fprintf('\n Ingrese la frase: \n')
nombre=input(' ');
n=length(nombre);
j=0;
for i=1:n
switch nombre(i)
case 'i'
j=j+1;
case 'I'
j=j+1;
end
end
if j==0
fprintf('\n\n\t\t\t\t !!!!!!!!...No existe Ies en esta frase \n')
else
fprintf('\n\n\t\t\t\t !!!!!!!!...El numero de Ies es:%d \n',j)
end
pause
clc

Realizar un programa en Matlab que cuente cuantas vocales
existen en una frase

Solucin:
%Realizar un programa en Matlab que cuente cuantas vocales existen en
una frase
fprintf('\n\n\t\t\t\t*****PROGRAMA PARA ENCONTRAR VOCALES EN UN
FRASE***** \n\n')
disp('RECUERDE:');
disp('Que en MATLAB para escribir nombres se utiliza los apostrofes ')
disp('ahora intentalo!!!')
fprintf('\n Ingrese la frase: \n')
nombre=input(' ');
n=length(nombre);
j=0;
for i=1:n
switch nombre(i)
case 'a'
j=j+1;
case 'e'
j=j+1;
case 'i'
j=j+1;
case 'o'
j=j+1;
case 'u'
j=j+1;
end
end
if j==0
fprintf('\n\n\t\t\t\t !!!!!!!!...No existe vocales en esta
frase\n')
else
fprintf('\n\n\t\t\t\t !!!!!!!!...El numero vocales es:%d \n',j)
end
pause
clc

También podría gustarte