Está en la página 1de 12

Programación

Lógica y Funcional
Ana Francisca Lule Rangel
Programación Estructurada

Concepción Mezo Mazaba


Jose Antonio Nuñez Fernandez
Contenido
Programación estructurada......................................................................................................... 3
Historia. ......................................................................................................................................... 3
Características. ........................................................................................................................... 4
Estructuras de control .......................................................................................................... 5
Disciplina de datos. ................................................................................................................... 8
¿Cómo maneja las funciones? ............................................................................................... 9
Lenguajes representativos. ................................................................................................... 10
Ejemplo. ...................................................................................................................................... 10
Conclusión. .................................................................................................................................... 10
Referencias .................................................................................................................................... 12
Introducción.
La programación estructurada es lo apuesto a un programa desordenado. Un programa estructurado
es un programa con una distribución específica y un orden especifico de las partes que lo componen,
en donde dichas partes constituyen un conjunto de elementos relacionados pero independientes
entre sí.

Programación estructurada.
Historia.
A finales de los años 1960 surgió una nueva forma de programar que no solamente daba lugar a
programas fiables y eficientes, sino que además estaban escritos de manera que facilitaba su
comprensión posterior. El teorema del programa estructurado demuestra que todo programa puede
escribirse utilizando únicamente las tres instrucciones de control siguientes:

 Secuencia
 Instrucción condicional
 Iteración (bucle de instrucciones)

En 1995 Edgeser W. Dijsktra publicó los principios de la programación estructura en su libro “Notas
de programación estructurada”, con estas notas como eje, C. Boehm y G. Jacopini establecen en
1996 un lenguaje de programación que sería utilizado como base para la mayoría de las plataformas
de desarrollo que se conocen en nuestros días.

El concepto básico de la programación estructurada consiste en la formación básica de texto de


programación (enunciados de programación) que, al ser leído, pueda explicar el funcionamiento de
un programa.

El principio fundamental de la programación estructurada es que en todo momento el programador


pueda mantener el programa “dentro” de la cabeza. Esto se consigue con:

a) un diseño descendente del programa,


b) unas estructuras de control limitadas y
c) un ámbito limitado de las estructuras de datos del programa.

Hace más fácil la escritura y verificación de programas. Se adapta perfectamente al diseño


descendente.

La metodología de programación estructurada se fundamenta en técnicas de segmentación, la cual


plantea que un problema se puede dividir en problemas más pequeños (módulos) y más simples de
resolver, de tal forma que la suma de las soluciones de cada problema sea el resultado de la solución
total de éste.
Esta metodología permite desarrollar algoritmos a través de módulos, los cuales realizan tareas bien
definidas. De esta forma, el módulo se define una sola vez y se llama tantas veces como sea
necesario, mediante el nombre que lo identifica. La forma gráfica que lo representa sería la siguiente:

Características.
Los programas escritos con estos principios tienen no solo una estructura fácil de leer, sino que
además tienen una excelente presentación, que permite comprender el código con mayor facilidad.
La estructuración del contenido facilita la revisión de la codificación y reduce el tiempo de prueba y
depuración de programas.
Estructuras de control
Son estructuras que permiten controlar el orden de ejecución de las instrucciones contenidas dentro
de ellas dependiendo de condiciones previamente establecidas.

Todos los programas pueden desarrollarse utilizando únicamente con las tres estructuras de control
características de la programación estructurada.

Secuencia:

Se refiere al orden en la que las instrucciones de un programa son ejecutadas, tal y como se tienen
en el programa.

Los elementos 1, 2 y 3 pueden ser instrucciones o bloques que indican que independientemente de
su complejidad o tamaño, su ejecución es realizada en el orden indicado.

Ejecuta una sentencia detrás de otra


Selección:

Es la posibilidad de elegir entre dos instrucciones, donde la decisión se toma en base a la evaluación
de una expresión a la que llamamos condición.

La imagen indica que si se cumple la condición 1, se avanza al punto 2 y se llega al punto 4, en caso
de no cumplirse la condición 1 entonces se avanza al punto 3 y así se llega al punto 4.

Se evalúa una expresión y, dependiendo del, se decide la siguiente sentencia a ejecutar.

Iteración:

Es una estructura que se utiliza para repetir alguna instrucción o grupo de instrucciones siempre que
se cumpla una condición.

Si se cumple la condición 1, se avanza al punto 2 y se llega al punto 3 donde se encuentra una nueva
condición 3 que si se cumple se regresa a la condición 1 y si no se cumple, se continúa al punto 4.
Repetimos un bloque de sentencias hasta que sea verdadera una determinada condición. Siempre
ha de existir una condición de parada, es decir, hay que garantizar que para cualquier caso, el bucle
parará.

Segmentación

Para favorecer la comprensión del código de los programas desarrollados, es conveniente establecer
segmentos del programa para que estos no excedan una página de codificación (50 líneas en
promedio).

No se trata únicamente de dividir un programa en trozos donde la longitud sea de 50 líneas; la


segmentación debe cumplir con las siguientes características básicas:

 Las partes se deben relacionar entre sí de forma jerárquica, formando una estructura de
árbol.
 Debe mostrar claramente las relaciones existentes entre las funciones para permitir
comprender lo que debe hacer el programa de forma fácil.
 La comunicación entre los segmentos se debe realizar cuidadosamente y de forma
controlada.

La comunicación entre los segmentos se debe realizar a través de una lista de parámetros, lo cual
reduce la oportunidad de se relacionen entre ellos de forma indeseada o inentendible.
Identación

Es el espacio o sangría que se asigna a una línea de código y dependiendo de su longitud, esta
indica si una instrucción o grupo de instrucciones pertenecen a determinado bloque.

Este espacio es importante ya que facilita la lectura del programa respecto a las relaciones existentes
entre las instrucciones y los segmentos.

Disciplina de datos.
En el lenguaje C se definen los cinco tipos de datos básicos

Tipos de datos

Existen dos tipos de datos a utilizar durante un programa, variables y constantes. Las variables son
un tipo de dato cuyo valor contenido en él puede cambiar a lo largo de un programa, las constantes
son los tipos de datos que a lo largo del programa mantienen integro su valor contenido. El tipo de
valor que reside en la variable o constante es una forma de representar información para la que se
reserva un espacio de memoria, de acuerdo con sus características. Los datos que procesa una
computadora se clasifican en simples y estructurados. La principal característica de los tipos de datos
simples es que ocupan solo una casilla de memoria. Dentro de este grupo de datos se encuentran
principalmente los enteros, los reales y los caracteres. La utilización de la memoria depende de la
correcta elección del tipo de dato asignado a las variables de un programa, porque en algunos casos,
no suele disponer de una memoria de datos o programa de elevada capacidad.

Tipos de datos:

 Numéricos
o Enteros y reales
 Carácter o texto
o Código ASCII y Unicode
 Lógicos
o Falso y Verdadero
Operadores lógicos

 ! Negación
 && Y
 || O
 <>= Comparaciones
 La función Y es verdadera solo si todos sus argumentos son verdaderos
 La función O es falsa solo si todos sus argumentos son falsos.
Otra consideración importante es la cantidad de memoria que cada tipo de dato necesita.

Un carácter o letra, por ejemplo, necesita solo ocho bits para guardarse. En cambio, un número real,
necesita 32 bits para almacenarse

Esto significa que no es posible almacenar un número real en el espacio que le corresponde a un
carácter

¿Cómo maneja las funciones?


Una función es un conjunto de líneas de código que realizan una tarea específica y puede retornar
un valor. Las funciones pueden tomar parámetros que modifiquen su funcionamiento. Las funciones
son utilizadas para descomponer grandes problemas en tareas simples y para implementar
operaciones que son comúnmente utilizadas durante un programa y de esta manera reducir la
cantidad de código. Cuando una función es invocada se le pasa el control a la misma, una vez que
esta finalizó con su tarea el control es devuelto al punto desde el cual la función fue llamada.
<tipo> [clase::] <nombre> ( [Parámetros] ).

cuerpo;

Ejemplo de una función

Para comenzar, se va a considerar el caso en el cual se desea crear la función cuadrado (), que
deberá devolver el cuadrado de un número real (de punto flotante), es decir, cuadrado () aceptará
números de punto flotante y regresará una respuesta como número flotante.

Nota: aunque para la función que se verá el tipo de retorno coincide con el tipo de parámetro pasado,
algunas veces las cosas pueden cambiar, es decir, no es obligatorio que una función reciba un
parámetro de un tipo y que tenga que regresar una respuesta de dicho tipo.

// regresar el cuadrado de un número

double Cuadrado(double n)

return n*n;

Lenguajes representativos.
Si bien es posible desarrollar la programación estructurada en cualquier lenguaje de programación,
resulta más idóneo un lenguaje de programación procedimental. Algunos de los lenguajes utilizados
inicialmente para programación estructurada incluyen ALGOL, Pascal, PL/I y Ada, pero la mayoría
de los nuevos lenguajes de programación procedimentales desde entonces han incluido
características para fomentar la programación estructurada y a veces, deliberadamente, omiten
características4 en un esfuerzo para hacer más difícil la programación no estructurada.

Ejemplo.
EJEMPLO No. 1: PROGRAMA QUE LEE DOS NÚMEROS Y ESCRIBE EL MAYOR DE LOS DOS.

#include <stdio.h>

main()
{
int x, y;
printf(“Escribe el primer número: “);
scanf(“%d”,&x);
printf(“Escribe el segundo número:”);
scanf(“%d”,&y);
if (x > y)
printf(“El mayor es: %d”,x);
else
if ( y > x )
printf(“El mayor es: %d”,y);
else
printf(“Son iguales”);
}

EJEMPLO No. 2: PROGRAMA QUE INDICA SI UN NÚMERO ES PAR O NO

#include <stdio.h>
main()
{
int x;
printf(“Escribe el número sin decimales: “);
scanf(“%d”,&x);
if (x%2==0)
printf(“El número es par”);
else
printf(“El número es impar”);
}

EJEMPLO No. 3: PROGRAMA QUE LEE CUALQUIER NÚMERO ENTERO INDEFINIDAMENTE


HASTA QUE EL USUARIO INTRODUZCA UN CERO.

#include <stdio.h>
main()
{
int x;
do {
scanf(“%d”,&x);
} while (x != 0);
}

EJEMPLO 4: PROGRAMA QUE LEE NÚMEROS HASTA LLEGAR A UN CERO Y LUEGO


MUESTRA LA SUMA DE TODOS LOS NÚMEROS LEÍDOS

#include <stdio.h>
main()
{
int x;
int suma=0;
do {
scanf(“%d”,&x);
suma+=x;
} while ( x != 0);
printf(“La suma es: %d”, suma);
}

Conclusión.
La programación estructurada consiste básicamente en programar de una manera más ordenada
para que el código escrito esa mas entendible para otras personas, esto a surgió a raíz que en
grandes cantidades de código el programa es más complicado de ser comprendido.

Referencias
Baltazar, I. F. (18 de Febrero de 2018). Universidad Autónoma del Estado de Hidalgo - Huejutla.
Obtenido de www.uaeh.edu.mx

EcuRed. (18 de Febrero de 2018). EcuRed. Obtenido de


https://www.ecured.cu/Programacion_estructurada

Ferrís, F. B. (18 de Febrero de 2018). informatica.uv.es. Obtenido de


http://informatica.uv.es/iiguia/AED/oldwww/2004_05/AED.Tema.04.pdf

mailxmail. (18 de Febrero de 2018). Obtenido de http://www.mailxmail.com/programacion-


estructurada-caracteristicas-estructuras-control-segmentacion-identacion_h

Universidad Interamericana para el Desarrollo. (18 de Febrero de 2018). Obtenido de


http://moodle2.unid.edu.mx/dts_cursos_mdl/lic/TI/PE/S01/PE01_Lectura.pdf

También podría gustarte