Está en la página 1de 4

TEMA1:

function primer_ejercicio
clc
disp('1) Escribir una función que sume todos los elementos de una matriz
numérica de tamaño n x m.');
disp('2) Escribir una función que devuelva la media de los elementos de
una matriz numérica de tamaño n x m.');
disp('3) Un profesor quiere analizar los resultados de los exámenes que
propone a sus alumnos. ');
disp(' Cada alumno se examina 3 veces en un curso.');
disp('Y en cada ocasión realiza dos tipos de examen: un test y uno de
problemas.');
disp('Por tanto, en total son 6 exámenes por alumno.');
a= input('\nIngrese una opcion : ');
switch a
case 1
matriz_numerica(1)
case 2
matriz_numerica(2)
case 3
clc
disp('1)Calcular la media por cada tipo de examen en cada
convocatoria. La función debe devolver un vector con las 6 medias.');
disp('2)Calcular la media por alumno. También se devolverá un vector
con todas las medias.');
disp('3)Escribir una función que indique el número de alumnos cuya
nota media es superior a la media de todos los exámenes para todos los
alumnos.');
b= input('\nIngrese una opcion : ');
switch b
case 1
examen(1)
case 2
examen(2)
case 3
examen(3)
otherwise
input('Opcion incorrecta....vuelva a elegir una opcion
valida\n')
primer_ejercicio
end
otherwise
input('Opcion incorrecta....vuelva a elegir una opcion valida\n')
primer_ejercicio

end

function matriz_numerica(caso)
suma=0;
mfilas=input('Ingrese el numero de filas: ');
ncolumnas=input('Ingrese el numero de columnas: ');
%int A([m_filas,n_columnas]);
for x=1: mfilas
for y=1:ncolumnas
fprintf('%s %d %s %s %d %s', '[', x ,']','[',y,']');
A(x,y)=input(':');
suma= suma+A(x,y);
end

end

if caso == 1
disp('La suma es ');
disp(suma)
else
media = suma/(mfilas*ncolumnas);
disp('La media es ');
disp (media)
end

function examen(caso2)
cont=0;
suma_total_examenes=0;
mfilas=input('Ingrese el numero de alumnos: ');
ncolumnas=6;
for x=1: mfilas
fprintf('%s %d \n','Ingrese los datos del estudiante',x);
suma_alumnos(mfilas);
media_alumnos(mfilas);
suma_examenes(ncolumnas);
media_examenes(ncolumnas);
for y=1:ncolumnas
if mod(y, 2) == 0
fprintf('%s %d ','Ingrese la nota del examen ',y);
else
fprintf('%s %d ','Ingrese la nota del examen ',y);
end
A(x,y)=input(':');
suma_alumnos(x)=suma_alumnos(x)+A(x,y);%sa=suma de alumnos
end
media_alumnos(x)=suma_alumnos(x)/(ncolumnas);

end
switch caso2
case 1
for y=1:ncolumnas
for x=1:mfilas
suma_examenes(y)=suma_examenes(y)+A(x,y);%se= suma de
examenes
end
media_examenes(y)= suma_examenes(y)/(mfilas); %media examenes c/u
fprintf('%s %d %s %d \n','la media del examen :',y,' es
',media_examenes(y));
end

case 2
for x=1:mfilas
fprintf('%s %d %s %d \n','el alumno ',x,' tiene un promedio
de:',media_alumnos(x));
end
otherwise
for y=1:ncolumnas
for x=1:mfilas
suma_examenes(y)=suma_examenes(y)+A(x,y);
end
media_examenes(y)= suma_examenes(y)/(mfilas); %media examenes c/u
fprintf('%s %d %s %d \n','la media del examen :',y,' es
',media_examenes(y));
end
for y=1:ncolumnas
suma_total_examenes=suma_total_examenes+media_examenes(y);
end
media_total_examenes=suma_total_examenes/(ncolumnas);
fprintf('%s %d \n','la media de los examenes es
',media_total_examenes);
for x=1:mfilas
if media_alumnos(x)>media_total_examenes
cont= cont+1;
fprintf('%s %d %s %d \n','El promedio del alumno -',x,' - es
',media_alumnos(x));
end
end
fprintf('%s %d \n','EL TOTAL DE ALUMNOS DE MEDIAS MAYORES A LA DE
LOS EXAMENES ES',cont);
end

TEMA2:PROBLEMA1
function segundo_ejercicio_dos
M=[1 0 1;0 1 1;0 1 2]
A=[1,22,16,24,16,37,21,34,1,17;9,24,37,36,28,17,18,18,20,23;10,43,53,56,4
4,34,20,31,20,23]
M_INV=inv(M)
MF=M_INV*A %MF MATRIZ FINAL

for y=1:10 %columnas


for x=1:3
aux=MF(x,y);
switch aux
case 1
fprintf('%s ','A' );
case 2
fprintf('%s ','B' );
case 3
fprintf('%s ','C' );
case 4
fprintf('%s ','D' );
case 5
fprintf('%s ','E' );
case 6
fprintf('%s ','F' );
case 7
fprintf('%s ','G' );
case 8
fprintf('%s ','H' );
case 9
fprintf('%s ','I' );
case 10
fprintf('%s ','J' );
case 11
fprintf('%s ','K' );
case 12
fprintf('%s ','L' );
case 13
fprintf('%s ','M' );
case 14
fprintf('%s ','N' );
case 15
fprintf('%s ','Ñ' );
case 16
fprintf('%s ','O' );
case 17
fprintf('%s ','P' );
case 18
fprintf('%s ','Q' );
case 19
fprintf('%s ','R' );
case 20
fprintf('%s ','S' );
case 21
fprintf('%s ','T');
case 22
fprintf('%s ','U' );
case 23
fprintf('%s ','V' );
case 24
fprintf('%s ','X' );
case 25
fprintf('%s ','Y' );
case 26
fprintf('%s ','Z' );
otherwise
fprintf('%s ',' ');

end
end
end

También podría gustarte