46 ejercicios desarrollados
TRANSCRIPT
1.-ESCRIBIR UN PROGRAMA QUE CALCULE LAS SOLUCIONES REALES DE UNA ECUACION
DE SEGUNDO GRADO Ax2+bX+c = 0. EL PROGRAMA DEBE DEVOLVER EL NÚMERO DE
SOLUCIONES DISTINTAS (UNA SI b2-4ac=0, DOS SI b2-4ac>0 NINGUNA SI b2-4ac<0) Y CUALES SON ESAS
SOLUCIONES:
clc, clear all, format compact
disp('================================')
a = input('INGRESE EL VALOR DE A= ');
b = input('INGRESE EL VALOR DE B= ');
c = input('INGRESE EL VALOR DE C= ');
disp('================================')
if (b^2)-(4*a*c)==0
x=-b/(2*a);
disp('TIENE UNA SOLUCION = ')
disp(' X ES IGUAL A :'), disp(x)
else
if (b^2)-(4*a*c)>0
x(1)=-b+sqrt((b.^2)-(4*a*c));
x(2)=-b-sqrt((b.^2)-(4*a*c));
disp('TIENE DOS SOLUCIONES = ')
disp('X1 ES IGUAL A:');
disp(x(1));
disp('X2 ES IGUAL A:')
disp(x(2))
else (b^2)-(4*a*c)<0
clc
disp('================================')
disp('NO TIENE SOLUCION')
end
end
disp('================================')
2-.ESCRIBIR UN PROGRAMA TAL QUE DADOS LOS GOLES DEL EQUIPO LOCAL (GL) Y LOS
GOLES DEL EQUIPO VISITANTE (GV), DEVUELVA UNA CADENA DE CARACTERES INDICANDO
QUÉ EQUIPO HA GANADO (RESULTADOS POSIBLES: ‘LOCAL’, ‘VISITANTE’, ‘EMPATE’).
clc, clear, format compact
disp('=============================================================')
disp('¿QUE EQUIPO HA GANADO?')
disp('=============================================================')
x= input('GOLES DEL EQ. LOCAL=');
y= input('GOLES DEL EQ. VISITANTE =');
disp('=============================================================')
if x<y
disp('EL EQUIPO LOCAL TIENE :')
disp(x)
disp('EL EQUIPO VISITANTE TIENE :')
disp(y)
disp('COMO EL EQUIPO VISITANTE TIENE MAS GOLES, ES EL GANADOR')
end
if x>y
disp('EL EQUIPO LOCAL TIENE :')
disp(x)
disp('EL EQUIPO VISITANTE TIENE :')
disp(y)
disp('COMO EL EQUIPO LOCAL TIENE MAS GOLES, ES EL GANADOR')
end
if x==y
disp('EL EQUIPO LOCAL TIENE :')
disp(x)
disp('EL EQUIPO VISITANTE TIENE :')
disp(y)
disp('COMO EL EQUIPO VISITANTE Y EL EQUIPO LOCAL TIENEN')
disp('LA MISMA CANTIDAD GOLES, ESTO ES UN EMPATE')
end
disp('=============================================================')
3.- ESCRIBIR UN PROGRAMA QUE RECIBA LA NOTA (NÚMERO REAL) QUE UN ALUMNO HA SACADO EN UN EXAMEN Y DEVUELVA SU CALIFICACIÓN (CADENA DE CARACTERES), SEGÚN EL SIGUIENTE CRITERIO: 0-10, SUSPENSO; 10.1-13.9, APROBADO; 14.0-16.9 NOTABLE; 17.0-20, SOBRESALIENTE:
clc,clear all, format compact
disp('==================================')
x=input('INGRESE LA NOTA DEL ALUMNO = ');
disp('==================================')
if x>=0
if x>=0 & x<=10
disp('LA CALIFICACIN ES :')
disp(x)
disp('SUSPENSO')
end
if x>10 & x<14
disp('LA CALIFICACIN ES :')
disp(x)
disp('APROBADO')
end
if x>=14 & x<17
disp('LA CALIFICACIN ES :')
disp(x)
disp('NOTABLE')
end
if x>=17 & x<=20
disp('LA CALIFICACIN ES :')
disp(x)
disp('SOBRESALIENTE')
end
if x>20
disp('LA NOTA NO EXISTE')
end
else
disp('LA NOT NO EXISTE')
end
disp('==================================')
4- IMPLEMENTAR UNA FUNCION QUE DADO TRES NUMEROS, LOS DEVUELVA ORDENADOS DE MENOR A
MAYOR. DEBE CONSIDERAR SI HAY DOS NUMEROS IGUALES.
clc, clear all, format compact
disp('==========================================')
a=input('INGRESE EL PRIMER NUMERO = ');
b=input('INGRESE EL SEGUNDO NUMERO = ');
c=input('IBGRESE EL TERCER NUMERO = ');
disp('==========================================')
if a<b &b<c
disp ([a,b,c])
disp('LOS NUMEROS SON DIFERENTES')
end
if a<b & c<b & a<c
disp([a,c,b])
disp('LOS NUMEROS SON DIFERENTES')
end
if a<b & c<b & c<a
disp([c,a,b])
disp('LOS NUMEROS SON DIFERENTES')
end
if b<a & c<a & b<c
disp([b,c,a])
disp('LOS NUMEROS SON DIFERENTES')
end
if b<a & c<a & c<b
disp([c,b,a])
disp('LOS NUMEROS SON DIFERENTES')
end
if a<c & b<c & b<a
disp([b,a,c])
disp('LOS NUMEROS SON DIFERENTES')
end
% PARA LOS NUMEROS IGUALES
if a==b & a<c
disp([a,b,c])
disp('EL PRIMER Y SEGUNDO NUMERO SON IGUALES')
end
if a==b & c<a
disp([c,b,a])
disp('EL PRIMER Y SEGUNDO NUMERO SON IGUALES')
end
if a==c & a<b
disp([a,c,b])
disp('EL PRIMER Y TERCER NUMERO SON IGUALES')
end
if a==c & b<a
disp([b,a,c])
disp('EL PRIMER Y TERCER NUMERO SON IGUALES')
end
if b==c & a<c
disp([a,b,c])
disp('EL SEGUNDO Y TERCER NUMERO SON IGUALES')
end
if b==c & c<a
disp([c,b,a])
disp('EL SEGUNDO Y TERCER NUMERO SON IGUALES')
end
if a==b & c==a
disp([a,b,c])
disp('LOS TRES NUMEROS SON IGUALES')
end
disp('==========================================')
5.-EL CUADRANTE DE UN PUNTO X,Y SE PUEDE DETERMINAR A PARTIR DEL SIGNO DE X E Y. ESCRIBIR UN
RPOGRAMA TAL QUE DADAS LAS COORDENADAS X E Y, INDIQUE A QUE CUADRANTE PERTENECE EL
PUNTO.
clc, clear all, format compact
disp('=======================================')
x=input('PUNTO EN EL EJE X = ');
y=input('PUNTO EN EL EJE Y = ');
disp('=======================================')
if x>0 & y>0
disp('EL PUNTO X ES POSITIVO,')
disp('EL PUNTO Y ES POSITIVO')
disp('Y PERTENECEN AL PRIMER CUADRANTE')
end
if x<0 & y>0
disp('EL PUNTO X ES NEGATIVO,')
disp('EL PUNTO Y ES POSITIVO')
disp('Y PERTENECEN AL SEGUNDO CUADRANTE')
end
if x<0 & y<0
disp('EL PUNTO X ES NEGATIVO,')
disp('EL PUNTO Y ES NEGATIVO')
disp('Y PERTENECEN AL TERCER CUADRANTE')
end
if x>0 & y<0
disp('EL PUNTO X ES POSITIVO,')
disp('EL PUNTO Y ES NEGATIVO')
disp('Y PERTENECEN AL CUARTO CUADRANTE')
end
disp('=======================================')
disp('================FIN====================')
6.- FINALIZADO EL CAMPEONATO DE LA LIGA ESPAÑOLA DE FÚTBOL, ESCRIBIR UN PROGRAMA EN MATLAB QUE INDIQUE, A PARTIR DE LA POSICIÓN EN LA TABLA DE UN EQUIPO EN LA PRIMERA DIVISIÓN, SI JUGARÁ LA CHAMPIONS LEAGUE, LA UEFA, SI DESCENDERÁ DE CATEGORÍA O SI PERMANECERÁ EN LA QUE ESTÁ. INFORMACIÓN ADICIONAL: LOS CUATRO PRIMEROS CLASIFICADOS JUEGAN LA CHAMPIONS, ELQUINTO Y SEXTO LA UEFA Y LOS TRES ÚLTIMOS DE LA TABLA DESCIENDEN (HAY 20 EQUIPOS). EL RESULTADO ES UNA CADENA DE CARACTERES DE ESTAS 4 POSIBLES: ‘CHAMPIONS’, ‘UEFA’, ‘PERMANECE’, ‘DESCIENDE’
clc,clear all, format compact
disp('=====================================================================')
w=input('NUMERO DE GOLES QUE A HA MARCADO JUGANDO EN CASA CONTRA B:');
x=input('NUMERO DE GOLES QUE B HA MARCADO EN CASA DE A :');
y=input('NUMERO DE GOLES QUE B HA MARCADO JUGANDO EN CASA CONTRA A:');
z=input('NUMERO DE GOLES QUE A HA MARCADO EN CASA DE B:');
disp('=====================================================================')
while w<0|x<0|y<0|z<0
clc
disp('LOS DATOS INGRESADOS NO EXISTEN')
end
if x>z
m=w+z;
q=x+y;
disp('GOLES DE A :')
disp(m)
disp('GOLES DE B :')
disp(q)
disp('EL EQUIPO B ES EL GANADOR')
end
if z<x
m=w+z;
q=x+y;
disp('GOLES DE A :')
disp(m)
disp('GOLES DE B :')
disp(q)
disp('EL EQUIPO A ES EL GANADOR')
end
if x==z
m=w+z;
q=x+y;
disp('GOLES DE A :')
disp(m)
disp('GOLES DE B :')
disp(q)
disp('AMBOS EQUIPOS TIENEN MISMO PUNTAJE = A UN EMPATE')
end
disp('=====================================================================')
7.-DADOS LOS NOMBRES DE DOS EQUIPOS, A Y B, EL NÚMERO DE GOLES QUE A HA MARCADO JUGANDO EN CASA CONTRA B (GAA), EL NÚMERO DE GOLES QUE B HA MARCADO EN CASA DE A (GAB), EL NÚMERO DE GOLES QUE B HA MARCADO EN LOS PARTIDOS JUGADOS EN SU CASA (GBB) Y EL NÚMERO DE GOLES QUE A HA MARCADO EN EL CAMPO DE B (GBA). ESCRIBIR UN PROGRAMA QUE INDIQUE QUÉ EQUIPO DE LOS DOS VA PRIMERO EN LA CLASIFICACIÓN. A EMPATE EN NÚMERO DE GOLES, GANARÁ EL QUE MÁS GOLES HAYA MARCADO EN EL CAMPO CONTRARIO.
clc,clear, format compactdisp('==============================================================')
A=input('¿CUANTOS GOLES HIZO EL EQUIPO VISITANTE ?...');
B=input('¿CUANTOS GOLES HIZO EL EQUIPO LOCAL ?...');
disp('==============================================================')
if A > B
y=A-B;
disp('EL EQUIPO GANADOR ES EL VISITANTE POR LA DIFERENCIA DE')
disp(y)
disp('GOLES')
end
if A < B
y= B-A;
disp('EL EQUIPO GANADOR ES EL LOCAL POR LA DIFERENCIA DE')
disp(y)
disp('GOLES')
end
if A == B
disp('LOS EQUIPOS ESTAN EMPATES ')
end
disp('==============================================================')
disp('=======================FIN DEL PARTIDO=========================')
8.- DADA UNA FECHA COMO DÍA (NÚMERO ENTERO), MES (CADENA DE CARACTERES) Y AÑO (NÚMERO ENTERO POSITIVO CON 4 DÍGITOS), ESCRIBIR UN PROGRAMA QUE INDIQUE SI DICHA FECHA ES CORRECTA O NO. EJEMPLOS: 22 OCTUBRE 2001 ES CORRECTA; 31 ABRIL 2001 NO ES CORRECTA PORQUE ABRIL NO TIENE 31 DÍAS; 29 DE FEBRERO DE 2001 NO ES CORRECTO PORQUE EL AÑO 2001 NO ES BISIESTO.10. SIMPLIFICANDO, SUPÓNGASE QUE EL IMPORTE DEL SEGURO OBLIGATORIO DE UN COCHE DEPENDE DEL MODELO DEL COCHE, DEL COLOR Y DE LA EDAD DEL CONDUCTOR. SEAN DOS MODELOS DE COCHE A Y B Y LOS PRECIOS DEL SEGURO SEGÚN EL COLOR: SI EL CONDUCTOR TIENE MENOS DE 26 AÑOS, EL PRECIO SE INCREMENTA UN 25%; SI TIENE ENTRE 26 Y 30 AÑOS SE INCREMENTA UN 10%; SI TIENE ENTRE 31 Y 65 AÑOS EL PRECIO NO SE MODIFICA; SI TIENE MÁS DE 65 AÑOS EL PRECIO SE INCREMENTARÁ UN 10%. ADEMÁS, EN CUALQUIER CASO, HAY QUE CONSIDERAR QUE SI EL CONDUCTOR TIENE MENOS DE 2 AÑOS EL PERMISO DE CONDUCIR, EL PRECIO SE INCREMENTARÁ UN 25% ADICIONAL. DISEÑAR UN PROGRAMA QUE CALCULE EL PRECIO DEL SEGURO PARA UN DETERMINADO MODELO Y UN DETERMINADO CONDUCTOR.clc, clear all, format compact,format bank
disp('=============================================')
disp('MODELO A = 0')
disp('MODELO B = 1')
disp('COLOR BLANCO = 0')
disp('COLOR METALIZADO = 1')
disp('OTROS COLORES = 2')
disp('=============================================')
COLOR= input('INGRESE EL COLOR DEL COCHE = ');
MODELO= input('INGRESE EL NUMERO DE MODELO DEL COCHE = ');
disp('=============================================')
switch COLOR case 0 switch MODELO case 0 COLOR= 'BLANCO' MODELO= 'A' PRECIO_DEL_SEGURO = 240.41
EDAD=input('INGRESE SU EDAD = '); PERMISO=input('INGRESE LA CANTIDAD DE AÑOS QUE TIENE PERMISO DE CONDUCIR ='); switch EDAD case {18,19,20,21,22,23,24,25} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(25/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(25/100))+n end case {26,27,28,29,30} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+n end case {31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+n end case {66,67,68,69,70,71,72,73,74,75,76,77,78,79,80} PRECIO=PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+(PRECIO_DEL_SEGURO*(25/100)) switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+(PRECIO_DEL_SEGURO*(25/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO=PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+(PRECIO_DEL_SEGURO*(25/100))+n end end case 1 COLOR= 'BLANCO' MODELO= 'B' PRECIO_DEL_SEGURO = 300.00 EDAD=input('INGRESE SU EDAD = '); PERMISO=input('INGRESE LA CANTIDAD DE AÑOS QUE TIENE PERMISO DE CONDUCIR ='); switch EDAD case {18,19,20,21,22,23,24,25} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(25/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(25/100))+n end case {26,27,28,29,30} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+n end
case {31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+n end case {66,67,68,69,70,71,72,73,74,75,76,77,78,79,80} PRECIO=PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+(PRECIO_DEL_SEGURO*(25/100)) switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+(PRECIO_DEL_SEGURO*(25/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO=PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+
(PRECIO_DEL_SEGURO*(25/100))+n end end end case 1 switch MODELO case 0 COLOR= 'METALIZADO' MODELO= 'A' PRECIO_DEL_SEGURO = 330.00 EDAD=input('INGRESE SU EDAD = '); PERMISO=input('INGRESE LA CANTIDAD DE AÑOS QUE TIENE PERMISO DE CONDUCIR ='); switch EDAD case {18,19,20,21,22,23,24,25} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(25/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(25/100))+n end case {26,27,28,29,30} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)) PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0 PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+n end case {31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+n end case {66,67,68,69,70,71,72,73,74,75,76,77,78,79,80} PRECIO=PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+(PRECIO_DEL_SEGURO*(25/100)) switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+(PRECIO_DEL_SEGURO*(25/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO=PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+
(PRECIO_DEL_SEGURO*(25/100))+n
end end case 1 COLOR= 'METALIZADO' MODELO= 'B' PRECIO_DEL_SEGURO = 360.50 EDAD=input('INGRESE SU EDAD = '); PERMISO=input('INGRESE LA CANTIDAD DE AÑOS QUE TIENE PERMISO DE CONDUCIR ='); switch EDAD case {18,19,20,21,22,23,24,25} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(25/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(25/100))+n end case {26,27,28,29,30} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+n end case {31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+n end case {66,67,68,69,70,71,72,73,74,75,76,77,78,79,80} PRECIO=PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+(PRECIO_DEL_SEGURO*(25/100)) switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+(PRECIO_DEL_SEGURO*(25/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO=PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+
(PRECIO_DEL_SEGURO*(25/100))+n end end end case 2 switch MODELO case 0 COLOR= 'OTRO' MODELO= 'A' PRECIO_DEL_SEGURO = 270.50 EDAD=input('INGRESE SU EDAD = '); PERMISO=input('INGRESE LA CANTIDAD DE AÑOS QUE TIENE PERMISO DE CONDUCIR ='); switch EDAD case {18,19,20,21,22,23,24,25} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(25/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(25/100))+n end
case {26,27,28,29,30} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+n end case {31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+n end case {66,67,68,69,70,71,72,73,74,75,76,77,78,79,80} PRECIO=PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+(PRECIO_DEL_SEGURO*(25/100)) switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+(PRECIO_DEL_SEGURO*(25/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO=PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+
(PRECIO_DEL_SEGURO*(25/100))+n end end case 1 COLOR= 'OTRO' MODELO= 'B' PRECIO_DEL_SEGURO = 330.00 EDAD=input('INGRESE SU EDAD = '); PERMISO=input('INGRESE LA CANTIDAD DE AÑOS QUE TIENE PERMISO DE CONDUCIR ='); switch EDAD case {18,19,20,21,22,23,24,25} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(25/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(25/100))+n end case {26,27,28,29,30} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+n end case {31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65} switch PERMISO case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO= PRECIO_DEL_SEGURO+n end case {66,67,68,69,70,71,72,73,74,75,76,77,78,79,80} PRECIO=PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+(PRECIO_DEL_SEGURO*(25/100)) switch PERMISO
case {0,1} n=(PRECIO_DEL_SEGURO*(25/100)); PRECIO= PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+(PRECIO_DEL_SEGURO*(25/100))+n case{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} n=0; PRECIO=PRECIO_DEL_SEGURO+(PRECIO_DEL_SEGURO*(10/100))+
(PRECIO_DEL_SEGURO*(25/100))+n end end end end11.- GENERAR UN VECTOR DE “N” ELEMENTOS CON NÚMEROS ALEATORIOS ENTRE 0 Y 1. PEDIR AL USUARIO DOS NÚMEROS REALES ENTRE 0 Y 1 LS Y LI, QUE REPRESENTAN LOS LÍMITES SUPERIOR E INFERIOR DE UN INTERVALO, RESPECTIVAMENTE. RECORRER EL VECTOR E INDICAR CUALES ELEMENTOS SE ENCUENTRAN DENTRO DE LOS LÍMITES DADOS.
clc , clear all , format compact
disp('=================================')
A=0:0.1:1 ;
LS=input('INGRESE EL LIMITE SUPERIOR:');
LI=input('INGRESE EL LIMITE INFERIOR:');
disp('=================================')
if LS<1 & LS>0
LI<=1 & LI>=0
disp('EL NUMERO PERTENECE AL VECTOR')
end
if LS<0 & LI<0
disp ('EL NUMERO NO PERTENECE AL VECTOR')
end
if LS>1 & LI>1
disp ('EL NUMERO NO PERTENECE AL VECTOR')
end
disp('=================================')
13.- ESCRIBIR UN PROGRAMA QUE DADOS LOS GOLES DEL EQUIPO LOCAL Y LOS GOLES DEL EQUIPO VISITANTE DE UN PARTIDO DE FUTBOL, INDIQUE QUÉ EQUIPO HA GANADO (RESULTADOS POSIBLES: “LOCAL", “VISITANTE" Y “EMPATE").
clc,clear, format compact
disp('==============================================================')
A=input('¿CUANTOS GOLES HIZO EL EQUIPO VISITANTE ?...');
B=input('¿CUANTOS GOLES HIZO EL EQUIPO LOCAL ?...');
disp('==============================================================')
if A > B
y=A-B;
disp('EL EQUIPO GANADOR ES EL VISITANTE POR LA DIFERENCIA DE')
disp(y)
disp('GOLES')
end
if A < B
y= B-A;
disp('EL EQUIPO GANADOR ES EL LOCAL POR LA DIFERENCIA DE')
disp(y)
disp('GOLES')
end
if A == B
disp('LOS EQUIPOS ESTAN EMPATES ')
end
disp('==============================================================')
disp('=======================FIN DEL PARTIDO=========================')
14.- DETERMINAR LA CANTIDAD DE DINERO QUE RECIBIRÁ UN TRABAJADOR POR CONCEPTO DE LAS HORAS EXTRAS TRABAJADAS. CUANDO LAS HORAS DE TRABAJO EXCEDEN DE 40, EL RESTO SE CONSIDERAN HORAS EXTRAS. LAS HORAS EXTRAS SE PAGAN AL DOBLE DE UNA HORA NORMAL CUANDO NO EXCEDEN DE 8 HORAS. SI LAS HORAS EXTRAS EXCEDEN DE 8 SE PAGAN LAS PRIMERAS 8 AL DOBLE DE LO QUE SE PAGA POR UNA HORA NORMAL Y EL RESTO AL TRIPLE. INGRESAR POR TECLADO EL VALOR DE LA HORA DE TRABAJO Y LA CANTIDAD DE HORAS TRABAJADAS.
clc,clear, format compact
disp('=============================================================')
a=input('INGRESE EL VALOR DE LAS HORAS DE TRABAJO REALIZADAS =');
b=input('INGRESE LAS HORAS DE TRABAJO REALIZADAS =');
disp('=============================================================')
while b<0
clc
disp('EL TRABAJADOR NO CUMPLIO SUS HORAS, ESTA DESPEDIDO')
end
if b <= 40
y=b*a;
disp('EL TRABAJADOR RECIBIRA COMO PAGO LA CANTIDAD DE :')
disp(y)
disp('NUEVOS SOLES')
end
if b > 40 & b <= 48
HE=b-40;
y=40*a+HE*2*a;
disp('EL TRABAJADOR RECIBIRA COMO PAGO LA CANTIDAD DE :')
disp(y)
disp('NUEVOS SOLES')
end
if b > 48
HE=b-40;
HEP=HE-8;
y=(40*b)+(8*2*a)+(HEP*3*a);
disp('EL TRABAJADOR RECIBIRA COMO PAGO LA CANTIDAD DE :')
disp(y)
disp('NUEVOS SOLES')
end
disp('=============================================================')
disp('===========================FIN================================')
15.-.- SE DESEA REPRESENTAR CON UNA LETRA LA CALIFICACION DE UN ALUMNO. LAS CALIFICACIONES
SON NOTAS ENTRE 1 Y 20. ESCRIBIR UN PROGRAMA QUE PIDA LA NOTA Y QUE INDIQUE LA LETRA
CORRESPONDIENTE:
A PARA CALIFICACIONES MAYORES O IGUALES A 19
B PARA CALIFICACIONES MAYORES O IGUALES A 16
C PARA CALIFICACIONES MAYORES O IGUALES A 14
D PARA CALIFICACIONES MAYORES O IGUALES A 12
F PARA LAS DEMAS CALIFICAIONES.
clc, clear all, format compact
disp('=====================================')
x=input('INGRESE LA NOTA = ');
disp('=====================================')
if x>=1 & 20>=x
if x>=1&x<12
disp('LA NOTA ES')
disp(x)
disp('Y LA CALIFICACION ES: F')
end
if x>=12 & x<14
disp('LA NOTA ES')
disp(x)
disp('Y LA CALIFICACION ES: D')
end
if x>=14 & x<16
disp('LA NOTA ES')
disp(x)
disp('Y LA CALIFICACION ES: C')
end
if x>=16 & x<19
disp('LA NOTA ES')
disp(x)
disp('Y LA CALIFICACION ES: B')
end
if x>=19 & x<21
disp('LA NOTA ES')
disp(x)
disp('Y LA CALIFICACION ES: A')
end
else
disp('NO EXISTE ESA CALIFICACION')
end
disp('=====================================')
disp('================FIN==================')
24.- ESCRIBIR UN PROGRAMA QUE CALCULE EL FACTORIAL DE UN NÚMERO NATURAL ENTERO POSITIVO N: N!= N * (N-1) * (N-2) * … * 2 * 1OBSERVAR EL BUEN FUNCIONAMIENTO DE LA FUNCIÓN PARA N=0 Y PARA N<0.
clc;clear all, format compact
disp('=======================================================')
n=input('INGRESE EL NUMERO = ');
fa=1;
disp('=======================================================')
while n<0;
disp('EL NUMERO QUE INGRESO ES NEGATIVO NO TIENE FACTORIAL')
disp('====================================================')
n=input('PORFAVOR INGRESE NUEVAMENTE UN NUMERO =');
disp('====================================================')
end
if n==0;
Factorial=fa
else
for i=1:n;
fa=fa*i;
if i==n;
Factorial=fa
end
end
end
disp('========================================================')
25.- LA EXPONENCIAL DE UN NÚMERO REAL A SE PUEDE APROXIMAR CON LA SERIE: ESCRIBIR UNA FUNCIÓN QUE CALCULE LA EXPONENCIAL DE A SEGÚN DICHA FÓRMULA, UTILIZANDO K=10 Y LUEGO K=20. SE OBTIENE EL MISMORESULTADO? MODIFICAR LA FUNCIÓN DE MANERA QUE EL NÚMERO K SEA UN PARÁMETRO ELEGIDO POR EL USUARIO. MODIFICAR LA FUNCIÓN DE MANERA QUE APROXIME EL RESULTADO HASTA QUE PARA ALGÚN K SE CUMPLA LA CONDICIÓN AK/K! <= 10.5. MODIFICAR DE NUEVO LA FUNCIÓN DE MANERA QUE APROXIME EL RESULTADO HASTA QUE AK/K! SEA MENOR QUE CIERTO VALOR INFINITESIMAL Ε QUE SE PASARÁ COMO DATO A LA FUNCIÓN. VISUALIZAR EL NÚMERO DE TÉRMINOS K NECESARIOS PARA OBTENER EL RESULTADO REQUERIDO.
clc,clear all, format compact
disp('==========================================================')
n=input('INGRESE EL NUMERO:')
fa=1;
disp('==========================================================')
while n<0;
disp('EL NUMERO QUE INGRESO ES NEGATIVO NO TIENE FACTORIAL')
n=input('INGRESE EL NUMERO:');
end
if n==0;
Factorial=fa
else
for i=1:n;
fa=fa*i;
if i==n;
Factorial=fa
end
end
end
disp('==========================================================')
26.- DISEÑAR UN PROGRAMA QUE CALCULE EL COCIENTE Y RESTO DE LA DIVISIÓN ENTERA DE DOS NÚMEROS MEDIANTE RESTAS Y SUMAS.
clc , clear all , format compact
disp('====================================================')
m=input('INGRESE EL NUMERO :');
n=input('INGRESE EL NUMERO DE VECES QUE SE DEBE RESTAR :');
A =m/n ;
disp('====================================================')
disp(A)
disp('====================================================')
26.- ESCRIBIR UN PROGRAMA QUE CONVIERTA UN NÚMERO ENTERO EN OTRO NÚMERO ENTERO QUE SERÁ EL PRIMERO PERO CON LAS CIFRAS QUE LO FORMAN ESCRITAS AL REVÉS. EJEMPLO: CONVERTIRÁ EL NÚMERO ENTERO 1842 EN EL 2481
clc,clear all, format compact
disp('======================================')
n=input('INGRESE EL NUMERO ENTERO=');
disp('======================================')
while n > 0
dig = mod(n,10);
n=round(n/10);
disp([dig])
end
disp('======================================')
27.- ELABORAR EL DIAGRAMA DE FLUJO Y EL PROGRAMA EN MATLAB PARA QUE RECIBA DOS 2 NÚMEROS ENTEROS DETERMINE:EL MAYOR DE LOS DOS NÚMEROS Y LO IMPRIMA.EL MENOR DE LOS DOS NÚMEROS Y LO IMPRIMA.
clc,clear all, format compact
disp('========================================')
A=input('INGRESE EL PRIMER NUMERO = ');
B=input('INGRESE EL SEGUNDO NUMERO = ');
disp('========================================')
if A~=B
if A>B
disp('LOS NUMEROS SON :')
disp([A,B])
disp('EL NUMERO MAYOR ES : ')
disp(A)
disp('Y EL NUMERO MENOR ES :')
disp(B)
else
disp('LOS NUMERO SON:')
disp([A,B])
disp('EL NUMERO MAYOR ES :')
disp(B)
disp('Y EL NUMERO MENOR ES :')
disp(A)
end
end
if A==B
disp('LOS NUMERO SON:')
disp([A,B])
disp('Y AMBOS NUMEROS SON IGUALES')
end
disp('========================================')
28.- ELABORAR EL DIAGRAMA DE FLUJO Y EL PROGRAMA EN MATLAB PARA QUE RECIBA 3 NÚMEROS ENTEROS DETERMINE:EL MAYOR DE LOS TRES NÚMEROS Y MUESTRE EN PANTALLA.EL MENOR DE LOS TRES NÚMEROS Y MUESTRE EN PANTALLA.EL INTERMEDIO DE LOS TRES NÚMEROS Y MUESTRE EN PANTALLA.
clc,clear all, format compact
disp('==============================================')
x=input('INGRESE EL PRIMER NUMERO : ');
y=input('INGRESE EL SEGUNDO NUMERO : ');
z=input('INGRESE EL TERCER NUMERO : ');
disp('==============================================')
if x>y & x>z
disp('EL MAYOR NUMERO ES :')
disp(x)
end
if y>z & y>x
disp('EL MAYOR NUMERO ES :')
disp(y)
end
if z>x & z>y
disp('EL MAYOR NUMERO ES :')
disp(z)
end
if x<y & x<z
disp('EL MENOR NUMERO ES :')
disp(x)
end
if y<z & y<x
disp('EL MENOR NUMERO ES :')
disp(y)
end
if z<x & z<y
disp('EL MENOR NUMERO ES :')
disp(z)
end
if x>y & x>z & y>z
disp('EL NUMERO INTERMEDIO ES :')
disp(y)
else
if x>y & x>z & y<z
disp('EL NUMERO INTERMEDIO ES :')
disp(z)
else
if y>z & y>x & z>x
disp('EL NUMERO INTERMEDIO ES :')
disp(z)
else
if y>z & y>x & z<x
disp('EL NUMERO INTERMEDIO ES :')
disp(x)
else
if z>x & z>y & x>y
disp('EL NUMERO INTERMEDIO ES :')
disp(x)
else
if z>x & z>y & x<y
disp('EL NUMERO INTERMEDIO ES :')
disp(y)
end
end
end
end
end
end
if x==y& z>y
disp('EL PRIMER Y SEGUNDO NUMERO SON IGUALES')
disp('EL NUMERO MAYOR ES:')
disp(z)
disp('Y EL NUMERO MENOR ES :')
disp(y)
end
if x==y& z<y
disp('EL PRIMER Y SEGUNDO NUMERO SON IGUALES')
disp('EL NUMERO MAYOR ES:')
disp(y)
disp('Y EL NUMERO MENOR ES :')
disp(z)
end
if x==z& z>y
disp('EL PRIMER Y TERCER NUMERO SON IGUALES')
disp('EL NUMERO MAYOR ES:')
disp(z)
disp('Y EL NUMERO MENOR ES :')
disp(y)
end
if x==z& z<y
disp('EL PRIMER Y SEGUNDO NUMERO SON IGUALES')
disp('EL NUMERO MAYOR ES:')
disp(y)
disp('Y EL NUMERO MENOR ES :')
disp(z)
end
if y==z& z<x
disp('EL PRIMER Y SEGUNDO NUMERO SON IGUALES')
disp('EL NUMERO MAYOR ES:')
disp(x)
disp('Y EL NUMERO MENOR ES :')
disp(y)
end
if y==z& z>x
disp('EL PRIMER Y SEGUNDO NUMERO SON IGUALES')
disp('EL NUMERO MAYOR ES:')
disp(z)
disp('Y EL NUMERO MENOR ES :')
disp(x)
end
if x==y& y==z
disp('LOS TRES NUMEROS SON IGUALES :')
disp([x,y,z])
end
disp('===================================================')
29.- ELABORAR EL DIAGRAMA DE FLUJO Y EL PROGRAMA EN MATLAB QUE DETERMINE SI TRES NÚMEROS ENTEROS (A, B Y C) MAYORES QUE 0 REPRESENTAN LOS LADOS DE UN TRIÁNGULO. EL PROGRAMA DEBERÁ DE IMPRIMIR ‘SI’ SI LOS LADOS FORMAN UN TRIÁNGULO Y EN CASO CONTRARIO, SE DEBERÁ IMPRIMIR ‘NO’. NOTA: TENER EN CONSIDERACIÓN LAS EXPRESIONES SIGUIENTES: (A-C)<B<(A+C), (A-B)<C<(A+B) Y (B-C)<A<(B+C)
clear all ;clc, format compact
disp('===========================================')
a=input('INGRESE EL PRIMER NUMERO =');
b=input('INGRESE EL SEGUNDO NUMERO =');
c=input('INGRESE EL TERCER NUMERO =');
disp('===========================================')
if (a-c)<b<(a+c)&(a-b)<c<(a+b)&(b-c)<a<(b+c);
disp('SI, LOS LADOS FORMAN UN TRIANGULO')
else
disp('NO, LOS LADOS NO FORMAN UN TRIANGULO')
end
disp('===========================================')
30.- ELABORAR EL DIAGRAMA DE FLUJO Y EL PROGRAMA EN MATLAB PARA QUE RECIBA 4 NOTAS DE LASEVALUACIONES DE UN CURSO E IMPRIMA ’APROBADO’ SI EL PROMEDIO DE NOTAS ES MAYOR O IGUAL A 10.5,EN CASO CONTRARIO SE IMPRIMIRÁ ‘DESAPROBADO’, TENER EN CUENTA LO SIGUIENTE:EL PROMEDIO DE NOTAS ES IGUAL A LA SUMA DE LAS 4 NOTAS DIVIDIDO ENTRE 4.EL PROMEDIO DE NOTAS ES IGUAL A LA SUMA DE LAS 4 NOTAS MENOS LA MÁS BAJA, DIVIDIDO ENTRE 3.
clc, clear all, format compact
disp('===================================')
a=input('INGRESE LA PRIMERA NOTA =');
b=input('INGRESE LA SEGUNDA NOTA =');
c=input('INGRESE LA TERCERA NOTA =');
d=input('INGRESE LA CUARTA NOTA =');
disp('===================================')
prom=(a+b+c+d)/4;
disp('EL PROMEDIO ES :')
disp(prom)
disp('===================================')
if prom>10.5
disp('EL ALUMNO ESTA APROBADO')
else
disp('EL ALUMNO ESTA DESAPROBADO')
end
disp('===================================')
31.-ESCRIBIR UN PROGRAMA QUE CALCULE LA SUMA DE LOS “N” PRIMEROS NÚMEROS NATURALES
clc, clear all, format compact
disp('===================================')
a=input(' INGRESE UN NUMERO :');
disp('===================================')
n=a*(a+1)/2;
disp('LA SUMA ES:')
disp(n)
disp('===================================')
32.-ESCRIBIR UN PROGRAMA QUE CALCULE LA SUMA DE LOS CUADRADOS DE LOS N PRIMEROS NÚMEROS NATURALES: 1 + 22 + 32 +… + N2.
clc, clear all, format compact
disp('===================================')
x=input(‘INGRESE EL NUMERO :');
disp('===================================')
a=x*(x+1)*(2*x+1)/6;
disp('LA SUMA ES:')
disp(a)
disp('=======================OY A COPIAR LOS K ME FALTAN
============')
33.-ESCRIBIR UN PROGRAMA QUE CALCULE LA SUMA DE LOS NÚMEROS ENTEROS DE “N” A “M” (M>N), UTILIZANDO EL PROGRAMA DEL EJERCICIO 1.
clc, clear all, format compact
disp('===================================')
x=input('INGRESE PRIMER NUMERO :');
y=input('INGRESE EL SEGUNDO NUMERO :');
n=(y*(y+1)/2)-(x*(x+1)/2)+x;
disp('===================================')
disp('LA SUMA ES:')
disp(n)
disp('===================================')
34.- ELABORAR EL DIAGRAMA DE FLUJO Y EL PROGRAMA EN MATLAB PARA QUE DADO LOS 3 LADOS DE UN TRIÁNGULO (A, B YC), IMPRIMA ‘R’ SI EL TRIÁNGULO ES RECTÁNGULO, ‘I’ SI EL TRIÁNGULO ES ISÓSCELES Y ‘E’ SI EL TRIÁNGULO ES ESCALENO. NOTA: TENER EN CONSIDERACIÓN LAS EXPRESIONES SIGUIENTES: (A-C)<B<(A+C), (A-B)<C<(A+B) Y (B-C)<A<(B+C)
clc , clear all , format compact
disp('====================================================')
a=input('ingrese el primer lado :');
b=input('ingrese el segundo lado :');
c=input('ingrese el tercer lado :');
disp('====================================================')
if a==b & b==c & c==a
disp('EL TRIAGULO ES EQUILATERO')
end
if a==b & a~=c & b~=c
disp('EL TRIANGULO ES ISOCELES ')
end
if a~=b & b~=c & a~=c
disp('EL TRIANGULO ES ESCALENO')
end
if a^2==b^2+c^2 & a>b & c<a
disp('EL TRIANGULO ES RECTANGULO')
end
disp('====================================================')
35.- ELABORAR EL PROGRAMA EN MATLAB PARA QUE RECIBA 4 NOTAS DE LAS EVALUACIONES DE UN CURSO E IMPRIMA ’APROBADO’ SI EL PROMEDIO DE NOTAS ES MAYOR O IGUAL A 10.5, EN CASO CONTRARIO SE IMPRIMIRÁ ‘DESAPROBADO’, TENER EN CUENTA LO SIGUIENTE: EL PROMEDIO DE NOTAS ES IGUAL A LA SUMA DE LAS 4 NOTAS DIVIDIDO ENTRE 4. EL PROMEDIO DE NOTAS ES IGUAL A LA SUMA DE LAS 4 NOTAS MENOS LA MÁS BAJA, DIVIDIDO ENTRE 3.
clc,clear all, format compact
disp('======================================')
a=input('NOTA 1=');
b=input('NOTA 2=');
c=input('NOTA 3=');
d=input('NOTA 4=');
disp('======================================')
prom=(a+b+c+d)/4;
if prom>10.5
disp('EL PROMEDIO ES :')
disp(prom)
disp('ESTA APROBADO')
else
disp('EL PROMEDIO ES :')
disp(prom)
disp('ESTA DESAPROBADO')
end
disp('======================================')
36.- ELABORAR EL PROGRAMA CORRESPONDIENTE PARA QUE LEA UN NÚMERO ENTRE 1 Y 9999999 Y UNA POSICIÓN DETERMINADA. EL OBJETIVO ES DETERMINAR EL DÍGITO QUE ESTÁ OCUPANDO LA POSICIÓN
INDICADA. POR EJEMPLO: 856384 Y 5; SEAN EL NÚMERO Y POSICIÓN INGRESADA, LA RESPUESTA INDICARÁ: EL DÍGITO QUE OCUPA LA POSICIÓN (5) ES EL (8) NÚMERO INGRESADO 8 5 6 3 8 4POSICIÓN 1 2 3 4 5 6 NOTA: EL PROGRAMA DEBERÁ TENER LA CONSISTENCIA ENTRE EL NÚMERO INGRESADO Y LAS POSICIONES PARA EVITAR ERRORES, ES DECIR; NO SE PUEDE INGRESAR 4567 Y DIGITAR LA POSICIÓN 7, PORQUE NO EXISTE.
clc,clear all, format compact
disp('==============================================================')
x=input('INGRESE UN NÚMERO MAYOR QUE 0 Y MENOR QUE 100,000,000 : ');
disp('==============================================================')
while x<0 | x>999999999
clc
x=input('INGRESE UN NÚMERO MAYOR QUE 0 Y MENOR QUE 100,000,000 : ');
end
n=0; y=x;
while x>0
n=n+1;
i=n;
a(i)=mod(x,10);
x=fix(x/10);
end
xx=input('INDIQUE UNA POSICIÓN DEL NÚMERO : ');
while xx<1 | xx>n
xx=input('INDIQUE UNA POSICIÓN DEL NÚMERO : ');
end
disp(' ');
fprintf('CUAL ESLA POSICIÓN DEL DÍGITO %3I DEL NÚMERO %9I ? \n',xx,y)
disp(' ');disp('RESPUESTA ='); disp(' ')
m=0;
for ii=n:-1:1
m=m+1;
if m == xx
fprintf('EL DIGITO QUE OCUPA LA POSICIÓN %3i ES %3i \n',xx,a(ii))
disp(' '); disp(' ');
end
end
disp('==============================================================')
37.-ELABORAR EL PROGRAMA CORRESPONDIENTE PARA QUE LEA UN NÚMERO ENTRE 1 Y 9999999, UNA POSICIÓN DETERMINADA Y UN DÍGITO ENTRE 0 Y 9. EL OBJETIVO ES: UNA VEZ IDENTIFICADO EL DÍGITO QUE OCUPA LA POSICIÓN DETERMINADA DEBERÁ CAMBIARSE DICHO DÍGITO POR EL DÍGITO INGRESADO POR EL TECLADO Y ESCRIBIR EL NUEVO NÚMERO GENERADO. POR EJEMPLO: 947390, 3 Y 8; SEAN EL NÚMERO, LA POSICIÓN DE UN DIGITO DE DICHO NÚMERO Y EL NUEVO DÍGITO, LA RESPUESTA INDICARÁ: EL DÍGITO QUE OCUPA LA POSICIÓN (3) ES EL (7) Y DEBERÁ CAMBIARSE POR (8) Y EL NUEVO NÚMERO ES: 948390 NÚMERO INGRESADO 9 4 7 3 9 0 POSICIÓN 1 2 3 4 5 6 NÚMERO NUEVO 9 4 8 3 9 0 NOTA: EL PROGRAMA DEBERÁ TENER LA CONSISTENCIA ENTRE EL NÚMERO INGRESADO Y LAS POSICIONES PARA EVITAR ERRORES, ES DECIR; NO SE PUEDE INGRESAR 45678 Y DIGITAR LA POSICIÓN 8, PORQUE NO EXISTE.
clc,clear all, format compactdisp('==============================================================')x=input('INGRESE UN NÚMERO MAYOR QUE 0 Y MENOR QUE 100,000,000 : ');disp('==============================================================')while x<0 | x>999999999x=input('INGRESE UN NÚMERO MAYOR QUE 0 Y MENOR QUE 100,000,000 : ');endn=0; y=x;while x>0n=n+1;i=n;a(i)=mod(x,10);x=fix(x/10);endxx=input('INDIQUE UNA POSICIÓN DEL NÚMERO : ');while xx<1 | xx>nxx=input('INDIQUE UNA POSICIÓN DEL NÚMERO : ');enddisp('==============================================================')xxx=input('INGRESE UN NUMERO ENTRE 0 Y 9 PARA CAMBIAR : ');disp('==============================================================')while xxx<0 | xxx>9%clcxxx=input('INGRESE UN NUMERO ENTRE 0 Y 9 PARA CAMBIAR : ');endm=0;for ii=n:-1:1m=m+1;if m == xxa(ii)=xxx;endendaa=0;for iii=n:-1:1n=n-1;aa= aa + a(iii)*10^n;endfprintf('EL NÚMERO ANTERIOR ERA %9i \n',y)fprintf('EL NÚMERO NUEVO ES %9i \n',aa)disp('==============================================================')
38.- DADA UNA FECHA COMO DÍA (NÚMERO ENTERO), MES (CADENA DE CARACTERES) Y AÑO (NÚMERO ENTERO POSITIVO CON 4 DÍGITOS), ESCRIBIR UN PROGRAMA QUE INDIQUE SI DICHA FECHA ES CORRECTA O NO. EJEMPLOS: 22 OCTUBRE 2001 ES CORRECTA; 31 ABRIL 2001 NO ES CORRECTA PORQUE ABRIL NO TIENE 31 DÍAS; 29 DE FEBRERO DE 2001 NO ES CORRECTO PORQUE EL AÑO 2001 NO ES BISIESTO.
clc,clear all, format compact
disp('==============================================================')
disp('FECHA')
disp('PARA EL MES')
disp('ENERO = 01')
disp('FEBRERO = 02')
disp('MARZO = 03')
disp('ABRIL = 04')
disp('MAYO = 05')
disp('JUNIO = 06')
disp('JULIO = 07')
disp('AGOSTO = 08')
disp('SETIEMBRE = 09')
disp('OCTUBRE = 10')
disp('NOVIEMBRE = 11')
disp('DICIEMBRE = 12')
disp('==================================')
x=input('INGRESE EL NUMERO DE LOS DIAS=');
y=input('MES =');
z=input('AÑO =');
while z<1000 | z>10000;
z=input('año: ');
end
disp('==================================')
if y==1
fprintf('%3i ENERO%6i\n',x,z)
else
if y==2
fprintf('%3i FEBRERO%6i\n',x,z)
else
if y==3
fprintf('%3i MARZO%6i\n',x,z)
else
if y==4
fprintf('%3i ABRIL%6i\n',x,z)
else
if y==5
fprintf('%3i MAYO%6i\n',x,z)
else
if y==6
fprintf('%3i JUNIO%6i\n',x,z)
else
if y==7
fprintf('%3i JULIO%6i\n',x,z)
else
if y==8
fprintf('%3i AGOSTO%6i\n',x,z)
else
if y==9
fprintf('%3i SETIEMBRE%6i\n',x,z)
else
if y==10
fprintf('%3i OCTUBRE%6i\n',x,z)
else
if y==11
fprintf('%3i NOVIEMBRE%6i\n',x,z)
else
if y==12
fprintf('%3i DICIEMBRE%6i\n',x,z)
end
end
end
end
end
end
end
end
end
end
end
end
if y==1 & x>30 | y==4 & x>30 | y==6 & x>30 | y==9 & x>30
disp('ESTA FECHA ES NO CORRECTA')
else
if y==3 & x>31| y==5 & x>31| y==7 & x>31| y==8 & x>31 | y==10 & x>31 | y==12 & x>31
disp('ESTA FECHA ES NO CORRECTA')
else
if y==2 & x>28
disp('FECHA ES NO CORRECTA')
else
if y==2 & (z/4)==0 & x>29
disp('FECHA INCORRECTA')
else
disp('CORRECTO')
end
end
end
end
if y==2 & (z/4)~=0 & x==29
disp('NO ES BISIESTO')
end
disp('===================================')
39.- AL FINAL DEL AÑO LAS EMPRESAS CUENTAN CON GANANCIAS DE LAS CUALES UNA PARTE SE DISTRIBUYE ENTRE LOS TRABAJADORES Y ES LLAMADA UTILIDAD TOTAL A DISTRIBUIR (UAD). EN BASE A LA UAD SE OBTIENE LA UTILIDAD QUE RECIBIRÁ DETERMINADO TRABAJADOR (UADT). PARA HALLAR LA UTILIDAD SE DEBE TENER EN CUENTA LOS INGRESOS Y LOS GASTOS DE LA EMPRESA DE ACUERDO A SUS VENTAS DE ACUERDO A LAS SIGUIENTES RELACIONES:
- EL PRECIO UNITARIO ES 20% MÁS QUE EL COSTO UNITARIO- INGRESOS= PRECIO_UNITARIO X CANTIDAD_VENDIDA- COSTOS= COSTO_UNITARIO X CANTIDAD_VENDIDA- LOS GASTOS ADMINISTRATIVOS EQUIVALEN AL 10% DE LOS INGRESOS- GASTOS= COSTOS + GASTOS_ADMINISTRATIVOS- UTILIDAD_A_DISTRIBUIR(UAD)=INGRESOS – GASTOS- UTILIDAD_A_DISTRIBUIR_A_CADA_TRABAJADOR(UADT)= 50% X UAD X F1 + 50% UAD X F2
clear command History; clear memory; clear all; clc
clc, clear
boxtitle='SALARIO';
entries={'CANTIDAD VENDIDA','COSTO UNITARIO'};
w=inputdlg(entries,boxtitle);
cantv=str2num(w{1});
costu=str2num(w{2});
boxtitle='SALARIO';
entries={'HORA POR DIA QUE TRABAJA UN FUNCIONARIO','SALARIO QUE RECIBE EL
FUNCIONARIO','CANTIDAD DE FUNCIONARIOS QUE EXISTEN EN LA EMPRESA'};
w=inputdlg(entries,boxtitle);
hf=str2num(w{1});
sf=str2num(w{2});
cf=str2num(w{3});
boxtitle='SALARIO';
entries={'HORAS X DIA QUE TRAB UN ING TIPO 1','CANT ING TIPO 1 EXISTEN EN LA
EMPRESA','SALARIO QUE RECIBE ING TIPO 1'};
w=inputdlg(entries,boxtitle);
hlt1=str2num(w{1});
clt1=str2num(w{2});
slt1=str2num(w{3});
boxtitle='SALARIO';
entries={'HORAS X DIA QUE TRAB UN ING TIPO 2','CANT ING TIPO 2 EXISTEN EN LA
EMPRESA','SALARIO QUE RECIBE ING TIPO 2'};
w=inputdlg(entries,boxtitle);
hlt2=str2num(w{1});
clt2=str2num(w{2});
slt2=str2num(w{3});
preu=0.20*costu+costu;
ing=preu*cantv;
cost=costu*cantv;
gastad=0.10*ing;
gast=cost+gastad;
UAD=ing-gast;
F1=hf/(hf*cf+hlt1*clt1+hlt2*clt2);
F2=sf/(sf*cf+clt1*slt1+clt2*slt2);
UADT=0.50*UAD*F1+0.50*UAD*F2;
fprintf('UNIDAD A DISTRIBUIR %g\n',UAD)
fprintf('UNIDAD A DISTRIBUIR A CADA TRABAJADOR %g\n',UADT)
40.- HACER UN PROGRAMA QUE PERMITA DETERMINAR SI UN NÚMERO N ENTERO POSITIVO ES PERFECTO, SI NO LO ES, ENCONTRAR EL NÚMERO PERFECTO MÁS CERCANO, INDICANDO CUANTO SE TIENE QUE RESTAR O SUMAR PARA HALLAR DICHO NÚMERO PERFECTO.
clc , clear all , format compact
disp('=================================')
n=input('INGRESE EL NUMERO = ');
disp('=================================')
while n<=1
n=input('INGRESE EL NUMERO = ');
end
D=n;
sum=0;
for d=1:n;
resto=rem(D,d);
if resto==0;
sum=sum+d;
disp([d])
end
end
if sum==2*d;
disp( 'PERFECTO')
else
disp('IMPERFECTO')
end
disp('=================================')
41.- HACER UN PROGRAMA PARA SABER SI UN NÚMERO ES FELIZ O INFELIZ. A PARTIR DE ELLO PUEDE HACERSE VARIACIONES, POR EJEMPLO: CUANTOS NÚMEROS FELICES HAY EN UN RANGO ESTABLECIDO POR EL USUARIO O CUÁNTOS NÚMEROS FELICES O INFELICES HAY ENTRE 0 Y 1000000. NOTA: UN NÚMERO NATURAL ES NÚMERO FELIZ: CUANDO CUMPLE LO SIGUIENTE: SI SUMAMOS LOS CUADRADOS DE SUS DÍGITOS Y SEGUIMOS EL PROCESO CON LOS RESULTADOS OBTENIDOS EL RESULTADO ES 1.
clc , clear all , format compact
disp('====================================================')
x=input('Ingrese un número = ');
disp('====================================================')
n=0;m=0;
while x>0
n=n+1;
i=n;
a(i)=mod(x,10);
x=fix(x/10);
A=a(i);
m=m+A^2;
end
B=sum(m)
p=0;t=0;
while B>0
p=p+1;
i=p;
b(i)=mod(B,10);
B=fix(B/10);
D=b(i)
end
if D==1
disp('número feliz')
else
disp('número infeliz')
end
disp('====================================================')
42.- HACER UN PROGRAMA PARA DETERMINAR LA CANTIDAD DE NÚMEROS CURIOSOS EXISTENTES EN EL RANGO 0 Y 100000 Ó 0 Y 1000000 NOTA: NÚMERO CURIOSO ES: TODO NÚMERO NATURAL N QUE CUMPLE QUE N2 TIENE AL PROPIO N COMO ÚLTIMA CIFRA. POR EJEMPLO, 25 Y 36 SON NÚMEROS CURIOSOS.
clc, clear all, format compact
disp('==========================================================')
disp('¿CUALES SON LOS NUMEROS CURIOSOS QUE HAY ENTRE 0 A 1000000?')
disp('Son...')
disp('==========================================================')
for t=1:10;
r=t.^2;
i(r)=mod(r,10);
if i(r)==t;
s=(i(r)).^2;
disp(s)
end
end
for t=11:100;
r=t.^2;
i(r)=mod(r,100);
if i(r)==t;
s=(i(r)).^2;
disp(s)
end
end
for t=101:1000;
r=t.^2;
i(r)=mod(r,1000);
if i(r)==t;
s=(i(r)).^2;
disp(s)
end
end
disp('===========================================================')
43.- ELABORAR EL DIAGRAMA DE FLUJO Y EL PROGRAMA EN MATLAB PARA QUE RECIBA 4 NOTAS DE LASEVALUACIONES DE UN CURSO E IMPRIMA ’APROBADO’ SI EL PROMEDIO DE NOTAS ES MAYOR O IGUAL A 10.5, EN CASO CONTRARIO SE IMPRIMIRÁ ‘DESAPROBADO’, TENER EN CUENTA LO SIGUIENTE:EL PROMEDIO DE NOTAS ES IGUAL A LA SUMA DE LAS 4 NOTAS DIVIDIDO ENTRE 4.EL PROMEDIO DE NOTAS ES IGUAL A LA SUMA DE LAS 4 NOTAS MENOS LA MÁS BAJA, DIVIDIDO ENTRE 3.
clc , clear all , format compact
disp('====================================================')
x=input('INGRESE EL 1º NOTA: ');
y=input('INGRESE EL 2º NOTA: ');
z=input('INGRESE EL 3º NOTA: ');
w=input('INGRESE EL 4º NOTA: ');
while x<0 | x>20
x=input('INGRESE EL 1º NOTA: ');
end
while y<0 | y>20
y=input('INGRESE EL 2º NOTA: ');
end
while z<0 | z>20
z=input('INGRESE EL 3º NOTA: ');
end
while w<0 | w>20
w=input('INGRESE EL 4º NOTA: ');
end
disp('=================================')
disp('PROMEDIO 1: ')
for A=(x+y+z+w)/4;
disp('NOTAS')
disp([x y z w])
disp('NOTA PROMEDIO= ')
disp(A)
if A>10.5
disp('CONDICION: ')
disp('APROBADO')
else
disp('CONDICION: ')
disp('DESAPROBADO')
end
end
disp('')
disp('');
disp('====================================')
disp('PROMEDIO 2: ')
for B=[x;y;z;w];
C=min(B);
D=(x+y+z+w-C)/3;
if C==x
disp('NOTAS')
disp([y z w])
else
if C==y
disp('NOTAS')
disp([x z w])
else
if C==z
disp('NOTAS')
disp([x y w])
else
if C==w
disp('NOTAS')
disp([x y z])
end
end
end
end
disp('NOTA PROMEDIO= ')
disp(D)
if D>10.5;
disp('CONDICION: ')
disp('APROBADO')
else
disp('CONDICON: ')
disp('DESAPROBADO')
end
end
disp('====================================================')
44.- ELABORAR EL DIAGRAMA DE FLUJO Y EL PROGRAMA CORRESPONDIENTE PARA SABER SI UN NÚMERO INGRESADO POR TECLADO DE LA PC ES UN NÚMERO AMSTRONG. SI EL NÚMERO INGRESADO ES AMSTRONG SE MOSTRARÁ EL SIGUIENTE RESULTADO: EL NÚMERO (N) ES UN NÚMERO AMSTRONG Y EL PRÓXIMO NÚMERO AMSTRONG ESTA DESPUÉS DE (X) NÚMEROS
clc , clear all , format compact
disp('====================================================')
x=input('INGRESE UN NÚMERO=');
n=0;
sum=0;
disp('====================================================')
for n=n+1
i=n
a(i)=mod(x,10)
x=fix(x/10)
b=a(1)
S=b^3
end
disp('====================================================')
45.-HACER EL DIAGRAMA DE FLUJO Y EL PROGRAMA CORRESPONDIENTE PARA CALCULAR LA SUMA DE LOS CUBOS DE LOS DÍGITOS DE UN NÚMERO NATURAL INGRESADO POR EL TECLADO, EL NÚMERO INGRESADO PUEDE SER DE 3, 4, 5 Y 6 DÍGITOS, PERO NO DE 1 NI DE 2.
clc, clear all, format compact
disp('=============================================')
n=input('INGRESE EL NUMERO NATURAL:'); disp('=============================================')
sum=0;sumcub=0;for i =1:nsumcub=sumcub+n^3;enddisp('LA SUMA ES :')
disp([sumcub])disp('=============================================')
46.- ELABORAR EL DIAGRAMA DE FLUJO Y EL PROGRAMA CORRESPONDIENTE PARA QUE PUEDA LEER UN NÚMEROENTERO ENTRE 11 Y 9999 Y COMO RESULTADO DEBERÁ MOSTRAR LOS DÍGITOS QUE FORMAN DICHO NÚMERO, INDICANDO SI EL DÍGITO ES PAR O IMPAR. GUIARSE POR EL EJEMPLO MOSTRADO. SI N=8638 ES EL NÚMERO INGRESADO 8 PAR6 PAR3 IMPAR8 PAR
clc , clear all , format compact
disp('====================================================')
x=input('INGRESE UN NUMERO DE 11 A 9999 : ');
disp('====================================================')
while x<11 | x>9999
clc
x=input('INGRESE UN NUMERO DE 11 A 9999 : ');
end
n=0;
while x>0;
n=n+1;
i(n)=mod(x,10);
x=fix(x/10);
end
fprintf('EL NUMERO TIENE %2i DIGITOS\n',n);
for t=n:-1:1;
if mod(i(t),2)==0;
fprintf('EL NUMERO %2i ES PAR\n',i(t));
else
fprintf('EL NUMERO %2i ES IMPAR\n',i(t));
end
end
disp('====================================================')
47.-EJERCICIOS DE SWITH
A) ESCRIBA UN PROGRAMA QUE CALCULE EL COSTO DE ENVIAR UN PAQUETE EN FUNCIÓN A LA TABLA DADA EN EL MATERIAL DE APOYO
clc, clear all, format compact,format bankdisp('=============================================')disp('TIERRA = 0')disp('AIRE = 1')disp('NOCTURNO = 2')disp('PESO DE 0-2 = 0')disp('PESO DE 2-10 = 1')disp('PESO DE 10-50 = 2')disp('=============================================')y= input('INGRESE EL NUMERO AL QUE PERTENECE EL PESO = ');TIPO_DE_SERVICIO= input('INGRESE EL TIPO DE SERVICIO = ');disp('=============================================')switch y case 0 z= input('INGRESE EL PESO = ') while z<0 |z>=2 clc disp('EL PESO NO PERTENECE A ESTE GRUPO') end switch z case {0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9} switch TIPO_DE_SERVICIO case 0 TIPO_DE_SERVICIO='TIERRA' PRECIO = 1.50 case 1 TIPO_DE_SERVICIO='AIRE' PRECIO = 3.00 case 2 TIPO_DE_SERVICIO='NOCTURNO' PRECIO = 18.00 end end case 1 z= input('INGRESE EL PESO = '); while z<2 |z>=10 clc disp('EL PESO NO PERTENECE A ESTE GRUPO') end switch z case {2,2.1,2.2,2.3,2.4,2.5,2.6,2.7,2.8,2.9} switch TIPO_DE_SERVICIO case 0 TIPO_DE_SERVICIO='TIERRA' PRECIO = 1.50+0.50 case 1 TIPO_DE_SERVICIO='AIRE' PRECIO = 3.00+0.50 case 2 TIPO_DE_SERVICIO='NOCTURNO' PRECIO = 18.00+0.60 end case {3,3.1,3.2,3.3,3.4,3.5,3.6,3.7,3.8,3.9} switch TIPO_DE_SERVICIO case 0
TIPO_DE_SERVICIO='TIERRA' PRECIO = 1.50+1.00 case 1 TIPO_DE_SERVICIO='AIRE' PRECIO = 3.00+1.00 case 2 TIPO_DE_SERVICIO='NOCTURNO' PRECIO = 18.00+1.20 end case {4,4.1,4.2,4.3,4.4,4.5,4.6,4.7,4.8,4.9} switch TIPO_DE_SERVICIO case 0 TIPO_DE_SERVICIO='TIERRA' PRECIO = 1.50+1.50 case 1 TIPO_DE_SERVICIO='AIRE' PRECIO = 3.00+1.50 case 2 TIPO_DE_SERVICIO='NOCTURNO' PRECIO = 18.00+1.80 end case {5,5.1,5.2,5.3,5.4,5.5,5.6,5.7,5.8,5.9} switch TIPO_DE_SERVICIO case 0 TIPO_DE_SERVICIO='TIERRA' PRECIO = 1.50+2.00 case 1 TIPO_DE_SERVICIO='AIRE' PRECIO = 3.00+2.00 case 2 TIPO_DE_SERVICIO='NOCTURNO' PRECIO = 18.00+2.40 end case {6,6.1,6.2,6.3,6.4,6.5,6.6,6.7,6.8,6.9} switch TIPO_DE_SERVICIO case 0 TIPO_DE_SERVICIO='TIERRA' PRECIO = 1.50+2.50 case 1 TIPO_DE_SERVICIO='AIRE' PRECIO = 3.00+2.50 case 2 TIPO_DE_SERVICIO='NOCTURNO' PRECIO = 18.00+3.00 end case {7,7.1,7.2,7.3,7.4,7.5,7.6,7.7,7.8,7.9} switch TIPO_DE_SERVICIO case 0 TIPO_DE_SERVICIO='TIERRA' PRECIO = 1.50+3.00 case 1 TIPO_DE_SERVICIO='AIRE' PRECIO = 3.00+3.00 case 2 TIPO_DE_SERVICIO='NOCTURNO' PRECIO = 18.00+3.60 end case {8,8.1,8.2,8.3,8.4,8.5,8.6,8.7,8.8,8.9} switch TIPO_DE_SERVICIO
case 0 TIPO_DE_SERVICIO='TIERRA' PRECIO = 1.50+3.50 case 1 TIPO_DE_SERVICIO='AIRE' PRECIO = 3.00+3.50 case 2 TIPO_DE_SERVICIO='NOCTURNO' PRECIO = 18.00+4.20 end case {9,9.1,9.2,9.3,9.4,9.5,9.6,9.7,9.8,9.9} switch TIPO_DE_SERVICIO case 0 TIPO_DE_SERVICIO='TIERRA' PRECIO = 1.50+4.00 case 1 TIPO_DE_SERVICIO='AIRE' PRECIO = 3.00+4.00 case 2 TIPO_DE_SERVICIO='NOCTURNO' PRECIO = 18.00+4.80 end end case 2 z=input('INGRESE EL PESO = '); while z>50 clc disp('EL PESO INGRESADO NO PERTENECE AL GRUPO') disp('NO SE REALIZA REPARTO POR AIRE O TIERRA CON MAS DE 50 LIBRAS') end switch z case {10,11,12,13,14,15,16,17,18,19} switch TIPO_DE_SERVICIO case 0 z-10==a; TIPO_DE_SERVICIO='TIERRA' PRECIO = 5.50+0.30+(0.30*a) case 1 z-10==n; TIPO_DE_SERVICIO='AIRE' PRECIO = 10.20+0.60+(0.60*n) case 2 TIPO_DE_SERVICIO='NOCTURNO' disp('NO EXISTEN ENTREGAS NOCTURNAS PARA PAQUETES DE MAS DE 10 LIBRAS ') end case {20,21,22,23,24,25,26,27,28,29} switch TIPO_DE_SERVICIO case 0 (z-10)+1==a; TIPO_DE_SERVICIO='TIERRA' PRECIO = 5.50+0.30+(0.30*a) case 1 (z-10)+1==n; TIPO_DE_SERVICIO='AIRE' PRECIO = 10.20+0.60+(0.60*n) case 2 TIPO_DE_SERVICIO='NOCTURNO' disp('NO EXISTEN ENTREGAS NOCTURNAS PARA PAQUETES DE MAS DE 10 LIBRAS ') end
case {30,31,32,33,34,35,36,37,38,39} switch TIPO_DE_SERVICIO case 0 (z-10)+1==a; TIPO_DE_SERVICIO='TIERRA' PRECIO = 5.50+0.30+(0.30*a) case 1 (z-10)+1==n; TIPO_DE_SERVICIO='AIRE' PRECIO = 10.20+0.60+(0.60*n) case 2 TIPO_DE_SERVICIO='NOCTURNO' disp('NO EXISTEN ENTREGAS NOCTURNAS PARA PAQUETES DE MAS DE 10 LIBRAS ') end case {40,41,42,43,44,45,46,47,48,49} switch TIPO_DE_SERVICIO case 0 (z-10)+1==a; TIPO_DE_SERVICIO='TIERRA' PRECIO = 5.50+0.30+(0.30*a) case 1 (z-10)+1==n; TIPO_DE_SERVICIO='AIRE' PRECIO = 10.20+0.60+(0.60*n) case 2 TIPO_DE_SERVICIO='NOCTURNO' disp('NO EXISTEN ENTREGAS NOCTURNAS PARA PAQUETES DE MAS DE 10 LIBRAS ') end case {50,51,52,53,54,55,56,57,58,59} switch TIPO_DE_SERVICIO case 0 (z-10)+1==a; TIPO_DE_SERVICIO='TIERRA' PRECIO = 5.50+0.30+(0.30*a) case 1 (z-10)+1==n; TIPO_DE_SERVICIO='AIRE' PRECIO = 10.20+0.60+(0.60*n) case 2 TIPO_DE_SERVICIO='NOCTURNO' disp('NO EXISTEN ENTREGAS NOCTURNAS PARA PAQUETES DE MAS DE 10 LIBRAS ') end endend
B) ESCRIBA UN PROGRAMA QUE CALCULE LAS RAÍCES REALES DE UNA FUNCIÓN CUADRÁTICA AX2 + BX + C = 0.CUANDO SE EJECUTE EL PROGRAMA, ÉSTE DEBE PEDIR AL USUARIO QUE INTRODUZCA LOS VALORES DE LAS CONSTANTES A, B Y C. PARA CALCULAR LAS RAÍCES DE LA ECUACIÓN, EL PROGRAMA CALCULARÁ EL DISCRIMINANTED: D=B2 – 4 A C SI D>0, EL PROGRAMA VISUALIZARÁ UN MENSAJE DEL TIPO: “LA ECUACIÓN TIENE DOS RAÍCES” Y LOS VALORES DE LAS RAÍCES SE VISUALIZARÁN EN LA LÍNEA SIGUIENTE. SI D=0, EL PROGRAMA VISUALIZARÁ UN MENSAJE DEL TIPO: “LA ECUACIÓN TIENE UNA RAÍZ” Y EL VALOR DE LA RAÍZ SE VISUALIZARÁ EN LA LÍNEA SIGUIENTE. SI D<0, EL PROGRAMA VISUALIZARÁ UN MENSAJE DEL TIPO: “LA ECUACIÓN NO TIENE RAÍCES REALES
clc, clear all, clear history
disp('ecuacion de la forma: a*x^2 + b*x + c = 0.)
a=input('INGRESE EL VALOR PARA A: ');
b=input('INGRESE EL VALOR PARA B: ');
c=input('INGRESE EL VALOR PARA C: ');
D=b^2-(4*a*c);
switch D
case D>0;
disp('LA ECUACIÓN TIENE DOS RAÍCES: ')
r1=(-b+sqrt(D))/(2*a)
r2=(-b+sqrt(D))/(2*a)
case D==0;
disp('LA ECUACIÓN TIENE UNA RAÍZ: ')
r1=(-b+sqrt(D))/(2*a)
r2=(-b+sqrt(D))/(2*a)
otherwise D<0;
disp('LA ECUACIÓN NO TIENE RAÍCES REALES: ')
r1=(-b+sqrt(D))/(2*a)
r2=(-b+sqrt(D))/(2*a)
end