You are on page 1of 6

UNIVERSIDAD CATOLICA DE SANTA MARIA FACULTAD DE CIENCIAS E INGENIERAS FISICAS Y FORMALES PROGRAMA PROFESIONAL INGENIERIA MECNICA, MECNICA-ELECTRCA Y MECATRNICA

Laboratorio de Mecnica Computacional I Tema: Datos y Estructuras Secuenciales y Selectivas


Apellidos y Nombres:

Pgina:1/6

Jefes de Prcticas: Ing. Juan Carlos Cuadros

Cdigo: Semestre: Grupo: Lab. N:

4E03017 III FECHA: 03 26 al 30 MAR/2012

I.

OBJETIVOS 1. 2. Comprender la necesidad del diseo de algoritmos en el estudio y resolucin de programas. Analizar los problemas para identificar los datos que se requieren, as como dar las instrucciones adecuadas para resolver problemas de ingeniera a un nivel bsico. 3. 4. Conocer la sintaxis de las instrucciones condicionales. Analizar y disear la solucin utilizando algoritmos de programacin.

II.

MARCO TEORICO Una de las construcciones importantes que pueden especificarse en un programa es el hecho de realizar diferentes tareas en funcin de ciertas condiciones. Esto es, ejecutar una parte del cdigo u otra, condicionalmente. Para ello ser necesario especificar dichas condiciones y disponer de un mecanismo para indicar que acciones tomar dependiendo de cmo se evalu una determinada condicin en un momento dado de la ejecucin del programa. As pues, en este laboratorio veremos las distintas maneras que C ofrece para controlar el flujo de ejecucin de un programa de forma condicional, que son: 1. Sentencia de construccin if. Sentencia de construccin switch o estructura de seleccin mltiple. Sentencia de construccin IF Las estructuras lgicas selectivas se encuentran en la solucin algortmica de casi todo tipo de problemas. La utilizamos cuando en el desarrollo de un problema debemos de TOMAR UNA DECISIN, para establecer un proceso o sealar un camino alternativo a seguir. Esta toma de decisiones se basa en evaluaciones de una o ms condiciones que nos sealaran como alternativa o consecuencia la rama a seguir. Hay situaciones en las que la toma de decisiones se realiza en cascada, es decir se toma una decisin, se marca la rama correspondiente a seguir y se vuelve a tomar otra decisin y as sucesivamente. Por lo que para alcanzar la solucin de este problema o sub problema debemos de aplicar prcticamente un rbol de decisin. Las estructuras algortmicas selectivas que se utilizan para la toma de decisiones lgicas las podemos clasificar de la siguiente forma: a. b. Estructura selectiva simple (SI , ENTONCES) Estructura selectiva doble (SI ., ENTONCES SINO)

Cabe sealar que la combinacin de esta estructura simple y doble da como resultado una estructura selectiva en cascada.

Laboratorio de Mecnica Computacional I

Pgina: 2/6

Tema: Datos y Estructuras Secuenciales y Selectivas


Estructura de seleccin simple

LAB N 3

JP: Ing. JCC

Esta estructura permite que el flujo del diagrama siga por un camino especfico si se cumple la condicin o conjunto de condiciones. La construccin if puede escribirse tambin de forma ms general para controlar la ejecucin de una sentencia o grupo de sentencias, como podemos ver en la sintaxis 2 del cuadro 2. Sintaxis 1: if (<condicin>) <sentencia 1>; Sintaxis 2: if (<condicin>) { <sentencia 1>; <sentencia 2>; ... <sentencia N> } Pseudocdigo Si condicin es verdadera, Entonces Hacer operacin o sentencias Fin si Diagrama de flujo

Cuadro 1. Sintaxis de la sentencia if simple y diagrama de flujo.

Ntese que despus de la condicin no se escribe ;. Escribir ; detrs de la condicin equivaldra a que la construccin if ejecutase un conjunto vaco de sentencias, lo cual no tiene ningn sentido. Ejemplo 01. Realice el diagrama de flujo para que dada la calificacin de un alumno, escriba aprobado en caso la nota sea mayor o igual que 10.5.

Estructura de seleccin doble La seleccin simple es muy limitada, por otro lado existe la alternativa de seleccin doble la cual nos permite tomar decisiones en ambos sentidos, es decir cuando la condicin de comparacin sea verdadera se podrn ejecutar una o ms acciones o cuando la condicin de comparacin sea falsa tambin se podrn ejecutar una o ms acciones.

Laboratorio de Mecnica Computacional I

Pgina: 3/6

Tema: Datos y Estructuras Secuenciales y Selectivas

LAB N 3

JP: Ing. JCC

Sintaxis: if (<condicin>) <sentencia 1>; else <sentencia 2>;

Diagrama de flujo

Pseudocdigo Si condicin es verdadera, Entonces Acciones_1 Sino Acciones_2 Fin si


Cuadro 2. Sintaxis de la sentencia if - else y diagrama de flujo.

Las Acciones_1 se ejecutaran cuando la condicin de comparacin sea verdadera y las Acciones_2 se ejecutaran cuando la condicin de comparacin sea falsa Ejemplo 02. Realice el diagrama de flujo para que dada la calificacin de un alumno, escriba aprobado si la nota sea mayor o igual que 10.5, en caso contrario escriba desaprobado.

Anidamiento de estructuras condicionales A menudo se tendr la necesidad de anidar una o ms estructuras condicionales ya sean simples o dobles o la combinacin de ambas. Se dice que las estructuras estn anidadas cuando hay una o unas dentro de ellas. Su construccin, donde las condiciones se plantean de forma escalonada, se muestra a continuacin en el cuadro 3. Sintaxis: if (<condicin 1>) <grupo de sentencias 1>; else if (<condicin 2>) <grupo de sentencias 2>; ... else if (<condicin N>) <grupo de sentencias N>; else <grupo de sentencias por defecto>;

Laboratorio de Mecnica Computacional I

Pgina: 4/6

Tema: Datos y Estructuras Secuenciales y Selectivas

LAB N 3

JP: Ing. JCC

Pseudocdigo: Si condicin1 es verdadera, Entonces Acciones_1 o Grupo de sentencias 1 Sino Si condicin2 es verdadera, Entonces Acciones_2 o Grupo de sentencias 2 Sino Si condicin3 es verdadera, Entonces Acciones_3 o Grupo de sentencias 3 Sino Acciones_4 o Grupo de sentencias 4 Fin si Fin si Fin si

Diagrama de Flujo

Cuadro 3. Sintaxis de la sentencia else if y diagrama de flujo.

Las condiciones se evalan secuencialmente de arriba hacia abajo hasta encontrar una que d como resultado cierto. En ese punto, se ejecuta el grupo de sentencias o acciones correspondiente a dicha condicin. El resto de condiciones y sentencias asociadas se ignoran. En caso de que ninguna de las condiciones se evale cierta, se ejecutara el grupo de sentencias por defecto.

Ejemplo 03. Realice el diagrama de flujo para validar la calificacin de un alumno, esta es vlida si se encuentra entre los rangos de 0 a 20, caso contraria la nota sera No vlida. En caso la nota sea vlida escriba aprobado si la nota es mayor o igual que 10.5, en caso contrario escriba desaprobado.

Laboratorio de Mecnica Computacional I

Pgina: 5/6

Tema: Datos y Estructuras Secuenciales y Selectivas


III. MATERIAL Y EQUIPO Una PC con SO Windows XP, Internet Software DFD para Diagramas de Flujo PROCEDIMIENTO Ejercicio 01

LAB N 3

JP: Ing. JCC

IV.

Elabore el algoritmo, pseudocdigo y diagrama de flujo de un programa que: Intercambie el valor de dos variables numricas. Ejercicio 02: Elabore el algoritmo, pseudocdigo y diagrama de flujo de un programa en el que dada una cantidad (vlida) de das, determine su equivalente en aos y meses. Asuma que todos los aos tienen 365 das y los meses 30 das. Ejercicio 03: Elabore el algoritmo, pseudocdigo y diagrama de flujo de un programa en el que dadas las pendientes M1 y M2 y los cortes con el eje Y B1 y B2 de dos rectas L1 y L2 (L1: Y = M1 X +B1; L2: Y = M2 X +B2); determine en punto de interseccin entre las dos rectas. Asuma que M1 es diferente de M2

Ejercicio 04: Se pide elaborar el algoritmo narrado, pseudocdigo y diagrama de flujo de un programa que permita ingresar dos nmeros por teclado e indique cual de los dos es el mayor y cual es menor.

Ejercicio 05: Se pide elaborar el algoritmo, pseudocdigo y diagrama de flujo de un programa que ingrese un nmero por teclado e indique si es positivo, negativo o igual a cero.

Ejercicio 06: Elaborar el algoritmo, diagrama de flujo y pseudocdigo de un programa que permita visualizar caracteres al traducir nmeros ingresados de 1 a 5. Por ejemplo si el nmero ingresado es 2, se visualice un mensaje que diga, El nmero en caracteres es dos.

Ejercicio 07: Elaborar el algoritmo, diagrama de flujo y pseudocdigo que permita visualizar un men como el que se muestra a continuacin 1. 2. 3. 4. Opcin 1 (Eligio la opcin 1) Opcin 2 (Eligio la opcin 2) Opcin 3 (Eligio la opcin 3) Opcin 4 (Eligio Salir)

Laboratorio de Mecnica Computacional I

Pgina: 6/6

Tema: Datos y Estructuras Secuenciales y Selectivas

LAB N 3

JP: Ing. JCC

Ejercicio 08: Elaborar el algoritmo, diagrama de flujo y pseudocdigo para ingresar una dato como temperatura, y evaluar el dato, si oscila entre 0-15, debe imprimir clima frio, si oscila entre 15,1-20 clima templado, si oscila entre 20,1- 28 buen clima y si es mayor a 28.1 enviar el mensaje uff qu calor!!!.

Ejercicio 09: Elaborar el algoritmo, diagrama de flujo y pseudocdigo de un programa que permita visualizar un men como el que se muestra a continuacin a. b. c. d. Ingresar tres nmeros y ordenarlos ascendentemente Ingresar tres nmeros y ordenarlos descendentemente Salir del programa Cualquier otra opcin enve el siguiente mensaje Error, caso no implementado.

V.

CUESTIONARIO FINAL 1. Disear un algoritmo y representarlo en forma grfica y pseudocdigo de un programa que permita ingresar 3 nmeros por teclado y ordenarlos ascendentemente. 2. Modifique el algoritmo del programa anterior para ordenar los nmeros descendentemente, realice el diagrama de flujo y pseudocdigo correspondiente. 3. Disee un programa de seleccin mltiple de tal manera que: a. Si la opcin ingresada es 1, ordene tres nmeros ingresados por teclado en forma ascendente. b. Si la opcin ingresada es 2, ordene tres nmeros ingresados por teclado en forma descendente. c. Si la opcin ingresa es 3, salga del programa. d. Cualquier otra opcin enven el siguiente mensaje Error, caso no implementado.

VI.

OBSERVACIONES Y CONCLUSIONES Emita al menos tres conclusiones en torno al trabajo realizado

1.

2.

3.

____________________________________________________________________________________________ ____________________________________________________________________________________________ ____________________________________________________________________________________________ ____________________________________________________________________________________________ ____________________________________________________________________________________________ ____________________________________________________________________________________________ ____________________________________________________________________________________________ ____________________________________________________________________________________________ ____________________________________________________________________________________________

Haga sus observaciones en torno al trabajo realizado (si es que las tuviera).
____________________________________________________________________________________________ ____________________________________________________________________________________________ ____________________________________________________________________________________________

You might also like