mientras (while-condicion-end)

Documentos relacionados
mientras (while-condicion-end)

SOLUCIONES EJERCICIOS ADICIONALES CICLOS REPETITIVOS

Ejercicios con vectores interactuando con Excel

UNIVERSIDAD TECNOLOGICA DE PEREIRA Facultad de Ing. Industrial Informática III

UNIVERSIDAD TECNOLOGICA DE PEREIRA Facultad de Ing. Industrial Informática T2 Marzo de 2013

Estructuras de control

ESTRUCTURAS REPETITIVAS EN PHP

Introducción a los Computadores (CNM-130) Estructuras de control repetitivas en FreeMat

Programación Estructurada

Matriz de 4x4 (en este caso la matriz es cuadrada)

Sentencias de control. Condiciones

Introducción a las sentencias de control

Control de Flujo. Estructuras de Control! Experiencia Educativa de Algorítmica CONTROL DE FLUJO

Estructuras Repetitivas

Distinguir las diferentes estructuras de repetición utilizadas en problemas con bucles: mientras, repetir mientras, para.

Programación de los problemas de Física en.

INSTITUCIÓN EDUCATIVA SAN VICENTE TALLER 3 DE DIAGRAMAS DE FLUJO ALGORITMOS CICLICOS CICLO: MIENTRAS QUE GRADOS DÉCIMOS

Tema 3. Estructuras de Datos

GUIA DE EJERCICIOS N 1 LENGUAJE C# Página 1 de 5. Instructor: Ing. Néstor Raúl Suarez Perpiñan

MÚLTIPLES Estructuras condicionales anidadas if(expresion1 o condición1){ Sentencias1 } else { if (expresion2){ Sentencias2

Análisis de problemas

Esquemas repetitivos en Fortran 90. Esquemas repetitivos en Fortran 90. Esquemas repetitivos en Fortran 90. Tipos de Esquema

Palabras reservadas de C++ y C. Una palabra reservada no puede declararse como un identificador, esto haría un conflicto entre conectores y funciones.

Programcaión Básica. Secuencias de Control y Repetición. Arturo Vega González.

Estructura repetitiva while

Estructuras Repe,,vas

Ejercicio ejemplo resuelto de uso de arrays (arreglos) dinámicos en pseudocódigo I (CU00214A)

Esquemas repetitivos en Fortran 90

Estructuras Repetitivas: SENTENCIA WHILE EN MATLAB INFORMÁTICA T2 INGENIERÍA INDUSTRIAL JORNADA ESPECIAL

Funciones & Estructuras de control

Clase adicional 2. Estructuras básicas de control. Temas

EJERCICIOS DE PROGRAMACIÓN EN C. DIBUJAR UN ROMBO O DIAMANTE. CALCULAR SUMATORIOS. (CU00542F)

Trabajo Práctico Nº 4 Iteración

Estructuras de Repetición

Algoritmo, Estructuras y Programación I Ing. Marglorie Colina

INSTITUTO SUPERIOR DE FORMACIÓN TÉCNICA Nº 177

Estructuras de repetición

Estructuras de control repetitivas/iterativas

Herramientas computacionales para la matemática MATLAB: Estructuras de control

Fundamentos de Programación

TEMA 4: Programación estructurada

Conocimientos previos

ESTRUCTURAS DE CONTROL REPETITIVAS

INFORMATICA VISUAL BASIC 2008

Estructuras repetitivas o de ciclo

Programación: Estructuras de Control

WHILE Y DO WHILE BREAK EN LENGUAJE C. BUCLES MIENTRAS. FORZAR SALIDA O TERMINACIÓN. EJEMPLO (CU00534F)

INSTITUTO POLITECNICO NACIONAL CENTRO DE ESTUDIOS CIENTIFICOS Y TECNOLOGICOS " GONZALO VAZQUEZ VELA "

Control de Flujo. Estructuras de Control! Experiencia Educativa de Algorítmica CONTROL DE FLUJO

Computación III. Objetivo de aprendizaje del tema

Programación MATLAB: Programas y Funciones.

Sentencias de Procesamiento Iterativo: while y do-while

Variables lógicas y sentencia IF. Seminario de Computación Verano de 2009

Programación MATLAB: Programas y Funciones.

ESTRUCTURAS REPETITIVAS

Indice del curso básico programación desde cero Visual Basic Nivel I (CU00302A)

EJERCICIOS RESUELTOS: DIAGRAMAS DE FLUJO DOCENTE: ING. ALEXIS MASSÓN. Programación I - UTN-FRC Ing. Alexis Massón Ejercicios resueltos

ALGORITMO: LENGUAJE C++: # include <iostream.h> # include <math.h> int main () Int num 1=0, num =0, d=0; Cout << ingrese primer numero: ;

Programación 1 Tema 5. Instrucciones simples y estructuradas

Actividad Algoritmos, Estructura y Programación I. FOR, DO-WHILE

Tema 3. Estructuras de control

Introducción a C++ Algoritmos y Estructuras de datos II Dra. Carmen Mezura Godoy. Febrero 2009

Sentencias iterativas

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO

Resolución de Problemas y Algoritmos Clase 6: Repetición (continuación)

TEMA 5. PROGRAMACIÓN BÁSICA EN MATLAB /OCTAVE

Complejidad de Algoritmos

TEMA 5. PROGRAMACIÓN BÁSICA EN MATLAB /OCTAVE

5. ESTRUCTURAS DE REPETICIÓN

Estructuras de control. Dept. Ciencias de la Computación e I.A. Universidad de Granada

TIPOS DE BUCLES O CICLOS DE REPETICIÓN EN PHP: WHILE, DO WHILE Y FOR. EJEMPLOS Y EJERCICIOS RESUELTOS. (CU00822B)

Lógica de programación

Tema 7: Programación con Matlab

Microsoft Visual Basic

Universidad Nacional del Santa FACULTAD DE INGENIERIA E.A.P de Ingeniería de Sistemas e Informática NETBEANS 7.0

Estructuras de Control 3

PROGRAMACIÓN ALGORITMOS y DIAGRAMAS

Tema: Estructuras de Repetición en C# [While y Dowhile].

Tema: Estructuras de Repetición en C#.

FUNDAMENTOS PARA LA CONSTRUCCIÓN DEL CÓDIGO A PARTIR DEL ALGORITMO

Transcripción:

Estructuras repetitivas (bucles) Son aquellas que permiten repetir instrucciones (sentencias) hasta que una o varias condiciones lo permitan (cuando su interpretación lógica sea verdadera). Pueden ser de 2 formas: numéricos y/o lógicos, los numéricos son aquellos que se repiten una n (cantidad) veces, mientas que los lógicos algo los hace susper la repetición a nivel de un estado de variable. Para el caso puntual del curso en matlab, utilizaremos los ciclos repetitivos (bucles) while y for (según sea el caso). mientras (while-condicion-) Condicion Falso Verdadero Instrucciones Sintaxis en matlab: while condicion(es) Instrucciones; Observación: El ciclo se inicia con la cabecera while y se cierra con (abre cierra). Esta estructura se utiliza para ciclos numéricos y/o lógicos.

para hasta (for-condicion-) Condiciones Falso Verdadero Instrucciones Sintaxis en matlab: for vble = inicio : incremento : fin Instrucciones; Observación: El ciclo se inicia con la cabecera for y se cierra con (abre cierra). Los argumentos inicio, incremento y fin son valores numéricos. Esta estructura se utiliza para ciclos numéricos, debido a su simple sintaxis y lógica en utilización.

Planteamiento de problemas y soluciones. UNIVERSIDAD TECNOLOGICA DE PEREIRA Ejercicio 1: Mostrar los números del 1 al 10 en forma ascente, diseñar el algoritmo tanto con la estructura while como la for. a) Con while disp( Números del 1 al 10 ascente ) numero = 1; while numero <= 10 numero = numero + 1; % contador que incrementa el numero inicial b) Con for disp( Números del 1 al 10 ascente ) for numero = 1 : 1 : 10 Observación: La cabecera (condiciones) del ciclo podría ser también for numero = 1 : 10 debido a que el incremento es 1, esto quiere decir, que el incremento es opcional colocarlo cuando se sabe que es 1 en valor. Igualmente el incremento puede ser positivo o negativo y diferente a 1 (cuando se requiera utilizarlo por lógica). Ejercicio 2: Mostrar los números del 1 al 10 en forma descente, diseñar el algoritmo tanto con la estructura while como la for. a) Con while disp( Números del 1 al 10 descente ) numero = 10; while numero >= 1 numero = numero - 1; % contador que decrementa el numero inicial

b) Con for disp( Números del 1 al 10 descente ) for numero = 10 : -1 : 1 Ejercicio 3: Mostrar los números del 1 al 10 en forma descente pero solo impares, diseñar el algoritmo tanto con la estructura while como la for. a) Con while disp( Números del 1 al 10 descente solo impares ) numero = 10; while numero >= 1 if mod(numero, 2) ~= 0 numero = numero - 1; % contador que decrementa el numero inicial c) Con for disp( Números del 1 al 10 descente solo impares ) for numero = 10 : -1 : 1 if mod(numero, 2) ~= 0

Ejercicio 4: Mostrar los productos del 1 al 10 de la tabla de multiplicar del número 5, ejemplo de salida: Tabla de multiplicar del número 5 5 x 1 = 5 5 x 2 = 10 Hasta 5 x 10 = 50 disp('tabla de multiplicar del número 5') resultado = 0; tabla = 5; for numero = 1 : 10 resultado = tabla * numero; disp(sprintf('%d x %d = %d', tabla, numero, resultado)) Ejercicio 5: Mostrar las tablas de multiplicar del 1 al 10 por pantallazos disp('tablas de multiplicar del 1 al 10') resultado = 0; % Ciclo de tablas for tabla = 1 : 10 disp(sprintf('tabla del número %d', tabla)) % Ciclo de productos por tabla for numero = 1 : 10 resultado = tabla * numero; disp(sprintf('%d x %d = %d', tabla, numero, resultado)) disp('presione Enter para continuar') pause % hace una pause y continúa con un Enter Ejercicio 6: Mostrar la tabla de multiplicar de un número dado (ingresado) disp('tabla de multiplicar de un número ingresado') tabla = 0; resultado = 0; tabla = input('número de la tabla a procesar:'); disp(' ')

for numero = 1 : 10 resultado = tabla * numero; disp(sprintf('%d x %d = %d', tabla, numero, resultado)) disp(' ') Ejercicio 7: Mostrar la tabla de multiplicar de un número dado, y repetir el proceso hasta que el usuario lo quiera realizar. disp('tabla de multiplicar de un número ingresado con pregunta para nueva ejecución') tabla = 0; resultado = 0; respuesta = 'S'; while respuesta == 'S' tabla = input('número de la tabla a procesar:'); disp(' ') for numero = 1 : 10 resultado = tabla * numero; disp(sprintf('%d x %d = %d', tabla, numero, resultado)) respuesta = upper(input(' Desea procesar otro número de tabla (S/N)?', 's')); if respuesta == 'S' disp(' ') Ejercicio 8: Ingresar un texto y determinar por cada vocal su cantidad encontrada 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;

elseif texto(letra) == 'o' vo = vo + 1; elseif texto(letra) == 'u' vu = vu + 1; disp('resultados') disp(sprintf('cantidad de vocal a %d', va)) disp(sprintf('cantidad de vocal e %d', ve)) disp(sprintf('cantidad de vocal i %d', vi)) disp(sprintf('cantidad de vocal o %d', vo)) disp(sprintf('cantidad de vocal u %d', vu)) UNIVERSIDAD TECNOLOGICA DE PEREIRA Ejercicio 9: Generar n números aleatorios y al final mostrar su promedio. disp('generar n números aleatorios y su promedio') cantidad = 0; primedio = 0; sumatoria = 0; cantidad = input('cantidad de números aleatorios: '); for numero = 1 : cantidad sumatoria = sumatoria + rand; % se genera el numero aleatorio y se acumula promedio = sumatoria / cantidad; disp(sprintf('el promedio de los números aleatorios es %.4f', promedio)) Ejercicio 10: Ingresar n números y al final mostrar de acuerdo a los siguientes rangos su correspondiente sumatoria: a) Números menores a 100 b) Números entre 100 y 500 c) Números mayores a 500. disp('ingresar n números realizando unas sumatorios') cantidad = 0; numero = 0; nummenor = 0; numentre = 0; nummayor = 0; cantidad = input('cantidad de números a ingresar: '); for n = 1 : cantidad numero = input('ingrese el número: '); if numero < 100 nummenor = nummenor + numero; elseif numero >= 100 & numero <= 500 numentre = numentre + numero;

else nummayor = nummayor + numero; 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)) Ejercicio 11: Validar que al ingresar una nota solo admita el rango entre 1 y 5, una vez aceptada como válida 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 solución con errores sintácticos y/o lógicos para que sea corregido y solucionado el problema. 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: '); 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'; disp(sprintf('la calificación cualitativa de la materia es %f', mensaje)) disp('fin del ejercicio') Ejercicio 12: Diseñar un programa que permita calcular el factorial de un número dado (n!) Ejercicio 13: Ingresar n números y al final mostrar: Sumatoria de pares, sumatoria de impares y promedio general. Ejercicio 14: Dado un número entero mostrar la lista de los números pares inferiores a él. Ejercicio 15: Dados dos números enteros mostrar la lista de los números impares compridos entre ellos. Ejercicio 16: Generar un número aleatorio entero entre 0 y 20, seguidamente diseñe un algoritmo que permita establecer en cuantos intentos fue adivinado.