es el proceso de tomar un algoritmo y codificarlo en una notación, un lenguaje de programación, de modo que pueda ser ejecutado por una computadora.La programación, sin embargo, es una parte importante de lo que hace un científico de la computación. La programación es a menudo la manera en la que creamos una representación para nuestras soluciones. Por tanto, esta representación en un lenguaje y el proceso de crearla se convierte en una parte fundamental de la disciplina.Por ejemplo, la mayoría de lenguajes de programación proporcionan un tipo de datos para los enteros. Las cadenas de dígitos binarios en la memoria de la computadora pueden interpretarse como enteros y se les dan los significados típicos que comúnmente asociamos con los enteros (e.g. 23, 654 y -19). Además, un tipo de datos también proporciona una descripción de las operaciones en las que los ítems de datos pueden participar. Con enteros, son comunes las operaciones tales como la suma, la resta y la multiplicación. Podemos dar por sentado que los tipos de datos numéricos puedan participar en estas operaciones aritméticas.
ELEMENTOS DE LA PROGRMACION:
ALGORITMO: Se entiende como un conjunto finito de pasos a que especifican una secuencia de operaciones a realizar en orden para resolver un problema específico o clases de problemas, es decir, es un método para la solución del problema.
PROPIEDADES: Se expresa en términos de un:
- Lenguaje común
- Diagramas de flujo
- Pseudocódigo
- Lenguajes de programación
Es importante aclarar que los algoritmos deben expresarse de manera gráfica para una mejor comprensión, a este tipo de grafica se le conoce como diagrama de flujo del algoritmo.
ALGORITMOS EN PROGRAMACIÓN: Un programa de computadora es un algoritmo que le dice a la computadora los pasos específicos para llevar a cabo una tarea. Los algoritmos son rigurosamente definidos para que la computadora pueda interpretarlos.
SÍMBOLOS GRÁFICOS: Dentro de los símbolos fundamentales para la creación de diagramas de flujo, los símbolos gráficos son utilizados específicamente para operaciones aritméticas y relaciones condicionales.
DIAGRAMAS DE FLUJO: Los diagramas de flujo son una manera de representar visualmente el flujo de datos a través de sistemas de tratamiento de información, los diagramas de flujo describen que operaciones y en que secuencia se requieren para solucionar un problema dado.
IMPLEMENTACIÓN: En programación, se implementan en forma de sentencias en algún lenguaje de programación, de esta manera, la forma de escribir los algoritmos depende del lenguaje de programación, también pueden representarse gráficamente empleando diagramas de flujo o formas similares, de esta manera, son fácilmente comprensibles, especialmente para personas que no son programadores. son más “universales”, pues no dependen de un lenguaje de programación específico.
¿QUE SON VARIABLES?:
Una variable es una localización o casillero en la memoria principal que almacena un valor que puede cambiar en el transcurso de la ejecución del programa, cuando un programa necesita almacenar un dato, necesita una variable, toda variable tiene un nombre, un tipo de dato y un valor, antes de poder utilizar una variable es necesario declararla especificando su nombre y su tipo de dato, para declarar variables se tienen los siguientes formatos:
Declaración de una variable: tipo nombre
Declaración de varias variables con el mismo tipo de dato: tipo nombre 1, nombre 2, nombre 3...
Donde:
- Tipo: es el tipo de dato de la variable que puede ser:
- Entero: si la variable almacenará un número entero.
- Real: si la variable almacenará un numero decimal.
- Carácter: si la variable almacenará un carácter.
- Cadena: si la variable almacenará un conjunto de caracteres.
- Lógico: si la variable almacenará el valor verdadero o el valor falso.
Nombre de las variables: el nombre de la variable debe comenzar con una letra, un símbolo de subrayado o un símbolo de dólar, los demás caracteres del nombre puede ser letras, símbolos de subrayado o símbolo de dólar, debe considerarse también que una letra mayúscula se considera diferente de una letra minúscula.
¿QUE SON SENTENCIAS DE PROGRAMACIÓN:
Las sentencias son los elementos básicos en los que se divide el código en un lenguaje de programación, un programa no es más que un conjunto de sentencias que se ejecutan para realizar una cierta tarea.
SENTENCIAS SIMPLES:
Las sentencias simples se dividen en:
- sentencia de salto incondicional (goto):
Se utilizaba mucho en los primeros lenguajes de programación porque era la única manera de saltar de una instrucción del programa a otra.
Es una mala herramienta de programación y se puede cambiar por las sentencias de control repetitivas y alternativas.
- Sentencia de llamada a procedimiento:
Mediante el uso de procedimientos facilitarás la resolución de problemas, la legibilidad de tu código y la depuración de los programas, lo que hace es dividir un programa grande en otros más pequeños para llamarlos cuando se requieran, la declaración de procedimientos se suele hacer justo antes del cuerpo principal del programa.
- Sentencias de asignación:
Es una de las instrucciones más comunes en un programa, permite dar un primer valor o cambiar el valor a una variable.
¿QUE SON OPERADORES?:
Una expresión es una combinación de operandos y operadores, los operandos pueden ser: Constantes literales o con nombre, variables y otras expresiones, lo que se hace con una expresión es evaluarla para que devuelva un valor.
Dentro de las expresiones distinguimos dos clases según el tipo de datos que devuelven al evaluarlas:
- Aritméticas: las que devuelven un valor numérico
- Lógicas: las que devuelven true o false
En el while se revisa: si hay más elementos y si aun no lo hemos encontrado, si no se cumple alguna de las dos condiciones se sale del bucle.
Evaluación de expresiones: Para evaluar una expresión, sólo hay que saber sumar, restar, si un número es mayor que otro.
Hay tres reglas de prioridad a seguir para evaluar una expresión:
Hay tres reglas de prioridad a seguir para evaluar una expresión:
- Primero, los paréntesis (si tiene)
- Después, seguir el orden de prioridad de operadores
- Por último, si aparecen dos o más operadores iguales, se evalúan de izquierda a derecha.
- HISTORIA DE LA PROGRAMACIÓN:
- La historia de la Programación está relacionada directamente con la aparición de los computadores, que ya desde el siglo XV tuvo sus inicios con la construcción de una máquina que realizaba operaciones básicas y raíces cuadradas (Gottfried Wilheml von Leibniz); aunque en realidad la primera gran influencia hacia la creación de los computadores fue la máquina diferencial para el cálculo de polinomios, proyecto no concluido de Charles Babbage (1793-1871) con el apoyo de Lady Ada Countess of Lovelace (1815-1852), primera persona que incursionó en la programación y de quien proviene el nombre del lenguaje de programación ADA creado por el DoD (Departamento de defensa de Estados Unidos) en la década de 1970.
Luego los avances en las ciencias informáticas han sido muy acelerados, se reemplazó los tubos al vacío por transistores en 1958 y en el mismo año, se sustituyeron por circuitos integrados, y en 1961 se miniaturizaron en chips de silicio. En 1971 apareció el primer microprocesador de Intel; y en 1973 el primer sistema operativo CP/M. El primer computador personal es comercializado por IBM en el año 1980.
De acuerdo a este breve viaje por la historia, la programación está vinculada a la aparición de los computadores, y los lenguajes tuvieron también su evolución. Inicialmente se programaba en código binario, es decir en cadenas de 0s y 1s, que es el lenguaje que entiende directamente el computador, tarea extremadamente difícil; luego se creó el lenguaje ensamblador, que aunque era lo mismo que programar en binario, al estar en letras era más fácil de recordar. Posteriormente aparecieron lenguajes de alto nivel, que en general, utilizan palabras en inglés, para dar las órdenes a seguir, para lo cual utilizan un proceso intermedio entre el lenguaje máquina y el nuevo código llamado código fuente, este proceso puede ser un compilador o un intérprete.
Un compilador lee todas las instrucciones y genera un resultado; un intérprete ejecuta y genera resultados línea a línea. En cualquier caso han aparecido nuevos lenguajes de programación, unos denominados estructurados y en la actualidad en cambio los lenguajes orientados a objetos y los lenguajes orientados a eventos.
6 EXPOSITORES DE PROGRAMCION:
1.Dennis Ritchie:
Dennis Ritchie MacAlistair fue un científico informático estadounidense a quien se le acredita ser uno de los pioneros de la era digital. Él creó uno de los lenguajes de programación más utilizados hoy en día, C. Como sabéis, C es ampliamente utilizado en diversas aplicaciones de software, desarrollo de sistemas embebidos, sistemas operativos, y ha influido en los lenguajes de programación más modernos.
Dennis también co-creó el sistema operativo UNIX. Por su trabajo, en 1983 recibió el Premio Turing de la ACM, la Medalla de Hamming en 1990 de la IEEE y en 1999 la Medalla Nacional de Tecnología del presidente Clinton. En el año 2007 se jubiló, siendo el jefe del departamento de Investigación en software de sistemas de Alcatel-Lucent. Falleció el 12 de octubre de 2011, el mismo día que se lanzó Fedora 16 al cual dedicaron en su honor.
2.Guido Van Rossum:
Guido van Rossum es un programador holandés que desarrolló el popular lenguaje de programación Python, que es ampliamente utilizado en la actualidad. El hecho de crear Python lo llevó a ser declarado BDFL (Benevolent Dictator for Life), titulo otorgado por la comunidad de Python que significa que continuará supervisando el proceso y desarrollo de Python junto a la toma de decisiones importantes cuando sea necesario, para siempre.
Rossum había desarrollado Python mientras trabajaba en Google, donde también creó Mondrian (un sistema de revisión de código utilizado internamente por Google) y Rietveld. Después de trabajar para Google durante 7 años, ahora está trabajando en Dropbox, el sistema de almacenamiento en la nube. Rossum ha sido reconocido como un distinguido ingeniero por la Association for Computing Machinery y también recibió el Premio NLUUG en mayo de 2003.
3.Ken Thompson:
Kenneth Lane Thompson, o simplemente Ken, como es llamado por la comunidad hacker, es un pionero americano de la informática. Thompson diseñó e implementó originalmente el sistema operativo Unix y también inventó el lenguaje de programación B (el antecesor directo del archifamoso lenguaje de programación C), y fue uno de los primeros desarrolladores de los sistemas operativos Plan 9.
Desde 2006, Thompson también ha co-desarrollado el lenguaje de programación Go mientras trabajaba en Google. Otras contribuciones de Ken al mundo de la programación han sido sus trabajos sobre las expresiones regulares, la creación de algunos editores de texto para el desarrollo de aplicaciones, la definición de la codificación UTF-8 y la creación de varios sistemas informáticos programados para jugar al ajedrez, como Belle.
4.Ada Lovelace:
Augusta Ada King, más comúnmente conocida como Ada Lovelace (la cual podemos ver en la imagen que encabeza el artículo), fue una matemática inglesa y la primera programadora de computadoras del mundo. Sobre todo fue conocida por su trabajo sobre la máquina calculadora mecánica de uso general de Charles Babbage, la máquina analítica. Las notas que creó para el desarrollo de dicha máquina analítica incluyen lo que se podría reconocer hoy en día como el primer algoritmo creado con el único propósito de ser procesado por una máquina, o en otras palabras, el primer programa informático.
Ada era una chica talentosa desde su infancia, con una mentalidad poco común, que predijo que las computadoras un día irían más allá de los calculos numéricos, totalmente en contra de la opinión popular de la época. La principal inspiración de Ada vino de su padre y sin ella, quién sabe cuánto tiempo le tomaría a una persona diseñar una aplicación informática. El lenguaje informático Ada tiene ese nombre en su honor.
5.Niklaus Wirth:
Niklaus Wirth Emil es un informático suizo que es considerado como el padre de la programación moderna tal y como la conocemos hoy en día, entre otros campos de la ingeniería de software. Él es bastante conocido por la creación de varios lenguajes de programación, incluyendo el popular Pascal, Euler, Algol W, Modula, Modula-2, Oberon, Oberon-2 y Oberon-07. También diseñó el lenguaje de programación PL / 0 para ilustrar el diseño del compilador que sirvió de base para muchas otras clases de compiladores.
Niklaus había trabajado previamente como parte del equipo de diseño e implementación de los sistemas operativos de Lilith y Oberon. El trabajo y el desarrollo de estos lenguajes de programación como pionero de la técnica le sirvieron a Wirth para ganar el prestigioso Premio Turing en 1984. Se retiró del mundo de la informática en 1999 y disfruta de su jubilación en Suiza.
6.Bjarne Stroustrup:
Bjarne Stroustrup es un informático danés a quien se le atribuye la creación y el desarrollo del archifamoso lenguaje de programación C++, el cual es uno de los lenguajes más utilizados hoy en día. Él no sólo inventó este lenguaje, sino que también lo evolucionó escribiendo sus primeras definiciones,desarrollando su primera aplicación, formulando sus criterios de diseño y el diseño de todos sus principales instalaciones...
Bjarne trabaja actualmente como profesor en la Facultad de Ingeniería de Ciencias de la Computación en la Universidad Texas. Anteriormente trabajó a la cabeza del departamento de Investigación en Programación de los laboratorios Bell de AT&T, desde su creación hasta finales de 2002.