0% encontró este documento útil (0 votos)
29 vistas14 páginas

Presentacionprog

El documento aborda la evolución de los lenguajes de programación, destacando la programación modular y el diseño descendente como métodos para resolver problemas complejos dividiéndolos en subproblemas. Se explica el teorema del programa estructurado y las estructuras de control que determinan el flujo de ejecución en un algoritmo, así como la importancia de los diagramas de flujo en la representación de procesos. Además, se presentan ejemplos de código en C++ para ilustrar conceptos de programación.

Cargado por

yesikaq93
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
29 vistas14 páginas

Presentacionprog

El documento aborda la evolución de los lenguajes de programación, destacando la programación modular y el diseño descendente como métodos para resolver problemas complejos dividiéndolos en subproblemas. Se explica el teorema del programa estructurado y las estructuras de control que determinan el flujo de ejecución en un algoritmo, así como la importancia de los diagramas de flujo en la representación de procesos. Además, se presentan ejemplos de código en C++ para ilustrar conceptos de programación.

Cargado por

yesikaq93
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd

Lenguaje de máquina

 Evolución de los lenguajes de programación Lenguaje Ensamblador


Lenguajes de Alto/Bajo Nivel
 Programación modular La programación descendente o "Top – Down”

 Teorema del programa estructurado

Estructuras de control

ALGORITMO, DIAGRAMA DE FLUJO, PSEUDOCODIGO

PROCESAMIENTO EN UN ENTORNO C++

Uso de variables Globales, locales, constantes


Sentencias
Operadores
Transferencia de Control
Estructuras de Control
•Programación modular

Uno de los métodos más conocidos para resolver un problema es dividirlo


en problemas más pequeños, llamados subproblemas.

De esta manera, en lugar de resolver una tarea compleja y tediosa,


resolvemos otras más sencillas y a partir de ellas llegamos a la solución.

Esta técnica se usa mucho en programación ya que programar no es más


que resolver problemas, y se le suele llamar diseño descendente,
metodología del divide y vencerás o programación top-down.

Es evidente que si esta metodología nos lleva a tratar con subproblemas,


entonces también tengamos la necesidad de poder crear y trabajar con
subprogramas para resolverlos.

A estos subprogramas se les suele llamar módulos, de ahí viene el nombre


de programación modular. En Pascal disponemos de dos tipos de módulos:
los procedimientos y las funciones.
Veamos un ejemplo de cómo emplear el diseño descendente para resolver
un problema.
•La programación descendente o "Top – Down”

Un problema se descompone en una serie de


niveles o pasos sucesivos de refinamiento (stepwise).

Relación entre las sucesivas etapas de estructuración jerárquica de


modo que exista una relación entre ellas mediante entradas y salidas
de información.

Las estructuras desde los dos puntos de vista se representan de la


siguiente forma:

El diseño descendente se representa así


•Teorema del programa estructurado

Establece que toda función computable puede ser implementada en un


lenguaje de programación que combine subrutinas en únicamente tres
formas.

Esas tres formas (también llamadas estructuras de control) son:


Ejecutar una subrutina y luego otra subrutina (secuencia)

Ejecutar una de dos subrutinas, dependiendo del valor de una variable


booleana (selección o IF-THEN-ELSE)

Ejecutar una subrutina mientras una variable booleana sea 'verdadera'


(iteración, ciclo o bucle)

Este teorema demuestra que la instrucción GOTO no es estrictamente


necesaria y para todo programa existe un programa equivalente que no
hace uso de dicha instrucción.

•Transferencia de control
el programador puede especificar que las siguientes
instrucciones a ejecutarse tal vez no sea la siguiente en
secuencia

Hay que tener en cuenta que la instrucción goto es una palabra


reservada pero no se utiliza ni se recomienda. Un programa
bien estructurado no necesita de esta instrucción. Si sabes
programar no utilizaras goto.
•Estructuras de control

Métodos de especificar el orden en que las instrucciones de


un algoritmo se ejecutaran, el orden de ejecución de las
sentencias o instrucciones determinan el flujo de control

Básicamente Son :

Secuencia
Selección
Repetición

En lenguajes de programación, las estructuras de control


permiten modificar el flujo de ejecución de las instrucciones de
un programa.
Con las estructuras de control se puede:
De acuerdo a una condición, ejecutar un grupo u otro de
sentencias (If-Then-Else y Select-Case)
Ejecutar un grupo de sentencias mientras exista una condición
(Do-While)
Ejecutar un grupo de sentencias hasta que exista una condición
(Do-Until)
Ejecutar un grupo de sentencias un número determinado de
veces (For-Next)
Etc
ALGORITMO:

Es una secuencia de pasos o procesos lógicamente relacionados


entre sí a fin de obtener la solución a un problema planteado.

Conjunto “FINITO” de pasos o instrucciones, seguidas en un


orden lógico, los cuales nos llevan a la solución de un problema
específico.

Una serie de instrucciones colocadas en cierta secuencia,


necesarias para la descripción de las operaciones que llevan a la
solución de un problema.

PASOS PARA PLANTEAR LA SOLUCIÓN A UN PROBLEMA:


1.- Análisis del problema.

2.- Identificar las entradas, procesos y salidas del problema,


declaración de variables.

3.- Diseño del Algoritmo: Describe la secuencia ordenada de los


pasos, sin ambigüedad, es decir, siendo preciso y veraz en la
búsqueda de la solución al problema.

4.- Codificación del Algoritmo: Es la expresión en un lenguaje de


programación de los pasos definidos en el algoritmo.

5.- Ejecución y validación del programa por el computador.


•DIAGRAMA DE FLUJO
Indica el inicio y el final de nuestro diagrama
de flujo.
Indica la entrada y salida de datos.
Símbolo de proceso y nos indica la asignación de un valor en la
memoria y/o la ejecución de una operación aritmética.
Indica la salida de información por
impresora.
Conector dentro de página. Representa la continuidad del diagrama dentro de la misma
página.
Conector fuera de pagina. Representa la continuidad del diagrama en otra
pagina.
Indica la salida de información en la pantalla o monitor
Símbolo de decisión. Indica la realización de una comparación
de valores.

Símbolo de Selección Múltiple. Dada una


expresión permite escoger una opción de
muchas.

Símbolo del Mientras. Dada una expresión al principio de la


iteración esta es evaluada; si la condición es verdadera realizará
el ciclo, si es falsa la repetición cesará.

Símbolo del Para. Esta estructura de control repetitiva se usa


generalmente cuando se conoce de antemano el numero de
iteraciones.

Símbolo Repita Hasta. funciona igual que la estructura Mientras,


con la diferencia que al menos una vez hará el grupo de
instrucciones y luego evaluará una condición. Si la condición
evaluada es falsa continua dentro del ciclo y si es verdadera
termina la iteración.

Líneas de flujo o dirección. Indican la secuencia en que se


realizan las operaciones.
Recomendaciones para el diseño de Diagramas de Flujo

Se deben usar solamente líneas de flujo horizontales y/o verticales.


Se debe evitar el cruce de líneas utilizando los conectores.
Se deben usar conectores sólo cuando sea necesario.
No deben quedar líneas de flujo sin conectar.
Se deben trazar los símbolos de manera que se puedan leer de arriba hacia abajo y de
izquierda a derecha.
Todo texto escrito dentro de un símbolo deberá ser escrito claramente, evitando el
uso de muchas palabras.
1 Leer los datos del archivo de la empresa, hasta que se encuentre la
ficha final del archivo (horas, precio-horas, nombre)
2 Si horas <= 40 entonces salario es el producto de horas por precio-hora
3 Si horas > 40, entonces salario es la suma de 40 veces precio-hora mas
1,5 veces precio hora por (horas-40)

+
*
Desde un punto de vista histórico, el C es anterior al C++, aunque
el estándar C++ fuera publicado antes que el de C [2], de modo,
que paradójicamente el hijo influyó en el estándar del padre. Así
pues, la propuesta de ANSI C recogió algunas de las normas del C+
+. Ambos nacieron en los prestigiosos laboratorios Bell de la AT&T
(American Telephone and Telegraph) en Murray Hill (New Jersey
USA) [3]. El primero de la mano de Brian W. Kernighan y Dennis
M. Ritchie (la "K" y la "R" de K&R, siglas con las que se les conoce),
el segundo es de Bjarne Stroustrup.
#include <iostream.h>

main()

{
int x, y, Valor;
cout << " mete 2 valores enteros \n" ;
cin >> x >> y ;
Valor = x + y;
cout << "Sum of " << x << " and " << y << " is : "
<< Valor << endl;

return 0;

#include <iostream.h>

main()

{
int x, y, Valor;
cout << " mete 2 valores enteros \n" ;
cin >> x >> y ;
cout << "Sum of " << x << " and " << y << " is : "
<< x + y << endl;

return 0;

También podría gustarte