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

Programación Orientada A Objetos Versus Programación Estructurada


Enviado por   •  24 de Septiembre de 2013  •  4.650 Palabras (19 Páginas)  •  400 Visitas

Página 1 de 19

Programación orientada

a objetos versus programación

estructurada: C++ y algoritmos

Introducción

El aprendizaje de la programación requiere el conocimiento de técnicas y metodologías de programación estructurada. Aunque

a finales del siglo XX y, sobre todo en este siglo XXI, la programación orientada a objetos se ha convertido en la tecnología

de software más utilizada; el conocimiento profundo de algoritmos y estructuras de datos, en muchos casos con el enfoque

estructurado, facultará al lector y futuro programador los fundamentos técnicos necesarios para convertirse en un brillante

programador de C++, en general, y programador orientado a objetos, en particular.

1.1. Concepto de algoritmo

Un algoritmo es una secuencia finita de instrucciones, reglas o pasos que describen de modo preciso las operaciones que una

computadora debe realizar para ejecutar una tarea determinada en un tiempo finito [Knuth 68]1. En la práctica, un algoritmo

es un método para resolver problemas mediante los pasos o etapas siguientes:

1. Diseño del algoritmo que describe la secuencia ordenada de pasos —sin ambigüedades— conduncentes a la solución

de un problema dado (Análisis del problema y desarrollo del algoritmo).

2. Expresar el algoritmo como un programa en un lenguaje de programación adecuado. (Fase de codificación).

3. Ejecución y validación del programa por la computadora.

Para llegar a la realización de un programa es necesario el diseño previo de un algoritmo indicando cómo hace el algoritmo

la tarea solicitada, y eso se traduce en la construcción de un algoritmo. El resultado final del diseño es una solución que

debe ser fácil de traducir a estructuras de datos y estructuras de control de un lenguaje de programación específico.

Las dos herramientas más comúnmente utilizadas para diseñar algoritmos son: diagramas de flujo y pseudocódigos.

• Diagrama de flujo (flowchart). Representación gráfica de un algoritmo.

• Pseudocódigo. Lenguaje de especificación de algoritmos, mediante palabras similares al inglés o español.

1 Donald E. Knuth (1968): The art of Computer Programming, vol. 1, 1.ª ed., 1968; 2.ª ed. 1997, Addison Wesley. Knuth, es considerado uno de

los padres de la algoritmia y de la programación. Su trilogía sobre “Programación de computadoras” es referencia obligada en todo el mundo docente

e investigador de Informática y Computación.

El algoritmo es la especificación concisa del método para resolver un problema con indicación de las acciones a realizar.

Un algoritmo es un conjunto finito de reglas que dan una secuencia de operaciones para resolver un determinado problema.

Es, por tanto, un método para resolver un problema que tiene en general una entrada y una salida. Las características fundamentales

que debe cumplir todo algoritmo son:

• Un algoritmo debe ser preciso e indicar el orden de realización de cada paso.

• Un algoritmo debe estar bien definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez.

• Un algoritmo debe ser finito. Si se sigue un algoritmo, se debe terminar en algún momento; o sea, debe tener un número

finito de pasos.

La definición de un algoritmo debe describir tres partes: Entrada, Proceso y Salida.

EJEMPLO 1.1. Se desea diseñar un algoritmo para conocer si un número es primo o no.

Un número es primo si sólo puede dividirse por sí mismo y por la unidad (es decir, no tiene más divisores que él mismo

y la unidad). Por ejemplo: 9, 8, 6, 4, 12, 16, 20, etc., no son primos, ya que son divisibles por números distintos a

ellos mismos y a la unidad. Así, 9 es divisible por 3, 8 lo es por 2, etc. El algoritmo de resolución del problema pasa

por dividir sucesivamente el número por 2, 3, 4..., etc.

Entrada: dato n entero positivo

Salida: es o no primo.

Preceso:

1. Inicio.

2. Poner x igual a 2 (x = 2, x variable que representa a los divisores del número que se

busca n).

3. Dividir n por x (n/x).

4. Si el resultado de n/x es entero, entonces n es un número primo y bifurcar al punto 7; en

caso contrario, continuar el proceso.

5. Suma 1 a x (x ← x + 1).

6. Si x es igual a n, entonces n es un número primo; en caso contrario, bifurcar al punto 3.

7. Fin.

El algoritmo anterior escrito en pseudocódigo es:

algoritmo primo

1. inicio

variables

entero: n, x:

lógico: primo;

2. leer(n);

x←2;

primo←verdadero;

3. mientras primo y (x < n) hacer

4. si n mod x != 0 entonces

5. x← x+1

sino

primo ←faslso

fin si

fin mientras

...

Descargar como (para miembros actualizados)  txt (33.4 Kb)  
Leer 18 páginas más »
Disponible sólo en Clubensayos.com