Escolar Documentos
Profissional Documentos
Cultura Documentos
mientras (while-condicion-end)
Falso
Condicion
Verdadero
Instrucciones
Sintaxis en matlab:
while condicion(es)
Instrucciones;
end
Observacin: El ciclo se inicia con la cabecera while y se cierra con end (abre cierra). Esta
estructura se utiliza para ciclos numricos y/o lgicos.
Condiciones
Verdadero
Instrucciones
Sintaxis en matlab:
for vble = inicio : incremento : fin
Instrucciones;
end
Observacin: El ciclo se inicia con la cabecera for y se cierra con end (abre cierra). Los
argumentos inicio, incremento y fin son valores numricos. Esta estructura se utiliza para
ciclos numricos, debido a su simple sintaxis y lgica en utilizacin.
b) Con for
clear all
clc
disp(Nmeros del 1 al 10 descendente)
for numero = 10 : -1 : 1
disp(numero)
end
disp(Fin del ejercicio)
Ejercicio 3: Mostrar los nmeros del 1 al 10 en forma descendente pero solo impares, disear
el algoritmo tanto con la estructura while como la for.
a) Con while
clear all
clc
disp(Nmeros del 1 al 10 descendente solo impares)
numero = 10;
while numero >= 1
if mod(numero, 2) ~= 0
disp(numero)
end
numero = numero - 1; % contador que decrementa el numero inicial
end
disp(Fin del ejercicio)
c) Con for
clear all
clc
disp(Nmeros del 1 al 10 descendente solo impares)
for numero = 10 : -1 : 1
if mod(numero, 2) ~= 0
disp(numero)
end
end
disp(Fin del ejercicio)
for numero = 1 : 10
resultado = tabla * numero;
disp(sprintf('%d x %d = %d', tabla, numero, resultado))
end
disp(' ')
disp('Fin del ejercicio...')
Ejercicio 7: Mostrar la tabla de multiplicar de un nmero dado, y repetir el proceso
hasta que el usuario lo quiera realizar.
clc
clear all
disp('Tabla de multiplicar de un nmero ingresado con pregunta para nueva ejecucin')
tabla = 0;
resultado = 0;
respuesta = 'S';
while respuesta == 'S'
tabla = input('Nmero de la tabla a procesar:');
disp(' ')
for numero = 1 : 10
resultado = tabla * numero;
disp(sprintf('%d x %d = %d', tabla, numero, resultado))
end
respuesta = upper(input('Desea procesar otro nmero de tabla (S/N)?', 's'));
if respuesta == 'S'
clc
end
end
disp(' ')
disp('Fin del ejercicio...')
Ejercicio 8: Ingresar un texto y determinar por cada vocal su cantidad encontrada
clc
clear all
disp('Cantidad de vocales en un texto')
texto = '';
va = 0;
ve = 0;
vi = 0;
vo = 0;
vu = 0;
texto = lower(input('Ingrese el texto: ', 's'));
for letra = 1 : length(texto)
if texto(letra) == 'a'
va = va + 1;
elseif texto(letra) == 'e'
ve = ve + 1;
elseif texto(letra) == 'i'
vi = vi + 1;
Profesor Wilson Corts lvarez, Ing. y Auditor de Sistemas de Informacin
wcortes@utp.edu.co - wcortesalvarez@yahoo.com
else
nummayor = nummayor + numero;
end
end
disp('Resultado de sumatorias')
disp(sprintf('Menores a 100 %.2f', nummenor))
disp(sprintf('Entre 100 y 500 %.2f', numentre))
disp(sprintf('Mayores a 500 %.2f', nummayor))
disp('Fin del ejercicio...')
Ejercicio 11: Validar que al ingresar una nota solo admita el rango entre 1 y 5, una vez
aceptada como vlida determinar por medio de un mensaje si es EXCELENTE (nota
mayor o igual a 4.5), SOBRESALIENTE (nota entre 4 y 4.5), BUENA (entre 3 y 3.9) y
MALA (si es menor a 3). Se plantea la solucin con errores sintcticos y/o lgicos para
que sea corregido y solucionado el problema.
clc
clear all
disp('Validar una nota entre 1 y 5')
nota = 0;
mensaje = '';
while nota < 1 | nota > 6
nota = input('Ingrese una nota entre 1 y 5: ');
end
if nota > 4.5
mensaje = 'EXCELENTE';
elseif nota >= 4 & nota < 4.5
mensaje = 'SOBRESALIENTE';
elseif nota > 3 & nota <= 3.9
mensaje = 'BUENA';
else
mensaje = 'MALA';
end
disp(sprintf('La calificacin cualitativa de la materia es %f', mensaje))
disp('Fin del ejercicio')
Ejercicio 12: Disear un programa que permita calcular el factorial de un nmero dado
(n!)
Ejercicio 13: Ingresar n nmeros y al final mostrar: Sumatoria de pares, sumatoria de
impares y promedio general.
Ejercicio 14: Dado un nmero entero mostrar la lista de los nmeros pares inferiores a
l.
Ejercicio 15: Dados dos nmeros enteros mostrar la lista de los nmeros
impares comprendidos entre ellos.
Ejercicio 16: Generar un nmero aleatorio entero entre 0 y 20, seguidamente disee un
algoritmo que permita establecer en cuantos intentos fue adivinado.
Profesor Wilson Corts lvarez, Ing. y Auditor de Sistemas de Informacin
wcortes@utp.edu.co - wcortesalvarez@yahoo.com