SEMANA 4 A LA SEMANA 8

ESTRUCTURAS BASICAS

Las Estructuras Básicas pueden ser:

Secuenciales : Cuando una instrucción del programa sigue a otra.

Selección o decisión : Acciones en las que la ejecución de alguna dependerá de que se cumplan una o varias condiciones.

Repetición, Iteración: Cuando un proceso se repite en tanto cierta condición sea establecida para finalizar ese proceso.

ESTRUCTURA SECUENCIAL Se caracteriza porque una acción se ejecuta detrás de otra. El flujo del programa coincide con el órden físico en el que se han ido poniendo las instrucciones.

Dentro de este tipo podemos encontrar operaciones de inicio/fin, inicialización de variables, operaciones de asignación, cálculo, sumarización, etc. Este tipo de estructura se basa en las 5 fases de que consta todo algoritmo o programa: Definición de variables (Declaración), Inicialización de variables, Lectura de datos, Cálculo, Salida.

Ejemplo: Se desea encontrar la longitud y el área de un círculo de radio 5.

MARTINEZ B, Néstor Raúl. Video Estrutura Secuencial. Universidad Cooperativa de Colombia seccional Bucaramanga, 2009 ó ver en el cd de la tesis en la ruta CD DE LOGICA DE PROG\VIDEOS BLOGGER LOGICA DE PROGRAMACION

ESTRUCTURAS SELECTIVAS Las estructuras selectivas o alternativas se clasifican en:

  • Simples
  • Dobles
  • Compuestas
  • Múltiples
Estructura de Selección Simple (IF) Se identifican porque están compuestos únicamente de una condición. La estructura si - entonces evalúa la condición y en tal caso:
Si la condición es verdadera, entonces ejecuta la acción Si (o acciones si son varias). Si la condición es falsa, entonces no se hace nada.


Estructura de Selección doble Son estructuras lógicas que permiten controlar la ejecución de varias acciones y se utilizan cuando se tienen dos opciones de acción, por la naturaleza de estas se debe ejecutar una o la otra, pero no ambas a la vez, es decir, son mutuamente excluyentes.

MARTINEZ B, Néstor Raúl. Ejm Estructura Doble. Universidad Cooperativa de Colombia seccional Bucaramanga, 2009 ó ver en el cd de la tesis en la ruta CD DE LOGICA DE PROG\VIDEOS BLOGGER LOGICA DE PROGRAMACIONo ver en CD de Proyecto de OVAS II Fase

Estructura selectiva compuesta En la solución de problemas encontramos casos en los que luego de tomar una decisión y marcar el camino correspondiente a seguir, es necesario tomar otra decisión. Dicho proceso puede repetirse numerosas veces. En aquellos problemas en donde un bloque condicional incluye otro bloque condicional se dice que un bloque está anidado dentro del otro.





Estructura selectiva multiple Se usa cuando existan más de dos elecciones posibles. Este problema se podría resolver por estructuras selectivas simples o dobles, anidadas o en cascada, pero si el número de alternativas es grande puede plantear serios problemas de escritura y de legibilidad.
Usando la estructura de decisión múltiple se evaluará una expresión que podrá tomar n valores distintos, 1, 2 , 3, ....,n y según que elija uno de estos valores en la condición, se realizará una de las n acciones o lo que es igual, el flujo del algoritmo seguirá sólo un determinado camino entre los n posibles.
Esta estructura se representa por un selector el cual si toma el valor 1 ejecutará la acción 1, si toma el valor 2 ejecutará la acción 2, si toma el valor N realizará la acción N.

LENGUAJES DE PROGRAMACION

(História de los lenguajes de programación) http://www.youtube.com/watch?v=MiMKWVqxSls&feature=related ó en el cd de la tesis en la ruta CD DE LOGICA DE PROG\VIDEOS BLOGGER LOGICA DE PROGRAMACION

Ya que este tema es bastante largo recomendamos que visite: http://www.lenguajes-de-programacion.com/

Los lenguajes de programación son herramientas que nos permiten crear programas y software. Entre ellos tenemos Delphi, Visual Basic, Pascal, Java, etc..Una computadora funciona bajo control de un programa el cual debe estar almacenado en la unidad de memoria; tales como el disco duro.Los lenguajes de programación de una computadora en particular se conoce como código de máquinas o lenguaje de máquinas.

Hay lenguajes de programación que utilizan compilador.

Un leguaje de programación es un conjunto de símbolos junto a un conjunto de reglas para combinar dichos símbolos que se usan para expresar programas. Los leguajes de programación constan de:.
Léxico : Conjunto de símbolos permitidos o vocabulario Sintaxis : Reglas que indican cómo realizar las construcciones del lenguaje Semántica: Reglas que permiten determinar el significado de cualquier construcción del lenguaje.

TIPOS DE LENGUAJES

Lenguaje de bajo nivel Es el tipo de lenguaje que cualquier computadora es capaz de entender. Se dice que los programas escritos en forma de ceros y unos están en lenguaje de máquina, porque esa es la versión del programa que la computadora realmente lee y sigue.

Lenguajes de alto nivel Son lenguajes de programación que se asemejan a las lenguas humanas usando palabras y frases fáciles de entender.

En un lenguaje de bajo nivel cada instrucción corresponde a una acción ejecutable por el ordenador, mientras que en los lenguajes de alto nivel una instrucción suele corresponder a varias acciones.

Características de los lenguajes de programacicón:

  • Son independientes de la arquitectura física de la computadora.
  • Permiten usar los mismos programas en computadoras de diferentes arquitecturas (portabilidad), y no es necesario conocer el hardware específico de la máquina.
  • La ejecución de un programa en lenguaje de alto nivel, requiere de una traducción del mismo al lenguaje de la computadora donde va a ser ejecutado.
  • Una sentencia en un lenguaje de alto nivel da lugar, al ser traducida, a varias instrucciones en lenguaje entendible por el computador.
  • Utilizan notaciones cercanas a las usadas por las personas en un determinado ámbito.
  • Se suelen incluir instrucciones potentes de uso frecuente que son ofrecidas por el lenguaje de programación.

GENERACION DE LOS LENGUAJES DE PROGRAMACION :

Lenguaje de máquina (Primera Generación) Es el lenguaje que la computadora entiende, su estructura está totalmente adaptada a los circuitos de la máquina y la programación es tediosa porque los datos se representan por ceros y unos. Es de bajo nivel. Es un conjunto de instrucciones codificadas en binario que son capaces de relacionarse directamente con los registros y circuitería del microprocesador de la computadora y que resulta directamente ejecutable por éste, sin necesidad de otros programas intermediarios.
Los datos se referencian por medio de las direcciones de memoria donde se encuentran y las instrucciones realizan operaciones simples. Estos lenguajes están íntimamente ligados a la CPU y por eso no son transferibles. (baja portabilidad). Para los programadores es posible escribir programas directamente en lenguaje de máquina, pero las instrucciones son difíciles de recordar y los programas resultan largos y laboriosos de escribir y también de corregir y depurar.

Lenguaje ensamblador (Segunda Generación) Es otro lenguaje de programación de bajo nivel, pero simbólico porque las instrucciones se construyen usando códigos de tipo mnemotécnico, lo cual facilita la escritura y depuración de los programas pero no los acorta puesto que para cada acción se necesita una instrucción. El programa ensamblador va traduciendo línea a línea a la vez que comprueba la existencia de errores. Si localiza alguno da un mensaje de error. Algunas características que lo diferencian del lenguaje de máquina son que permite el uso de comentarios entre las líneas de instrucciones; en lugar de direcciones binarias usa identificadores como total, x, y, etc. Y los códigos de operación se representan por mnemotécnica siempre tienen la desventaja de repertorio reducido de instrucciones, rígido formato para las instrucciones, baja portabilidad y fuerte dependencia del hardware. Tiene la ventaja del uso óptimo de los recursos hardware, permitiendo la obtención de un código muy eficiente. Ejemplo de algunos códigos mnemónicos son: STO para guardar un dato, LOA para cargar algo en el acumulador, ADD para adicionar un dato, INP para leer un dato, STO para guardar información, MOV para mover un dato y ponerlo en un registro, END para terminar el programa, etc. Con la tercera generación avanzamos a los lenguajes de alto nivel, muchos de los cuales se consideran exportables. Esto es, pueden correr en más de un tipo de computadoras, se les puede exportar de una máquina a otra.

Lenguaje de procedimientos (Tercera Generación) Son lenguajes de alto nivel similares al habla humana pero requieren cierta capacitación para su uso.

Ventajas :

a. Independencia de la arquitectura física de la computadora (portabilidad), esto significa que un mismo lenguaje puede funcionar (al menos en teoría) en distintos computadores, por lo que tanto el lenguaje como los programas escritos con él serán transportables de un computador a otro. En la práctica, esta característica resulta limitada por la gran diversidad de versiones y dialectos que se constituyen para cada lenguaje.

b. una sentencia en un lenguaje de alto nivel da lugar, al ser traducida, a varias instrucciones en lenguaje máquina. Se llaman de procedimientos porque están diseñados para expresar la lógica capaz de resolver problemas generales. Entre estos tenemos: Basic Pascal Cobol C Fortran Para que el lenguaje de procedimientos pueda funcionar debe traducirse a lenguaje de máquina a fin de que la computadora lo entienda. Para ello se han de usar programas traductores que realicen dicho proceso. Tienen la capacidad de soportar programación estructurada.

Lenguajes orientados a problemas (4GL) Resultan más eficaces para la resolución de un tipo de problemas a costa de una menor eficiencia para otros. Requieren poca capacitación especial de parte del usuario Son considerados de muy alto nivel Diseñados para resolver problemas específicos Incluye: lenguajes de consulta y generador de aplicaciones

  • Lenguajes de consulta: Permiten a no programadores usar ciertos comandos de fácil comprensión para la búsqueda y generación de reportes a partir de una base de datos.
  • Generador de aplicaciones: Quiere decir que cuando se diseña uno de estos lenguajes, se tiene en cuenta que su finalidad es la resolución de problemas, prescindiendo de la arquitectura del computador. Contiene varios módulos que han sido preprogramados para cumplir varias tareas.

Lenguajes naturales Lenguajes orientados a aplicaciones en inteligencia artificial, como lisp y prolog. Dentro de este campo destacan las aplicaciones en sistemas expertos, juegos, visión artificial (Jurasic Park) y robótica. Lisp es un lenguaje para procesamiento de listas y manipulación de símbolos. Prolog es un lenguaje basado en la lógica, para aplicaciones de bases de datos e Inteligencia Artificial.
Podemos decir entonces, que los lenguajes de alto nivel, tienen las ventajas de mayor legibilidad de los programas, portabilidad, facilidad de aprendizaje y facilidad de modificación.


ENTORNO DE DESARROLLO INTEGRADO (EDI)

Ver en el OVAS el temario del curso http://201.221.156.156/moodle

MARTINEZ B, Néstor Raúl. EDI V3. Universidad Cooperativa de Colombia seccional Bucaramanga, 2009 ó en el cd de la tesis en la ruta CD DE LOGICA DE PROG\VIDEOS BLOGGER LOGICA DE PROGRAMACION


ESTRUCTURAS REPETITIVAS O CICLO O BUCLE.

Son operaciones que se deben ejecutar un número repetido de veces. El conjunto de instrucciones que se ejecuta repetidamente cierto número de veces, se llama Ciclo, Bucle o Lazo .

Generalmente, son usados para hacer una acción repetida sin tener que repetir varias veces el mismo código, esto ahorra tiempo, deja el código más sencillo y facilita su modificación en el futuro.

Iteración es cada una de las diferentes pasadas o ejecuciones de todas las instrucciones contenidas en el bucle.

Fases de un Programa Cíclico :

  • Entrada de datos e instrucciones previas
  • Lazo o bucle Instrucciones finales o resto del proceso
  • Salida de resultado.

ESTRUCTURA DESDE/PARA (FOR) Se usa frecuentemente cuando se conoce de antemano el número de veces que se ejecutarán las acciones de un bucle.

A la estructura Desde/Para se le conoce como Repetitiva. Para utilizar esta estructura en algoritmos, debemos hacer uso de contadores y algunas veces de acumuladores, cuyos conceptos se describen a continuación:

CONTADOR: Un contador es una variable cuyo valor se incrementa o decrementa en una cantidad constante cada vez que se produce un determinado suceso o acción. Los contadores se utilizan con la finalidad de contar sucesos o acciones internas de un bucle; deben realizar una operación de inicialización y posteriormente las sucesivas de incremento o decremento del mismo. La inicialización consiste en asignarle al contador un valor. Se situará antes y fuera del bucle.
Representación: ¬ nombre del contador> + Si en vez de incremento es decremento se coloca un menos en lugar del más. Ejemplo: i = i + 1

ACUMULADOR O TOTALIZADOR : Es una variable que suma sobre sí misma un conjunto de valores para de esta manera tener la suma de todos ellos en una sola variable. La diferencia entre un contador y un acumulador es que mientras el primero va aumentando de uno en uno, el acumulador va aumentando en una cantidad variable.
Representación: ¬ +
Un ejemplo muy claro apra el ciclo For se verá cuando lleguemos a hablar de los vectores y la matrices.

ESTRUCTURA MIENTRAS (While) Se usa cuando queremos repetir la ejecución de unas sentencias un número indefinido de veces.

Su sintaxis es la siguiente: while(condición){ sentencia a ejecutar }

Para entender mejor el uso de while nos serviremos del siguiente ejemplo: while($color != "rojo"){ color= dame un color; }

ESTRUCTURA HACER MIENTRAS (Do While) El bucle DO. WHILE se usa cuando no sabemos el número de veces que va a ejecutarse un bucle pero lo que si tenemos claro es que por lo menos una vez si que se ejecutara la accion.

Su sintaxis es la siguiente:
do{
sentencia del bucle
}
while(condicion

MARTINEZ B, Néstor Raúl. Ejm Bucles. Universidad Cooperativa de Colombia seccional Bucaramanga, 2009 ó en el cd de la tesis en la ruta CD DE LOGICA DE PROG\VIDEOS BLOGGER LOGICA DE PROGRAMACION



No hay comentarios:

Publicar un comentario