PDF de programación - Lenguaje de Programación: Algoritmo - Capítulo 2

Imágen de pdf Lenguaje de Programación: Algoritmo - Capítulo 2

Lenguaje de Programación: Algoritmo - Capítulo 2gráfica de visualizaciones

Actualizado el 23 de Mayo del 2020 (Publicado el 28 de Agosto del 2018)
459 visualizaciones desde el 28 de Agosto del 2018
217,3 KB
22 paginas
Creado hace 17a (01/04/2003)
Lenguaje de Programación: Algoritmo

Capítulo 2 : ALGORITMOS

La primera fase en la construcción de programas la determina el algoritmo a utilizar, que
nos indica una serie de pasos ordenados y lógicos para resolver un problema dado.


2.1 REQUISITOS, DISEÑO, PROGRAMACIÓN Y PRUEBAS.


Pueden ser identificadas dos etapas en el proceso de resolución de
problemas :

1. Fase de solución
2. Fase de implementación (realización) en algún lenguaje de programación.

La fase de solución incluye, a su vez el análisis del problema, el diseño y la verificación del
algoritmo.


Análisis de RequerimientosVerificación del AlgoritmoDiseño (Traducir)


Se puede definir lo que es “Algoritmo”, como la secuencia ordenada de pasos, no
ambiguos, que conducen a la solución del problema planteado.

Todo algoritmo debe ser :

Preciso. Indicando el orden de realización de cada uno de los pasos.

Definido. Si se sigue el algoritmo varias veces proporcionándole los mismos datos, se
deben obtener siempre los mismos resultados.

Finito. Al seguir el algoritmo, éste debe terminar en algún momento, es decir, tener un
número finito de pasos.


Para diseñar un algoritmo se tienen dos métodos:


Descendente (Top-down): Diseño de los algoritmos en etapas, donde se va de los
conceptos generales a los detalles. Este método de diseño es el más recomendable.

Ascendente (Bottom-up): Ir de lo particular a los general. (No recomendado)



1

Lenguaje de Programación: Algoritmo

Ejemplo diseño de un firewall

Una vez que se tiene el algoritmo concluido, se pasa a la Fase de Implementación, en ésta,
se lleva a cabo la “Codificación” del mismo (traducción del algoritmo a algún lenguaje de
programación), la ejecución y comprobación del programa.

El paso de comprobación es muy importante, en este, se ejecuta el programa varias veces,
con distintos datos, para verificar que se obtengan los resultados que se esperaban.


2.2 TÉCNICAS DE PROGRAMACIÓN ALGORITMICA

PROGRAMACIÓN ESTRUCTURADA


La programación estructurada es un conjunto de técnicas para desarrollar algoritmos fáciles
de escribir, verificar, leer y modificar. Utiliza:

• Diseño descendente. Consiste en diseñar los algoritmos en etapas, partiendo de los
conceptos generales hacia los detalles. El diseño descendente se verá completado y
ampliado con el modular.

• Recursos abstractos. En cada descomposición de una acción compleja se supone que
todas las partes resultantes están ya resueltas, posponiendo su realización para el siguiente
refinamiento.

• Estructuras básicas. Los algoritmos deberán ser escritos utilizando únicamente tres tipos
de estructuras básicas: secuenciales, decisión e iteración, las cuales se describen más
adelante.

TEOREMA DE BÖHM Y JACOPINI

Para que la programación sea estructurada, los programas han de ser propios.

Un programa se define como propio si cumple las siguientes características:

• Tiene un solo punto de entrada y uno de salida
• Toda acción del algoritmo es accesible, es decir, existe al menos un camino que va desde
el inicio hasta el fin del algoritmo, se puede seguir y pasa a través de dicha acción.
• No posee lazos o bucles infinitos.

El teorema de Böhm y Jacopini dice que:

Un programa propio puede ser escrito utilizando únicamente tres tipos de
estructuras: secuencial, selectiva y repetitiva.



2

Lenguaje de Programación: Algoritmo

De este teorema se deduce que se han de diseñar los algoritmos empleando exclusivamente
dichas estructuras, las cuales, como tiene un único punto de entrada y único punto de salida,
harán que nuestros programas sean propios.

2.3 ELEMENTOS BÁSICOS

Un algoritmo puede ser escrito en lenguaje natural, pero esta descripción puede ser
ambigua, por lo que se utilizan diferentes métodos de representación, que permiten evitar
dicha ambigüedad y permitir al mismo tiempo que sea fácilmente codificable. Los métodos
más usuales para la representación de algoritmos son:

• Descripción narrada
• Diagrama de flujo
• Pseudocódigo

DESCRIPCIÓN NARRADA

Es la forma más sencilla de describir o expresar un algoritmo. Consiste en dar un relato de
la solución en lenguaje natural.

Por ejemplo: Algoritmo en descripción narrada para la suma de 2 números.

1. obtener los números a sumar
2. sumar los números
3. anotar el resultado

El uso del lenguaje natural provoca frecuentemente que la descripción sea imprecisa y poco
confiable, por lo que este tipo de representación no es recomendable.



3

Lenguaje de Programación: Algoritmo

DIAGRAMA DE FLUJO

Es la representación gráfica de un algoritmo. Utiliza símbolos normalizados, con los pasos
del algoritmo escritos en el símbolo adecuado y los símbolos unidos por flechas,
denominadas “líneas de flujo”, que indican el orden en que los pasos deben ser ejecutados.
Los símbolos principales son:



De manera general un diagrama de flujo esta constituido de la siguiente manera: inicia,
recibe datos, realiza el procesamiento, muestra resultados y finaliza.



4

Lenguaje de Programación: Algoritmo



PSEUDOCÓDIGO

El pseudocódigo en un lenguaje de especificación de algoritmos que utiliza palabras
reservadas y exige la tabulación, o sea, sangría en el margen izquierdo, de algunas líneas.
Se concibió para superar las dos principales desventajas de los diagramas de flujo: Lento de
crear y difícil de modificar sin un nuevo redibujo. Es una herramienta muy efectiva para el
seguimiento de la lógica de un algoritmo y para transformar con facilidad los algoritmos a
programas.



5

Lenguaje de Programación: Algoritmo

Las distintas estructuras de control se representan de la siguiente forma:

Secuenciales:

Leer (Lista_de_variables)

Escribir (Lista_de_resultados)


Decisión

simple:

si <condición > entonces

fin_si



doble: si <condición> entonces

acción_si

acción_si

acción_no



si_no

fin_si

según <expresión> sea

<valor1> : acción1
<valor2>: acción2
...........
<valorn>: acción n
[si_no

acción_sino]

fin_según



múltiple:



Repetitivas:

mientras <condición>hacer

acciones

fin_mientras

repetir

acciones

fin_para



hasta <condición>
para <Variable de control> <valor_inicial> hasta

<valor_final> hacer

acciones

6

Lenguaje de Programación: Algoritmo

2.4 DATOS Y EXPRESIONES

Dato es la expresión general que describe a los elementos con los cuales opera un
programa. Los datos pueden estar expresados como Variables o como Constantes.

CONSTANTES

Las constantes son elementos cuyo valor no cambia durante todo el desarrollo del
algoritmo. Pueden ser literales o simbólicas. Las constantes simbólicas tienen un valor
asignado y se identifican por un nombre. Una constante literal es un valor que se utiliza
como tal.



Las constantes pueden ser:

• Numéricas enteras: En el rango de los números enteros positivos o negativos.

Ejemplos de Constante simbólica:

Ejemplos de Constante simbólica:

141592654

.....

.3=π

.3=π

141592654

.....



Ejemplos: 0, 2, -3, -8, etc.

• Numéricas reales: En el rango de los números reales positivos o negativos

7

Ejemplos: 3.1416, 0.5, -4.3, etc.

• Lógicas: con valores True o False únicamente.

• Carácter:


♦ Alfabético (á´, ´b´, ..., ´z´) en mayúscula o minúscula
♦ Numérico (´0´,´1´,...,´9´)
♦ Carácter especial (´+´,´?´,etc)


• Cadena: Sucesión de caracteres encerrados entre apóstrofes.


Ejemplo: ‘Hola Mundo’



Lenguaje de Programación: Algoritmo

VARIABLES

Las variables son elementos cuyo valor puede cambiar durante el desarrollo del algoritmo.
Se identifican por un nombre y un tipo. El tipo determina el conjunto de valores que la
variable puede tomar.

Ejemplos:


Variable
A
B
Radio
Carac1
Carac2

Valor
2
5
2.5
‘a’
‘c’

Tipo
Entero
Entero
Real
carácter
carácter



Las variables pueden ser de tipo: entero, real, carácter, lógico o cadena.

La evaluación de los operadores con la misma prioridad se realiza siempre de izquierda a
derecha. Si una expresión contiene subexpresiones encerrada entre paréntesis, dichas
expresiones se evalúan primero.

Las constantes y variables se utilizan para formar expresiones.

EXPRESIONES

Una expresión es una combinación de operadores y operandos. Los operandos pueden ser
constantes, variables u otras expresiones. Los operadores pueden aritméticos, lógicos o
relacionales.


Los operadores aritméticos son :


Operador
-
*
/
+
-

Significado
operador unario menos
multiplicación
división
suma
resta

Prioridad
3
2
2
1
1



La evaluación de las expresiones se realiza de izquierda a derecha cuidando la prioridad de
los operadores, los de prioridad mayor se evalúan primero.



8

Lenguaje de Programación: Algoritmo

La evaluación de los operadores con la misma prioridad se realiza siempre de izquierda a
derecha. Si una expresión contiene subexpresiones encerrada entre paréntesis, dichas
expresiones se evalúan primero.

Ejemplo:


Si A=2, B=3 y C=4,

A+B*C=14 ≠ (A+B)*C=20


Hay Otros Operadores que corresponden a los Lógicos y Operacionales

2.5 Estructuras Secuenciales

Se caracterizan porque una acción se ejecuta detrás de la otra. El flujo del programa
coincide con el orden físico en el que se han ido poniendo las instrucciones. Es decir, es
una secuencia de acciones, donde se ejecuta primero la acción uno, después la dos, luego la
t
  • Links de descarga
http://lwp-l.com/pdf13261

Comentarios de: Lenguaje de Programación: Algoritmo - Capítulo 2 (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad