ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Fundamentos programacion.

German BenmelejPráctica o problema31 de Marzo de 2016

2.979 Palabras (12 Páginas)349 Visitas

Página 1 de 12

Universidad Autónoma de Entre Ríos

Facultad de Ciencia y Tecnología

Sede: Oro Verde

[pic 2]

[pic 3]

FUNDAMENTOS DE PROGRAMACIÓN

RESUMEN DE CONTENIDOS N°7

Estructuras de Control: Secuencia y Selección


RESUMEN DE CONTENIDOS N° 7

Estructuras de Control: Secuencia y Selección

Introducción

Hasta aquí, se han desarrollado programas empleando tres acciones primitivas fundamentales: asignación, lectura y escritura. Las mismas han permitido resolver problemas sencillos, con la característica además, de que las acciones que lo formaban se ejecutaban  secuencialmente,  en el orden en que  aparecían, es decir: una a continuación de otra.

Pero  en el diseño de algoritmos, para la resolución de problemas más complejos, es necesario  contar con herramientas que nos permitan modificar el orden lineal de ejecución de las  acciones, donde  el  ejecutante  pueda tomar decisiones y determinar qué acción realizar en el momento de ejecución del algoritmo.  

Para ello, la diagramación estructurada nos brinda recursos propios. En rigor, esta  metodología establece que todo algoritmo –por más complejo que sea – puede elaborarse mediante el uso de sólo tres estructuras lógicas de control:

  • Secuencia
  • Selección
  • Iteración

Estas estructuras  presentan la característica de tener un único punto de entrada y un único punto de salida. Un programa definido en base a estas estructuras,  es más fácil de entender, y permite, por lo tanto, detectar los errores de lógica más rápidamente.

A continuación, se explicará cada una de las estructuras de control citadas, en algorítmica básica, y luego su equivalente en C++.

ESTRUCTURAS LÓGICAS DE CONTROL

SECUENCIA

Es un  conjunto de acciones que se ejecutan en el mismo orden en que aparecen en el algoritmo, una  a continuación de la otra.

La representación gráfica en un diagrama de flujo es:

[pic 4]

Los bloques A, B, C representan  una acción elemental  o un módulo; cada uno  de ellos,  con  un  único  punto de entrada y un único  punto de salida.

En pseudocódigo o lenguaje de programación, la secuencia se especifica indicando las acciones en el orden en que deben ser ejecutadas, separadas entre sí por el signo de puntuación ";", (escritas en el mismo renglón o en diferente):[pic 5]

SELECCIÓN

La necesidad de contar con una estructura de selección que nos permita tomar decisiones en un algoritmo, se planteó en los primeros problemas, en los algoritmos no computacionales, donde se usaban condiciones que permitían al ejecutante decidir qué grupo de acciones ejecutar y cuáles no.

Ejemplo:

  SI se tiene soda

         ENTONCES agregar en la taza  media cucharadita de soda

         SINO agregar en la taza media cucharadita de agua fría

   FINSI

Las   estructuras de selección  otorgan  al ejecutante,  la posibilidad de alterar el  flujo lineal de control  de las acciones de un algoritmo.  Permiten  tomar decisiones  y elegir  un camino a seguir  en base a  ciertos valores específicos del algoritmo, ya sean datos que se ingresan o resultados de cálculos que se realizan.      

Observamos 2 tipos de estructuras de selección:

  • condicional  o de decisión
  • selección múltiple

  1. Estructura condicional o de decisión

Esta estructura permite elegir el camino a seguir según el valor de verdad de una condición.

La estructura  condicional  permite al ejecutante o procesador, elegir las acciones a seguir entre dos alternativas específicas, de acuerdo al valor de una condición en el momento de ejecución  del algoritmo o programa.

La  representación de esta estructura en un diagrama es:

[pic 6]

[pic 7]

La presencia de esta estructura en un programa, le indica al procesador que debe:

1) Evaluar la condición planteada

a) si  la condición toma  un valor Verdadero (True),  ejecutar el bloque A;  y finaliza la estructura  condicional  indicada con el punto.

b) si  la condición  toma un valor Falso (False), ejecutar el bloque B; y  finaliza la estructura  condicional  indicada con el punto.

2) En ambos casos,  luego  continúa  la ejecución del algoritmo  con  la acción posterior al  punto.

La sintaxis en pseudocódigo sería:

[pic 8]

donde las palabras claves SI y FINSI indican, respectivamente, el comienzo y fin de la estructura de selección.

De acuerdo al valor de la condición, el procesador ejecuta A (alternativa verdadera) o B (alternativa falsa) y luego continúa  con la acción que sigue al FINSI.

A esta estructura se la considera como una unidad, con un único punto de entrada y un único punto de salida. Su punto de entrada es la evaluación de la condición y su punto de salida, luego de haberse ejecutado el camino correspondiente, es la acción que sigue al  punto (en el diagrama) o  al  FINSI (en pseudocódigo).

En C++, esta estructura es If-else: Se evalúa la expresión lógica planteada a continuación del if y si es distinta de cero (verdadero) se realizan las acciones indicadas a continuación; si la expresión lógica es cero (falso), se realizan las acciones a continuación del else.

Sintaxis

Ejemplo

        

        if (expresión lógica)

               acción1;
        else

                acción 2;                   

        int c=0;

        if ( c==200 )

                   c = c/2;        

        else  c = 2*c;

Ejemplo Práctico 1: 

Una compañía de turismo ha definido una política de promoción de sus empresas para lo cual ha fijado descuentos para sus clientes en función de los viajes anteriores realizados.

El valor del descuento es del 20% para aquellos clientes que,  considerando  los  viajes  realizados en el último año y el que desean realizar,  han recorrido más de 3000 Kms.  y del  5% para aquellos que no han alcanzado dicha cifra.

Se desea realizar un algoritmo que  calcule el importe a pagar por un cliente, si se  ingresa  su  nombre y apellido, el total de kilómetros recorridos hasta el momento, y los datos del viaje  a contratar: precio, destino, kilómetros a recorrer. Informar los datos ingresados, el monto del descuento  y el monto a pagar por el cliente.

[pic 9]       

Seguimiento:

Datos: ‘Juan Pérez’, 3100, 350, ‘Misiones’, 800

NYA

KMREC

PRECIO

KMS

DESTINO

TOTAL

DESC

IMP

‘Juan Pérez’

3100

1000

800

‘Misiones’

3900

200

800

Salida por pantalla

Cliente: Juan Pérez    Acumulados: 3100

Datos del Viaje: $1000  800 Kms.  Misiones

Descuento: $200   Importe: $800

...

Descargar como (para miembros actualizados) txt (14 Kb) pdf (440 Kb) docx (143 Kb)
Leer 11 páginas más »
Disponible sólo en Clubensayos.com