Metodología de la Programación Grupo 12 | Clave 822 Metodología de la Programación M.I. Edwin Geovanny Vergara Ayala Cel: 771-266-8107 Email: [email protected] 1. Algoritmos, diagramas de flujo y programas en C 1.6 Programas Tarea de reforzamiento 03. En las olimpiadas de invierno el tiempo que realizan los participantes en la competencia de velocidad en pista se mide en minutos, segundos y centésimas. La distancia que recorren se expresa en metros. Construye tanto un diagrama de flujo como un programa en C que calcule la velocidad de los participantes en kilómetros por hora de las diferentes competencias. 2. Estructuras algorítmicas selectivas. 2.1 Introducción Las estructuras lógicas selectivas se encuentran en la solución algorítmica de casi todo tipo de problemas. Estas estructuras se utilizan cuando se debe tomar una decisión en el desarrollo de la solución del problema. La toma de decisión se basa en la evaluación de una o más condiciones que nos señalarán como consecuencia la rama a seguir. Las estructuras algorítmicas selectivas estudiaremos son: if, if – else y switch. que 2. Estructuras algorítmicas selectivas. 2.2 La estructura selectiva simple IF La estructura selectiva if permite que el flujo del diagrama siga por un camino específico si se cumple una condición determinada. Si al evaluar la condición el resultado es verdadero, entonces se sigue por un camino específico (hacia abajo) y se ejecuta una o varias acciones. Si al evaluación la condición el resultado es falso, entonces se pasan por alto esas operaciones. 2. Estructuras algorítmicas selectivas. 2.2 La estructura selectiva simple IF En lenguaje C, la estructura selectiva if se escribe de la siguiente forma: /* El conjunto de instrucciones muestra la sintaxis de la ➥estructura if en el lenguaje C. */ ... if (<condición>) <operación>; 2. Estructuras algorítmicas selectivas. 2.2 La estructura selectiva simple IF Ejemplo: Construye un diagrama de flujo y el correspondiente programa en C que, al recibir como dato el promedio de un alumno en un curso universitario, escriba aprobado en caso de que el promedio sea satisfactorio, es decir mayor o igual a 6. Dato: PRO (variable de tipo real que representa el promedio del alumno). 2. Estructuras algorítmicas selectivas. 2.2 La estructura selectiva simple IF #include <stdio.h> /* Promedio curso. El programa, al recibir como dato el promedio de un alumno en un curso ➥universitario, escribe aprobado si su promedio es mayor o igual a 6. PRO: variable de tipo real. */ int main(void) { float PRO; printf("ingrese el promedio del alumno: "); scanf("%f", &PRO); if (PRO >= 6) printf("\nAprobado"); } 2. Estructuras algorítmicas selectivas. 2.2 La estructura selectiva simple IF Ejemplo: Construye un diagrama de flujo y el correspondiente programa en C que, al recibir como dato el precio de un producto importado, incremente 11% el mismo si es inferior a $1,500 y que además escriba el nuevo precio del producto. Dato: PRE (variable de tipo real que representa el precio del producto). 2. Estructuras algorítmicas selectivas. 2.2 La estructura selectiva simple IF #include <stdio.h> /* Incremento de precio. El programa, al recibir como dato el precio de un producto importado, ➥incrementa 11% el mismo si éste es inferior a $1,500. PRE y NPR: variable de tipo real. */ int main(void) { float PRE, NPR; printf("ingrese el precio del producto: "); scanf("%f", &PRE); if (PRE < 1500) { NPR = PRE * 1.11; printf("\nNuevo precio: %7.2f",NPR); } } 2. Estructuras algorítmicas selectivas. 2.2 La estructura selectiva doble IF - ELSE La estructura selectiva doble if-else permite que el flujo del diagrama se bifurque por dos ramas diferentes en el punto de la toma de decisión. Si al evaluar la condición el resultado es verdadero, entonces se sigue por un camino específico —el de la izquierda— y se ejecuta una acción determinada o un conjunto de ellas. Por otra parte, si el resultado de la evaluación es falso, entonces se sigue por otro camino —el de la derecha— y se realiza(n) otra(s) acción(es). En ambos casos, luego de ejecutar las acciones correspondientes, se continúa con la secuencia normal del diagrama de flujo. 2. Estructuras algorítmicas selectivas. 2.2 La estructura selectiva doble IF - ELSE En el lenguaje C la estructura selectiva doble ifelse se escribe de la siguiente forma: /* El conjunto de instrucciones muestra la sintaxis de la estructura ➥if-else en C. */ ... if (<condición>) <operación1>; else <operación2>; ... 2. Estructuras algorítmicas selectivas. 2.2 La estructura selectiva doble IF - ELSE Ejemplo: Construye un diagrama de flujo y el programa correspondiente en C que, al recibir como dato el promedio de un alumno en un curso universitario, escriba aprobado si su promedio es mayor o igual a 6 y reprobado en caso contrario. Dato: PRO (variable de tipo real que representa el promedio del alumno). 2. Estructuras algorítmicas selectivas. 2.2 La estructura selectiva doble IF - ELSE #include <stdio.h> /* Promedio curso. El programa, al recibir como dato el promedio de un alumno en un curso ➥universitario, escribe aprobado si su promedio es mayor o igual a 6, o ➥reprobado en caso contrario. PRO: variable de tipo real. */ int main(void) { float PRO; printf("Ingrese el promedio del alumno: "); scanf("%f", &PRO); if (PRO >= 6.0) printf("\nAprobado"); else printf("\nReprobado"); } 2. Estructuras algorítmicas selectivas. 2.3 La estructura selectiva múltiple SWITCH La estructura selectiva switch permite que el flujo del diagrama se bifurque por varias ramas en el punto de la toma de decisión. La elección del camino a seguir depende del contenido de la variable conocida como selector, la cual puede tomar valores de un conjunto previamente establecido. El camino elegido, entonces, dependerá del valor que tome el selector. Así, si el selector toma el valor 1, se ejecutará la acción 1; si toma el valor 2, se ejecutará la acción 2, y si toma el valor N, se realizará la acción N. A continuación se presenta la figura que ilustra esta estructura selectiva 2. Estructuras algorítmicas selectivas. 2.3 La estructura selectiva múltiple SWITCH En el lenguaje C la estructura selectiva múltiple switch se escribe de esta forma: 2. Estructuras algorítmicas selectivas. 2.3 La estructura selectiva múltiple SWITCH Es importante señalar que la estructura selectiva switch es muy flexible, lo que permite que se pueda aplicar de diferentes formas. Por ejemplo, si el selector tomara un valor distinto de los comprendidos entre 1 y N, entonces se debe seguir el camino etiquetado con De otra forma. 2. Estructuras algorítmicas selectivas. 2.3 La estructura selectiva múltiple SWITCH En el lenguaje C el diagrama de flujo se escribe de la siguiente forma: