PDF de programación - Introducción a los subalgoritmos o subprogramas

Imágen de pdf Introducción a los subalgoritmos o subprogramas

Introducción a los subalgoritmos o subprogramasgráfica de visualizaciones

Publicado el 26 de Abril del 2020
968 visualizaciones desde el 26 de Abril del 2020
146,7 KB
25 paginas
Creado hace 13a (26/08/2010)
Introducción a los subalgoritmos o subprogramas

• Soluciona problemas complejos al dividirlos en subprogramas y

luego dividirlos estos en otros mas simples, hasta que estos sean
mas fáciles de resolver. Esta técnica se llama “divide y vencerás” .

Introducción a los subalgoritmos o subprogramas

• Se dice que el programa principal invoca al subprograma, el
subprograma ejecuta la tarea y luego devuelve el control al
programa.

Introducción a los subalgoritmos o subprogramas

• Un programa puede llamar a su ves a sus

propios subprogramas

COMUNICACIÓN CON SUBPROGRAMAS: Parámetros

La lista de parámetros esta compuesta de los nombres de
los mismos y del tipo de datos que representan, los del
mismo tipo se separan con comas "," y cada tipo diferente
se separa con punto y coma ";".

Procedure Ejemplo(a, b : Integer; c, d : String);

Para llamar a un procedimiento que utiliza parámetros se
pueden utilizar como tales otras variables o constantes,
siempre y cuando sean del mismo tipo que los declarados.

Ejemplo(1, 2, 'Hola', 'Adios');

Funciones y Procedimientos: Subprogramas

Los parámetros













Son canales de comunicación para pasar datos ente programas y subprogramas en
ambos sentidos.

Estan asociados a variables. constantes, expresiones, etc., y por tanto, se indican
mediante los correspondientes identificadores o expresiones.

Se utilizan en la llamada o invocación al subprograma se denominan parámetros
actuales, reales o argumentos, y son los que entregan la información al subprograma.

Los parámetros que la reciben en el subprograma se denominan parámetros formales o
ficticios y se declaran en la cabecera del subprograma.

Los parámetros son opcionales y si no se necesitan no se deben usar. Para utilizarlos
es necesario declararlos: PROCEDURE nombre (lista de parámetros);

En una llamada a un subprograma tiene que verificarse que:

El número de parámetros formales debe ser igual al de actuales.
Los parámetros que ocupen el mismo orden en cada una de las Listas deben ser compatibles

en tipo.

Ej. Programa que use parametros ..

PROGRAM Parametros;
VAR
Saludo : String;

PROCEDURE Imprime_5 (a : String);
VAR
Contador : Integer;
BEGIN
FOR contador := 1 to 5 DO
{Imprime 5 veces la cadena almacenada }
WriteLn(a);
{en la variable "a", que es la información}
END;
{que llega como parámetro }

BEGIN
Saludo := 'Bienvenidos al programa';
Imprime_5 (Saludo);
{llama al procedimiento Imprime_5, usando como}
{parámetro la variable Saludo }
Imprime_5 ('Fin');
{Utiliza la cadena "fin" como parámetro }
END.

Creación de los procedimientos

1.- Que debe hacer el procedimiento
2.- Declaramos el procedimiento, despues de haber declarado variables y
constantes, antes del cuerpo del programa principal.

PROCEDURE Titulo;
BEGIN
WriteLn ('Programa de Turbo Pascal');
END;

Uso de los procedimientos

Una vez declarado el procedimiento es posible utilizarlo como una instrucción
de Turbo Pascal. Al uso de un procedimiento se le conoce como llamada al
procedimiento.

PROGRAM Procedimientos;

PROCEDURE Titulo;
BEGIN
WriteLn ('Programa de Turbo Pascal');
END;

BEGIN
WriteLn ('Programa ejemplo del uso de procedimientos');
Titulo;
{Llama al procedimiento}
WriteLn;
Titulo;
{Vuelve a llamar al procedimiento}
END;

Variables locales y globales

En Pascal cada
identificador tiene un
campo de acción,
solo dentro de éste
campo es posible
utilizarlo. Ej.: Las
variables, que pueden
ser globales o locales.

PROGRAM Variables;
VAR
Hola : String;

PROCEDURE prueba;
VAR
Adios : String;
BEGIN
{En esta sección si es posible usar la variable Hola}
Adios := 'Adios, que les vaya bien';
WriteLn (Adios);
END;

BEGIN
{En esta sección no se reconoce a la variable Adios}
Hola := 'Hola, bienvenidos al programa';
WriteLn (Hola);
WriteLn (Adios);
{Al compilar el programa se generará un error ya}
prueba;
END.

ÁMBITO: VARIABLES LOCALES Y GLOBALES

Las variables utilizadas en los principales y subprogramas se clasifican en dos

tipos:

· Variables locales.
· Variables globales.

Una variable local es aquella que está declarada y definida dentro de un

subprograma, en el sentido de que está dentro de ese subprograma y es
distinta de las variables con el mismo nombre declaradas en cualquier parte
del programa principal. El significado de una variable se confina al
procedimiento en el que está declarada.

Una variable global es aquellas que está declarada para el programa o

algoritmo principal, del que dependen todos los subprogramas.

La parte del programa/algoritmo en que una variable se define se conoce como

ámbito (scope, en inglés)

Ventajas de variables locales: Hace a los subprogramas independientes, con la
comunicación entre el programa principal y los subprogramas manipulados
estructuralmente a través de la lista de parámetros.

ÁMBITO: VARIABLES LOCALES Y GLOBALES

ÁMBITO: VARIABLES LOCALES Y GLOBALES

Definición de las funciones

Las funciones son, al igual que los procedimientos, un conjunto de sentencias

que se ejecutan constantemente, la diferencia entre éstas y los
procedimientos es que las funciones regresan un valor.

FUNCTION nombre(parámetros) : tipo_de_datos;

FUNCTION Promedio (a, b : Real) : Real; {Promedio de dos números reales}
BEGIN
Promedio := (a + b) / 2;
END;

Uso de las funciones

Como las funciones devuelven
un valor específico la forma
más usual de utilizarlas es
por medio de asignaciones
de una variable a la
función.

PROGRAM Funciones;
VAR
X, Y, Z : Real;

FUNCTION Promedio (a, b : Real) : Real;
{Promedio de dos números reales}
BEGIN
Promedio := (a + b) / 2;
END;

BEGIN
X := 5.89;
Y := 9.23;
Z := Promedio (X, Y);
{Iguala Z al valor devuelto por la función
Promedio}
WriteLn('El promedio de ',X,' y ',Y,' es:
',Z);
END.

Procedimieto HALT

El procedimiento HALT ya se habia revisado anteriormente, pero se tomó

como una instrucción, siendo que es realmente un procedimiento

predefinido de Turbo Pascal que nos permite terminar nuestro programa en

cualquier punto del mismo.

El procedimiento EXIT provoca la salida del procedimiento que se está

ejecutando y nos regresa al lugar de donde fue llamado.

Procedimientos INC y DEC

El procedimiento INC incrementa en 1 el contenido de cualquier variable de

tipo entero, es lo mismo en un programa teclear:

Variable := Variable + 1;

o telcear:

Inc(Variable);

El procedimiento DEC decrementa en 1 el valor de cualquier variable de

tipo entero que se le indique, se usa igual que INC:

DEC (Variable);

Procedimiento versus función

Los procedimientos y funciones son subprogramas cuyo diseño y misión son

similares, sin embargo, existen unas diferencias esenciales entre ellos:

1. Un procedimiento es llamado desde el algoritmo o programa principal
mediante su nombre y una lista de parámetros actuales, o bien con la
instrucción llamar_a (call).
Al llamar al procedimiento se detiene momentáneamente el programa que
se estuviera realizando y el control pasa al procedimiento llamado.
Después de que las acciones del procedimiento se ejecutan, se regresa a
la acción inmediatamente siguiente a la que se llamó.

2. Las funciones devuelven un valor, los procedimientos pueden devolver 0,1 o

n valores y en forma de lista de parámetros.

3. El procedimiento se declara igual que la función, pero su nombre no está

asociado a ninguno de los resultados que obtiene.

Programacion Estructurada

• Los avances tecnológicos no necesariamente están acompañados por
una evolución en las técnicas de construcción de programas.
• Se requieren programas mas complejos y de gran tamaño.
• Diseño Descendente o Diseño Top-Down
• Las técnicas de desarrollo y diseño de programas, que se utilizan en la
programación convencional o lineal, tienen inconvenientes, sobre todo a
la hora de verificar y modificar programas.
• Técnicas que facilitan la la comprensión del programa: Programación
estructurada
• Pioneros de esta metodología: Dijkstra, Warnier, Jackson, Chapin y
Bertini; y de los Lenguajes de Programación Estructurada Niklaus Wirth,
Dennis Ritchie y Kenneth Thompson.

Estructura: Es la descomposición ordenada de las partes de un todo.
Conjunto de elementos interrelacionados que forman un todo.

Programación Estructurada: Consiste en el diseño, escritura y prueba
de un programa, construido con estructura, o sea con una organización
ordenada del todo en partes interdependientes.

Herramientas. Estructuras Básicas. Figuras Lógicas.

Teorema de la Estructura

Aporte de BOHN y JACOPINI (1966). Matemáticamente todo problema puede

resolverse con tres figuras lógicas (secuencia, alternativa y repetitiva o
iterativa).

La programación estructurada se consigue mediante la descomposición en

partes, segmentos, rutinas o subproblemas interdependientes; que pueden
ser considerados como las unidades razonablemente pequeñas, que deben
representar por si mismas un contenido lógico, coherente y completo.

Esta segmentación debe realizarse de lo general a lo particular, organizando

por niveles con grado de detalle creciente, hasta lograr que todos los
tratamientos hayan sido explícitamente considerados.

Esto se puede esquematizar de distintas maneras (conjuntos, segmentos,

llaves).

Este procedimiento recibe el nombre de refinamiento paso a paso, el lema

didáctico es: “divide y será fácil”.

Teorema de la Estructura

Se basa en el concepto de diagrama o programa

propio, el mismo consiste en que toda estructura
tenga un solo punto de entrada y un solo punto
de salida.

Un diagrama es estructurado si tiene únicamente
como figuras lógicas: secuencia, capacidad de
decisión y capacidad de repetición; y si además
está construido con estructura.

Métodos

Con la filosofía de la programación estructurada distintos autores han desarrollados trabajos

que varían unos de otros en el método, pero todos tienen como bases los conceptos
teóricos de Dijkstra.

Método Jackson. La filosofía del mismo tiene caracterí
  • Links de descarga
http://lwp-l.com/pdf17567

Comentarios de: Introducción a los subalgoritmos o subprogramas (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad