Está en la página 1de 12
 

PROGRAMACION

“PROGRAMA Y PROGRAMACION”

BASICA

PROGRAMACIÓN

Para llegar a tener una secuencia de instrucciones que den solución a un problema es necesario ejecutar varias etapas.

Etapa de análisis: En esta etapa el programador debe entender claramente el problema. Saber qué es lo que se quiere resolver (analizar)

Etapa de Solución general: Escribir la serie de pasos que sean necesarios para dar solución al problema. Estos pasos se pueden desarrollar a través de un Diagrama de flujo (Utilizando símbolos) ó a través de un seudo lenguaje (Utilizando Lenguaje común). A lo anterior es lo que se conoce con el nombre de Algoritmo.

Etapa de prueba: Consiste en chequear el algoritmo paso a paso para estar seguro si la solución da solución verdaderamente el problema (Prueba de escritorio).

Etapa de implementación específica: Consiste en traducir el algoritmo a un lenguaje de programación (Codificar).

Etapa de prueba: Consiste en ejecutar el programa en un computador y revisar los datos arrojados para ver si son correctos y hacer los ajustes necesarios (Implementar).

Etapa de uso: Consiste en instalar el programa de manera definitiva para el uso por parte del usuario.

TIPOS:

En lo que respecta al lenguaje C++, existen tres tipos fundamentales de librerías que son :

Librería Estándar:

La librería estándar ANSI C++ define la denominada que debe acompañar a cada implementación del compilador que se adhiera al estándar. Es decir: el Estándar determina cuales son, como se llaman y como se utiliza este conjunto de algoritmos que deben acompañar (como mínimo) a cada implementación del compilador que quiera llamarse "Estándar".

De otro lado, C++ incluye todas las funciones de la primitiva librería estándar de C mas otras nuevas. Las primeras se han mantenido por razón de compatibilidad, aunque el diseño e importancia de las nuevas cambia drásticamente la filosofía del propio lenguaje.

Los ficheros de cabecera del C++ Estándar previstos para compatibilidad con el antiguo C, utilizan los mismos nombres .h para los ficheros de cabecera que este. Son los siguientes:

<assert.h>, <ctype.h>, <errno.h>, <float.h>, <limits.h>, <locale.h>, <math.h>, <setjmp.h>, <signal.h>, <stdarg.h>, <stddef.h>, <stdio.h>, <stdlib.h>, <string.h>, <time.h>

1

 
 

PROGRAMACION

“PROGRAMA Y PROGRAMACION”

BASICA

Componentes:

A grandes rasgos, podemos decir que la Librería Estándar C++ comprende los siguientes elementos:

La denominada Librería Estándar de Plantillas abreviadamente STL.

  • Una utilidad de entrada/salida de flujos.

  • Una utilidad local (locale)

  • Una clase string para manejo estandarizado de cadenas de caracteres.

  • Una clase complex para manejo y representación estandarizada de números complejos.

  • Una clase valarray optimizada para la manipulación de matrices numéricas.

  • Un esquema para describir de modo uniforme el entorno de ejecución mediante la utilización de una clase estándar denominada numeric_limits y especialización para cada uno de los tipos de datos fundamentales.

  • Utilidades para manejo de memoria.

  • Soporte para utilización de juegos de caracteres y signos de diversos idiomas.

  • Utilidades para manejo de excepciones.

  • Funcionalidad

  • Si atendemos a su funcionalidad, pueden agruparse en:

  • Clasificación: Clasifican caracteres ASCII, como letras, caracteres de control (no imprimibles), Mayúsculas/minúsculas etc. Se definen en la cabecera <ctype.h>.

  • Entradas/Salidas de Consola: Estas son las denominadas entrada/salida estándar. Se refieren al teclado y a la pantalla (no pueden utilizarse directamente en las aplicaciones de interfaz gráfica).

Conversión: Convierten caracteres y cadenas de caracteres desde formato alfabético a numérico de diversos tipos (float, int, long). También realizan la conversión inversa, de formatos numéricos a representaciones alfabéticas y de mayúsculas a minúsculas y viceversa.

Diagnóstico:

Son rutinas destinadas a comprobaciones, a descubrir y corregir posibles

errores. Directorio: Rutinas para manejo de directorios y sus direcciones (path names).

En linea (Inline): Rutinas para versiones inline de funciones. El compilador genera el código correspondiente para las versiones inline cuando se utiliza #pragma intrinsic o si se solicita optimización al compilador (optimización de tiempo de ejecución). Entrada/Salida. Son rutinas que proporcionan manejo de flujos y operaciones de Entrada/Salida a bajo nivel (de Sistema Operativo).

2

 
 

PROGRAMACION

“PROGRAMA Y PROGRAMACION”

BASICA

Manipulación. Manejo de cadenas y bloques de memoria: copiar, comparar, convertir y buscar.

Matemáticas: Para realizar cálculos matemáticos. De Memoria: Proporcionan asignación dinámica de memoria.

Miscelánea. Se agrupan aquí rutinas varias, como las que posibilitan saltos (goto) no locales y las que manejan diferencias de tipo cultural o de lenguaje. Por ejemplo representación de números, de moneda, formatos de fecha y hora, clasificación de tipo alfabético, etc.

Control de proceso. Rutinas que permiten invocar y terminar nuevos procesos desde otra rutina.

Fecha y hora. Incluyen rutinaspara conversión y manipulación de variables de medida del tiempo(fecha y hora).

Argumentos variables. Rutinas utilizadas cuando se usan listas variables de argumentos, como en los casos de printf(), vscanf(), etc.

Utilización:

Para utilizar una función de librería hay que incluirla en nuestro programa. Para hacerlo se necesitan tres cosas (en realidad las exigencias son las mismas que con cualquier otra función, la diferencia estriba en la forma en que se realizan los pasos b y c):

Incluir en el código fuente las invocaciones a las funciones que estamos utilizando. Ejemplo:

a:

printf("Esto es una llamada a la función \"printf\" de librería\n"); b: Incluir en el código fuente los prototipos de dichas funciones.

Puesto que los prototipos ya están incluidos en los ficheros estándar de cabecera, hay que indicar al compilador que los incluya. Esto se realiza poniendo en nuestro fuente (normalmente al principio) una directiva de preprocesado #include que señala el fichero de cabecera que se debe añadir. Por ejemplo, si el manual indica que la función printf está definida en el fichero de cabecera stdio.h ponemos en nuestro código:

#include <stdio.h>

c: Incluir en el fuente las definiciones de las funciones utilizadas. Como alternativa se puede indicar al compilador que tales definiciones están en ficheros compilados previamente.

3

 
 

PROGRAMACION

“PROGRAMA Y PROGRAMACION”

BASICA

En este último caso se dice que las definiciones de las funciones están en librerías de las que existen dos tipos: estáticas (.LIB, .OBJ y .BPI) y dinámicas (.DLL). Toda la información que necesita el compilador está contenida en los ficheros de cabecera, por lo que las operaciones correspondientes son realizadas de forma automática; con la sola condición de que los ficheros y librerías correspondientes sean accesibles al compilador.

No se debe olvidar que todas las cosas en la Librería Estándar C++ (que no están en ficheros de cabecera .h), se han definido en un espacio de nombres denominado std, por lo que es preciso referirse a él específicamente cuando se quieran utilizar estos recursos.

TECNICAS DE PROGRAMACION:

  • Las técnicas de programación constituyen parte fundamental en el proceso de desarrollo e Ingeniería del Software dentro del ámbito informático.

  • Cada técnica tiene sus propias características, y distintos métodos de resolución de problemas, así como la implementación de estándares de ciertas compañías o instituciones, y es de gran importancia aprender a implementarlas a la hora de adentrarse en la evolución de cualquier proyecto de desarrollo de software.

  • En este tema, nos adentraremos en varias técnicas de programación que son aplicadas con frecuencia para segmentar un proyecto a mediana, pequeña o gran escala, en problemas más simples que un grupo de trabajo o incluso un sólo programador, puede resolver. Ñoño

PROGRAMACION ESTRUCTURADA:

La programación estructurada esta compuesta por un conjunto de técnicas que han ido evolucionando aumentando considerablemente la productividad del programa reduciendo el tiempo de depuración y mantenimiento del mismo.

Esta programación estructurada utiliza un número limitado de estructuras de control, reduciendo así considerablemente los errores.

LENGUAJE DE PROGRAMACIÓN:

Un lenguaje

de

programación es

un idioma

artificial diseñado para

expresar computaciones que pueden ser llevadas a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana. Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila y se

mantiene el código fuente de un programa informático se le llama programación.

4

 
 

PROGRAMACION

“PROGRAMA Y PROGRAMACION”

BASICA

  • CLASIFICACION SEGÚN:

    • 1. Según el nivel de abstracción indique los tipos que están enmarcados en ella así como la aplicación en nuestro medio.

      • SU NIVEL DE ABSTRACCION:

Lenguaje de Máquina:

Están escritos en lenguajes directamente legibles por la máquina (computadora), ya que sus instrucciones son cadenas binarias (0 y 1). Da la posibilidad de cargar (transferir un programa a la memoria) sin necesidad de traducción posterior lo que supone una velocidad de ejecución superior, solo que con poca fiabilidad y dificultad de verificar y poner a punto los programas.

Lenguajes de bajo nivel

Los lenguajes de bajo nivel son lenguajes de programación que se acercan al funcionamiento de una computadora. El lenguaje de más bajo nivel por excelencia es el código máquina. A éste le sigue el lenguaje ensamblador, ya que al programar en ensamblador se trabajan con los registros de memoria de la computadora de forma directa.

Lenguajes de medio nivel

Hay lenguajes de programación que son considerados por algunos expertos como lenguajes de medio nivel (como es el caso del Lenguaje C) al tener ciertas características que los acercan a los lenguajes de bajo nivel pero teniendo, al mismo tiempo, ciertas cualidades que lo hacen un lenguaje más cercano al humano y, por tanto, de alto nivel.

Lenguajes de alto nivel

Son más parecidos al lenguaje humano. Los lenguajes de alto nivel son normalmente fáciles de aprender porque están formados por elementos de lenguajes naturales, como el inglés. En BASIC, uno de los lenguajes de alto nivel más conocidos, los comandos como "IF CONTADOR = 10 THEN STOP" pueden utilizarse para pedir a la computadora que pare si el CONTADOR es igual a 10. Esta forma de trabajar puede dar la sensación de que las computadoras parecen comprender un lenguaje natural; en

5

 
 

PROGRAMACION

“PROGRAMA Y PROGRAMACION”

BASICA

realidad lo hacen de una forma rígida y sistemática, sin que haya cabida, por ejemplo, para ambigüedades o dobles sentidos.

  • 2. Según el paradigma de programación de los tipos existentes seleccione uno que reúne las características aplicativas para su uso en el medio de la construcción.

    • EL PARADIGMA DE PROGRAMACION:

Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No es mejor uno que otro, sino que cada uno tiene ventajas y desventajas. Dependiendo de la situación un paradigma resulta más apropiado que otro. Atendiendo al paradigma de programación, se pueden clasificar los lenguajes en :

El paradigma imperativo o por procedimientos es considerado el más común y está representado, por ejemplo, por el C o por BASIC. El paradigma funcional está representado por la familia de lenguajes LISP (en particular Scheme), ML o Haskell. El paradigma lógico, un ejemplo es PROLOG. El paradigma orientado a objetos. Un lenguaje completamente orientado a objetos es Smalltalk.

Lenguajes imperativos

Son los lenguajes que dan instrucciones a la computadora, es decir, órdenes.

Lenguajes Funcionales

Este paradigma concibe a la computación como la evaluación de funciones matemáticas y evita declarar y cambiar datos. En otras palabras, hace hincapié en la aplicación de las funciones y composición entre ellas, más que en los cambios de estados y la ejecución secuencial de comandos (como lo hace el paradigma procedimental). Permite resolver ciertos problemas de forma elegante y los lenguajes puramente funcionales evitan los efectos secundarios comunes en otro tipo de programaciones.

6

 
 

PROGRAMACION

“PROGRAMA Y PROGRAMACION”

BASICA

PROGRAMACION “PROGRAMA Y PROGRAMACION” BASICA Lenguajes Lógicos La computación lógica direcciona métodos de procesamiento basados enProgramación Orientada a Objetos (POO u OOP según sus siglas en inglés) es un paradigma de programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de computadora. Está basado en varias técnicas, incluyendo herencia, modularidad, polimorfismo y encapsulamiento. Su uso se popularizó a principios de la década de 1990. Actualmente son muchos los lenguajes de programación que soportan la orientación a objetos El tipo de lenguaje del paradigma de programación que reúne las características aplicativas para su uso en el medio de la construcción es el lenguaje funcional porque nos permite resolver funciones matemáticas relacionadas con el proceso de construcción. 3. Con respecto al lenguaje de ensamblador indique las características que presenta así como el uso correspondiente como lenguaje de programación  LENGUAJE DE ENSAMBLADOR: Tal vez no sea el lenguaje de programación más sencillo de aprender, pero el lenguaje de Ensamblador es y seguirá siendo una de las herramientas de programación más utilizadas por todas aquellas personas que desean tener un mayor grado de comprensión sobre el funcionamiento a nivel de dispositivo de una computadora personal. 7 " id="pdf-obj-6-12" src="pdf-obj-6-12.jpg">

Lenguajes Lógicos

La computación lógica direcciona métodos de procesamiento basados en el razonamiento formal. Los objetos de tales razonamientos son "hechos" o reglas "ifthen". Para computar lógicamente se utiliza un conjunto de tales estamentos para calcular la verdad o falsedad de ese conjunto de estamentos.

Lenguajes orientados a objetos

La Programación Orientada a Objetos (POO u OOP según sus siglas en inglés) es un paradigma de programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de computadora. Está basado en varias técnicas, incluyendo herencia, modularidad, polimorfismo y encapsulamiento. Su uso se popularizó a principios de la década de 1990. Actualmente son muchos los lenguajes de programación que soportan la orientación a objetos

El tipo de lenguaje del paradigma de programación que reúne las características aplicativas para su uso en el medio de la construcción es el lenguaje funcional porque nos permite resolver funciones matemáticas relacionadas con el proceso de construcción.

  • 3. Con respecto al lenguaje de ensamblador indique las características que presenta así como el uso correspondiente como lenguaje de programación

    • LENGUAJE DE ENSAMBLADOR:

Tal vez no sea el lenguaje de programación más sencillo de aprender, pero el lenguaje de

Ensamblador es y seguirá siendo una de las herramientas de programación más utilizadas por todas aquellas personas que desean tener un mayor grado de comprensión sobre el funcionamiento a nivel de dispositivo de una computadora personal.

7

 
 

PROGRAMACION

“PROGRAMA Y PROGRAMACION”

BASICA

Características:

  • El código escrito en lenguaje ensamblador posee una cierta dificultad de ser entendido ya que su estructura se acerca al lenguaje máquina, es decir, es un lenguaje de bajo nivel.

  • El lenguaje ensamblador es difícilmente portable, es decir, un código escrito para un microprocesador, puede necesitar ser modificado, para poder ser usado en otra máquina distinta. Al cambiar a una máquina con arquitectura diferente, generalmente es necesario reescribirlo completamente.

  • Los programas hechos por un programador experto en lenguaje ensamblador son generalmente mucho más rápidos y consumen menos recursos del sistema (memoria RAM y ROM) que el programa equivalente compilado desde un lenguaje de alto nivel. Al programar cuidadosamente en lenguaje ensamblador se pueden crear programas que se ejecutan más rápidamente y ocupan menos espacio que con lenguajes de alto nivel.

  • Con el lenguaje ensamblador se tiene un control muy preciso de las tareas realizadas por un microprocesador por lo que se pueden crear segmentos de código difíciles y/o muy ineficientes de programar en un lenguaje de alto nivel, ya que, entre otras cosas, en el lenguaje ensamblador se dispone de instrucciones del CPU que generalmente no están disponibles en los lenguajes de alto nivel.

  • También se puede controlar el tiempo en que tarda una rutina en ejecutarse, e impedir que se interrumpa durante su ejecución.

  • 4. De los tres niveles mencionados seleccione uno en programas que usamos como:

el cual

usted ubique los

SAP,

MATLAB, AUTOCAD, PCWIND,

ROADCALC

Todos estos programas pertenecen al nivel de abstracción

  • 5. Utilizando un lenguaje de programación indique que características son las compatibles para la descripción de memoria y especificaciones técnicas de un proyecto.

El lenguaje de programación que cumple con estas características es el LENGUAJE DE ENSAMBLADOR.

  • Al programar cuidadosamente en lenguaje ensamblador se pueden crear programas que se ejecutan más rápidamente y ocupan menos espacio que con lenguajes de alto nivel.

8

 
 

PROGRAMACION

“PROGRAMA Y PROGRAMACION”

BASICA

  • Con el lenguaje ensamblador se tiene un control muy preciso de las tareas realizadas por un microprocesador por lo que se pueden crear segmentos de código difíciles y/o muy ineficientes de programar en un lenguaje de alto nivel, ya que, entre otras cosas, en el lenguaje ensamblador se dispone de instrucciones del CPU que generalmente no están disponibles en los lenguajes de alto nivel.

  • Los programas hechos por un programador experto en lenguaje ensamblador son generalmente mucho más rápidos y consumen menos recursos del sistema (memoria RAM y ROM) que el programa equivalente compilado desde un lenguaje de alto nivel.

VENTAJAS DE LA PROGRAMACIÓN:

  • Los programas son más fáciles de entender.

  • Se reduce la complejidad de las pruebas.

  • Aumenta la productividad del programador.

  • Los programas queden mejor documentados internamente.

  • Un programa está estructurado si posee un único punto de entrada y sólo uno de salida, existen de "1 a n" caminos desde el principio hasta el fin del programa y por último, que todas las instrucciones son ejecutables sin que aparezcan bucles infinitos.

DESVENTAJAS DE LA PROGRAMACION:

  • Manejo de la herramienta de programación: En este caso la persona que no conozca el lenguaje BASIC le costará mucho más que otro persona que lo haya usado hace algún tiempo atrás, por lo que se le puede pedir ayuda a otra persona con conocimientos en programación .

  • Diferencias numéricas de las respuestas: Una mala costumbre que se hace en los planteamientos es la aproximación decimal de las respuestas que tienden a exasperar al alumno; hay que aclararle previamente esta diferencia que los cálculos fueron realizados por un computador y no por un calculador así como hacer hincapié en cómo se hace la representación en notación científica en un computador, así como el rango de valores que se va a tomar para realizar el algoritmo para que no genere valores numéricos demasiado grandes o demasiados pequeños.

  • Reedición del archivo: Para un docente que tenga varios cursos es probable que tenga que correr varias veces el algoritmo para generar grupos de ejercicios diferentes. Esto implica que ese conjunto de archivos que se abren con word hay que hacerle la misma modificación varias veces el cual puede ser un trabajo pesado.

9

 
 

PROGRAMACION

“PROGRAMA Y PROGRAMACION”

BASICA

PROGRAMA

Un programa informático es un conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas en una computadora. Sin programas, estas máquinas no pueden funcionar. 1 2 Al conjunto general de programas, se le denomina software, que más genéricamente se refiere al equipamiento lógico o soporte lógico de una computadora digital.

En informática, se los denomina comúnmente binarios, (propio en sistemas Unix, donde debido a la estructura de este último, los ficheros no necesitan hacer uso de extensiones. Posteriormente, los presentaron como ficheros ejecutables, con extensión .exe, en los sistemas operativos de la familia Windows) debido a que una vez que han pasado por el proceso de compilación y han sido creados, las instrucciones que se escribieron en un lenguaje de programación que los humanos usan para escribirlos con mayor facilidad, se han traducido al único idioma que la máquina comprende, combinaciones de ceros y unos llamada código máquina. El mismo término, puede referirse tanto a un programa ejecutable, como a su código fuente, el cual es transformado en un binario cuando escompilado.

Generalmente el código fuente lo escriben profesionales conocidos como programadores. Se escribe en un lenguaje que sigue uno de los siguientes dos paradigmas: imperativo o declarativo y que posteriormente puede ser convertido en una imagen ejecutable por un compilador. Cuando se pide que el programa sea ejecutado, el procesador ejecuta instrucción por instrucción.

De acuerdo a sus funciones, se clasifican en software de sistema y software de aplicación. En los computadores actuales, al hecho de ejecutar varios programas de forma simultánea y eficiente, se le conoce como multitarea.

ELEMENTOS BASICOS:

En el ámbito general, un programa codificado o escrito bajo cualquier lenguaje de programación estructurado consta básicamente de dos secciones:

· Sección encabezado

· Sección cuerpo de programa

La sección de encabezado es usada para declarar, mencionar o identificar las variables con sus respectivos tipos y/o las constantes que se vayan a utilizar en el desarrollo del programa, así como también el nombre de las funciones y/o los procedimientos que ejecutarán las instrucciones de los diferentes algoritmos que va a tener dicho programa. Además en esta sección se declaran los archivos de inclusión (Archivos con extensión “.h”) que permiten el uso de algunas funciones que son necesarias para el desarrollo en si del

10

 
 

PROGRAMACION

“PROGRAMA Y PROGRAMACION”

BASICA

programa. Igualmente se especifican las estructuras de datos complejas que se vayan a manejar.

En la sección cuerpo de programa realmente se describen todos los procedimientos y/o funciones que se van a ejecutar dentro del programa así como también el código del programa principal. Como cuerpo de programa es indispensable que haya parte principal mientras que los procedimientos y/o funciones son opcionales.

ESTRUCTURA:

En la programación estructurada hay un inicio y un fin perfectamente bien definido de acuerdo al diagrama de flujo que se planteó al concebir la idea del programa.

Un programa bien estructurado debería tener algún subprograma que capture cualquier error dentro del programa principal o de cualquier subprograma dentro de la aplicación de tal modo que el subprograma que captura los errores genere un registro de datos que describa el error generado y/o en qué subprograma se generó el error para posteriormente corregirlo. Para facilitar la corrección de estos errores se hace uso de los comentarios agregados en el código fuente.

11