Está en la página 1de 7

leguaje

%:comentarios
mayusculas:matrices
minusculas:vectore y escalares
, o (espacio):filas
;columnas
&& : y
== : igual que
|| : o
! : no
pow(a,b) : "a" elevado a "b"
%d\n : enteros
%1.2f\n : decimales..
sqrt : raiz cuadrada

EJERCICOS MATLAB

1. realize un programa que nos de un promedio de 4 notas y determinar las nota que
son mayores al promedio

ejm: 15-12-16-14
rpta: 14.5.....mayores: 15-16

%programa que muestre los numeros mayores al promedio


clc
a=input('ingrese numero 1 =');
b=input('ingrese numero 2 =');
c=input('ingrese numero 3 =');
d=input('ingrese numero 4 =');
%promedio: p
p=(a+b+c+d)/4;
fprintf('los numeros mayores al promedio son: \n');
if(p < a)
fprintf('%1.3f\n',a)
end
if(p < b)
fprintf('%1.3f\n',b)
end
if(p < c)
fprintf('%1.3f\n',c)
end
if(p < d)
fprintf('%1.3f\n',d)
end

2. realize un programa que nos demuestre el mayor de una serie de numeros

ejm:58-74-35-59
RPTA:59

% realizar un programa que determine el numero mayor


clc
a=input('ingrese numero 1 =');
b=input('ingrese numero 2 =');
c=input('ingrese numero 3 =');
d=input('ingrese numero 4 =');
%imaginemos que el mayor es "a"
mayor=a
if(mayor < b)
mayor=b
end
if(mayor < c)
mayor=c
end
if(mayor < d)
mayor=d
end
fprintf('el numero mayor es %1.2f\n',mayor);

3. realizar un programa que reconozca los numeros capicua de tres digitos


EJM:151
RPTA: si es capicua

nro=input('ingrese numero');
%descomponer en unidad, decena, centena
centena=fix(nro/100)
nro=nro-centena*100;
decena=fix(nro/10)
unidad=nro-decena*10
%comparo la unidad con la centena o decena con unidad
if(unidad==centena)
fprintf('si es capicua')
else
if(unidad==decena)&&(centena==0)
fprintf('si es capicua')
else
fprintf('no es capicua')
end
end

4. realizar un programa que reconozca numeros capicua de 4 digitos

nro=input('ingrese numero');
%descomponer en unidad, decena, centena, millar
millar=fix(nro/1000)
nro=nro-millar*1000
centena=fix(nro/100)
decena=nro-centena*100;
decena=fix(nro/10)
unidad=nro-decena*10
%comparo la unidad con centena o unidad con decena o unidad con millar
if(unidad==millar)
fprintf('si es capicua')
else
if(decena==centena)&&(centena==0)
fprintf('si es capicua')
else
fprintf('no es capicua')
end
end

5. realizar un programa para determinar el area de un triangulo cuyos lados se


deben ingresar desde el teclado,tener en cuenta que la condicion de los lados de un
triangulo
es que la suma de dos lados siempre debens er mayor que el tercero, si no
cunmple esa condicion, los lados no corresponden a un triangulo y por lo tanto no
debe calcular
nada:
condicion (a+b>c y a+c>b y b+c>a)

semiperimetro: p=(a+b+c)/2

area: area=p(p-a)(p-b)(p-c)^(1/2)

si a=3,b=4;c=5...entonces area=6
si a=3,b=9;c=5...entonces no se calcula nada

% calcular el area de un triangulo


clc
a=input('ingrese lado 1 (cm): ');
b=input('ingrese lado 2 (cm): ');
c=input('ingrese lado 3 (cm): ');
if(a+b>c & b+c>a & a+c>b)
p=(a+b+c)/2;
area=sqrt(p*(p-a)*(p-b)*(p-c));
fprintf('area = %1.2f mc2\n',area);
else
disp('"los lados ingresados no corresponden a un triangulo"')
disp('ingrese datos nuevamente')
end

6. elaborar un programa para ingresar dos numeros, el programa debe tener un


sistema de menu con las siguientes opciones:
1.sumar
2.restar
3.multiplicar
4.dividir
entonces con los numeros ingresados y la opcion seleccionada se debe realizar la
operacion correspondiente:

%programa que trabaja con menus


clc
a=input('ingrese dato 1: ');
b=input('ingrese dato 2: ');
disp(' ');
disp('1.Sumar.');
disp('2.Restar.');
disp('3.multiplicar.');
disp('4.Dividir.');
op=input('elija una opcion (1-4): ');
if(op==1)
r=a+b;
elseif(op==2)
r=a-b;
elseif(op==3)
r=a*b;
elseif(op==4)
r=a/b;
else
disp('opcion equivocada..intente nuevamente')
end
if(op>=1 & op<=4)
fprintf('\n Resultado = %1.2f\n',r);
end

7. realizar un programa para determinar la suma de N numeros enteros que se


ingresan desde el teclado:
ejm: 12-15-8-20-5

%programa calcular la suma de varios numeros


clc
N=input('ingrese numero de datos: ');
i=1;
suma=0;
while(i<=N)
dato=input('ingrese dato: ');
suma=suma+dato;
i=i+1;
end
fprintf('Suma = %1.2f\n',suma)

8. relizar una figura con triangulos (*) formas distintas:

forma 1:

%programa calcular la suma de varios numeros


clc
N=input('ingrese numero de datos: ');
i=1;
suma=0;
while(i<=N)
dato=input('ingrese dato: ');
suma=suma+dato;
i=i+1;
end
fprintf('Suma = %1.2f\n',suma)

forma 2:

%triangulo a base de puntos con centro vacio


clc
nro=input('ingrese tama�o: ');
for(i=1:1:nro)
for(j=1:1:i)
if((i==j)||(i==nro)||(j==1))
fprintf('*');
else
fprintf(' ')
end
end
fprintf('\n')
end

9. descomponer segundos en horas..minutos..segundos

% descomponer los segundos a horas minutos y segundos


clc
segundo=input('ingrese cantidad de segundos: ');
hora=fix(segundo/3600);
segundo=segundo-hora*3600;
minuto=fix(segundo/60);
segundo=segundo-minuto*60;
fprintf('la descomposicion es %d horas, con %d minutos y %d
segundo',hora,minuto,segundo)

10. lo mismo que el nueve a�adiendo nuevos segundos

%segundos adicionales
Nsegundo=input('ingrese numeros adicionales: ');
%tiempo actual
hora=input('ingrese hora: ');
minuto=input('ingrese minuto: ');
segundo=input('ingrese segundo: ');
Nhora=fix(segundo/3600);
segundo=segundo-Nhora*3600;
Nminuto=fix(segundo/60);
segundo=segundo-Nminuto*60;
NSS=segundo + Nsegundo;
NMM=minuto + Nminuto;
NHH=hora + Nhora;
if(NSS>59);
NMM=NMM+1;
NSS=NSS-60;
end
if(NHH>23);
NHH=-24;
end
fprintf('la hora es %d: %d: %d',NHH,NMM,NSS)

11. realize un tabla que muestre la tabla de la multiplicacion del 1 hasta el n

%tabla de multiplicar
clc
n=input('ingrese numero: ');
for(i=1:n)
fprintf('la tabla del %d\n',i)
for(a=1:12)
fprintf('%d x %d = %d\n',i,a,i*a)
end
end

12. realize un programa que calcule la sumatoria hasta n de la serie:

1+(1/2)+(1/3)+(1/4)+......(1/n)

%realizar un programa que calcule la sumatoria hasta n fracciones de la


%siguiente serie:
clc
resultado=0;
while true
n=input('\ningrese numero: ');
if(n>0)
for(i=1:n)
resultado = resultado + (1/i);
end
fprintf('el resultado es: %1.2f\n',resultado);
break
else
fprintf('no es un numero correcto');

end
end

13. grafica la letra A

%grafica la letra A
clc
n=input('ingrese tama�o: ');

for(i=1:n)
for(j=1:n)
if(i==1)||(j==1)||(j==n)||(i==n)
fprintf('*')
else
fprintf(' ')
end

end
fprintf('\n')

end

14. realize un programa para determinar las raices de una ecuacion cuadratica:

% realizar un programa que determine las raices de una ecuacion cuadratica


%ax^2+bx+c=0
clc
a=input('ingrese numero a: ');
b=input('ingrese numero b: ');
c=input('ingrese numero c: ');
d=(b^2)-(4*a*c);
if(d>0)
x1=((-b+sqrt(d))/(2*a));
x2=((-b-sqrt(d))/(2*a));
fprintf('la raiz numero uno es: %1.2f\n raiz x2: %1.2f',x1,x2)
elseif(d==0)
x1=(-b/(2*a));
x2=(-b/(2*a));
fprintf(' raiz numero uno es x1: %1.2f\n raiz x2: %1.2f\n',x1,x2)
else
fprintf('no tiene soluciones reales')
end

15. ingrese la serie


clc
n=input('ingrese limite: ');
for (i=1:n)
if(mod(i,2)==0)
fprintf('-(%d!/%d!)',i,i+1);
else
fprintf('+(%d!/%d!)',i,i+1);
end
end

16. determinar si un numero es primo

%determinar si un numero es primo


clear
nro=input('\ningrese numero: ');
bandera=0;
for(i=2:1:nro-1);
if(mod(nro,i)==0);
bandera=1;
end
end
if(bandera==0)&&(nro~=1);
fprintf('el numero es primo');
else
fprintf('el numero no es primo');
end

17.. matriz

%dibujar un programa que elimine todos los multipos de 3 en una matriz nxm
clc
n=input('ingrese dato: ');
m=input('ingrese dato: ');
A=fix(rand(n,m)*10)
for(i=1:n)
for(j=1:m)
if(mod(A(i,j),3)==0 && mod(A(i,j),2)~=2)
fprintf('los elementos de la matriz que retiraron: %d\n',A(i,j))
end
end
end

También podría gustarte