ejercicios funciones y archivos
Post on 05-Jul-2018
228 Views
Preview:
TRANSCRIPT
-
8/16/2019 Ejercicios Funciones y Archivos
1/5
UNMSM – EAP Ingeniería Química-Computación Aplicada a la Ingeniería Página 1 de 5
Prof. Heber Helfer
Ejercicios. Funciones y Archivos
Función atrian – Calcula el área de un triángulo a partir de suslados sin verificar los datos.
function area = atrian(a,b,c)
% atrian - Calcula el área de un triángulo a partir de
% los lados
p = (a+b+c)/2;
area = sqrt(p*(p-a)*(p-b)*(p-c));
end
Función atriang – Calcula el área de un triángulo a partir de suslados verificando los datos.
function area = atriang(a,b,c)
% atriang - Calcula el área de un triángulo a partir de
% los lados
p = (a+b+c)/2;
area = sqrt(p*(p-a)*(p-b)*(p-c));
end
Programa que usa la función atriang
clc
clear all
disp('Programa que calcula el área de un triángulo');
disp('a partir de sus lados');
x = input('Digite la longitud del primer lado: ');
y = input('Digite la longitud del segundo lado: ');
z = input('Digite la longitud del tercer lado: ');
a = atriang(x,y,z);
fprintf('El área del triángulo es %9.2f\n', a);
-
8/16/2019 Ejercicios Funciones y Archivos
2/5
UNMSM – EAP Ingeniería Química-Computación Aplicada a la Ingeniería Página 2 de 5
Prof. Heber Helfer
Función que calcula el número de elementos contenidos en un archivo,el número de positivos, la suma y promedio de los elementos positivos.
function [n,npos,suma,prom]= calcsp(x)
n=length(x);
suma=0;
npos = 0;
for i=1:n
if x(i) > 0
npos=npos+1; % cuenta positivos
suma=suma+x(i); % suma los positivos
end
end
prom=suma/npos;
end
Programa que usa el archivo calc.txt y la función calcsp para hacer cálculos de los datos positivos.
clc
clear all
disp('Programa que calcula la suma y promedio de');
disp('los datos positivos de un archivo.')
w=load('calc.txt');
[n,np,s,p]=calcsp(w);
fprintf('Número total de datos: %d\n',n);
fprintf('Número de datos positivos: %d\n',np);
fprintf('La suma de los datos positivos es %8.2f\n',s);
fprintf('El promedio de los datos positivos es %8.2f\n',p);
-
8/16/2019 Ejercicios Funciones y Archivos
3/5
UNMSM – EAP Ingeniería Química-Computación Aplicada a la Ingeniería Página 3 de 5
Prof. Heber Helfer
1. Habiendo leído una matriz de 3 filas y 3 columnas, calcule y presente en la pantalla la suma de sus
filas. Use bucles para el cálculo.
Rpta.:
Usando la función suma
>> A=[1 2 3;4 5 6;7 8 9];
>> sum(A,2)
Programando
clc
clear all
A=[1 2 3;4 5 6;7 8 9];
suma = 0;
for i=1:3
% Cálculo de la suma de una fila
for j=1:3
suma = suma + A(i,j);
end
fprintf('La suma de la fila %d es %8.2f\n',i,suma);
% Para calcular la suma de la siguiente fila
% hacemos suma = 0 para que no se acumule con la anterior
suma=0;
end
Programa que calcula el promedio de los pH ácidos
clc
clear all
disp('Programa que calcula el promedio de los pH ácidos.');
x = load('phagua.txt');
n=length(x);
ac=0; % Número de pHs ácidos
sumac=0; % Suma de los pHs ácidos
for i=1:n
if x(i)
-
8/16/2019 Ejercicios Funciones y Archivos
4/5
UNMSM – EAP Ingeniería Química-Computación Aplicada a la Ingeniería Página 4 de 5
Prof. Heber Helfer
Dados dos vectores de 5 elementos cada uno, a y b, calcule la sumatoria de las diferencias al cuadrado:
25
1
i
ii ba
Rpta.: Usando la función sum de MATLAB
clcclear all a=[1 2 3 4 5]; b=[6 7 8 9 10];sum((a-b).*(a-b))
Programando
clc
clear all
disp('Cálculo de la sumatoria de las diferencias entre a y b');
disp('elevada al cuadrado.');
a=[1 2 3 4 5];
b=[6 7 8 9 10];
suma=0;
for i=1:5
c=a(i)-b(i);
suma=suma+c*c;
end
fprintf('La sumatoria es %8.2f\n', suma);
1. Escriba un programa que genere un archivo de n datos reales. Luego escriba otroprograma que lea dicho archivo de datos y calcule la desviación estándar muestraldefinida como
2
2
1
i
i
x x
n s
n
clc
clear all
disp('Programa que calcula la desviación estándar muestral'); x = load('ph2.txt');
n=length(x);
sxi2=sum(x.*x);
sxi=sum(x);
s=sqrt((sxi2-sxi^2/n)/(n-1));
fprintf('La desv. estándar muestral es %f\n',s);
fprintf('Usando la función std de MATLAB es %f\n',std(x));
-
8/16/2019 Ejercicios Funciones y Archivos
5/5
UNMSM – EAP Ingeniería Química-Computación Aplicada a la Ingeniería Página 5 de 5
Prof. Heber Helfer
Escriba un programa que genere un archivo de n datos reales. Luego escriba otro
programa que lea dicho archivo de datos y calcule la desviación estándar muestral
definida como
clc
clear all
disp('Programa que calcula la desviación estándar muestral');
x = load('ph2.txt');
n=length(x);
p=mean(x);
sumadifcuad=sum((x-p).^2);
s=sqrt(sumadifcuad/(n-1));
fprintf('La desv. estándar muestral es %f\n',s);
fprintf('Usando la función std de MATLAB es %f\n',std(x));
top related