Presentación de conceptos básicos de Programación que se desarrollarán a lo largo de la carrera de Tecnicatura en Programación de la EEST N° 7 de Avellaneda.
3. QUÉ ES UN PROGRAMA?
Es un conjunto de instrucciones escritas en un
determinado lenguaje que dirigen a la
computadora para que ésta lleve a cabo una
secuencia de acciones con el objetivo de realizar
una o más operaciones que permitan solucionar
un problema.
4. ESTRUCTURA DE UN PROGRAMA
Entrada de
datos Salida de
la información
Procesamiento
de datos
5. EL PROCESO DE PROGRAMACIÓN
• Definición-descripción del problema
• Diseño del algoritmo
• Codificación del programa
• Depuración y verificación
6. TIPOS DE PROGRAMA
Hay distintos tipos de programas:
Secuenciales: El programa está compuesto por un
conjunto de instrucciones que se ejecutan una a
continuación de la otra.
Condicionales: El programa contiene estructuras
condicionales, en base al resultado que estas arrojan
se toman diversos caminos en la resolución.
Repetitivos: Permiten repetir procesos en base a una
condición determinada.
8. ALGORITMO
Antes de definir algoritmo y proceso hagamos
una analogia del arte de programación
con el arte de la cocina.
Supongamos … deseamos hacer un bizcochuelo,
entonces, estamos frente a un problema, que para
solucionarlo conviene dividirlo en subproblemas:
9. ALGORITMO
1. Conseguir la receta,
2. Obtener los ingredientes,
3. Elaborar el bizcochuelo
4. Servirlo y
5. Comerlo
10. ALGORITMO
Dependiendo del tamaño de cada uno de estos “pequeños
subproblemas” se requerirá o no dividirlo en más
subproblemas.
El proceso de cocinar el bizcochuelo (salida) es algo más
complejo, no sólo depende de los ingredientes (entradas
del proceso), sino también de una receta (algoritmo), con
ayuda de utensillos, cocina, cocinero, etc., (hardware).
11. ALGORITMO
Un algoritmo, se define como:
“Secuencia finita de instrucciones, reglas o pasos que
describen de forma precisa las operaciones que un
computador debe realizar para llevar a cabo una tarea en
un tiempo finito". [Donald E. Knuth, 1968]
De ahí que se deducen las siguientes características
principales: finito, definido, modular, eficiente,
comprensible, modificable..
12. ALGORITMO
Finito,: un algoritmo debe contener un número
específico y numerable de pasos y deberá finalizar al
completarlos.
Definido: Sin ambigüedad, cada paso del algoritmo debe
indicar la acción a realizar sin criterios de interpretación.
Modular: :Siempre que sea posible, debe poder dividirse
en subprogramas.
13. ALGORITMO
Eficiente: Debe permitir resolver el problema, utilizando
la menor cantidad de pasos.
Comprensible: Debe ser fácil de leer y de entender.
Modificable: Debe permitir la actualización sin
necesidad de modificar todo el prograna.
14. ALGORITMO
Cualquiera sea el problema, se resuelve a
través de un algoritmo, pero ¿cuales serán
las características comunes de todo
problema?, es decir, ¿qué cosas después de
leer una y otra vez podemos rescatar?
LOS DATOS!!!
15. DATOS
Un dato puede significar un número, una letra, o cualquier símbolo que
representa una palabra, una cantidad, una medida o una descripción.
De ahí que no debemos confundir entre el dato mismo y su representación.
Por ejemplo:
Dato específico Qué representa
25 años edad
16. TIPOS DE DATOS
Se dividen en:
Numéricos: enteros, reales, de simple o doble
precisión.
Alfanuméricos: Carácter o cadena, uno o más
caracteres, según el dato que se quiera
representar.
Lógicos o booleanos: pueden contener true o
false, 1 o 0.
17. TIPOS DE DATOS
Con ellos pueden representarse:
Edades, longitudes, nombres, marcas de
autos, sueldos, fechas, etc.
Sobre ellos pueden aplicarse ciertas
restricciones como:
¿Qué valores pueden tomar?
¿ En qué expresiones pueden intervenir?
¿ Cómo se van a relacionar entre sí?
19. VARIABLE
Es el lugar de memoria donde se almacena un
dato y se puede modificar por un nuevo ingreso
o a través de una asignación .
La cantidad de memoria utilizada depende de
su tipo.
Se la identifica con un nombre (según el
entorno, podrá tener 8 o más caracteres).
20. CONSTANTE
En programación, una constante es un valor que no
puede ser alterado durante la ejecución de un
programa.
Una constante corresponde a una longitud fija de un
área reservada en la memoria principal del
ordenador, donde el programa almacena valores fijos.
Por ejemplo:
El valor de pi = 3.1416
21. CONSTANTES Y VARIABLES
Para declarar una CONSTANTE se utiliza la
siguiente sintaxis:
const tipo nombre= valor
Para declarar una VARIABLE se utiliza la siguiente
sintaxis:
tipo nombre
o
tipo nombre = valor
22. EXPRESIONES
• Cada expresión toma un valor que se determina
tomando los valores de las variables y
constantes implicadas y la ejecución de las
operaciones.
• Una expresión consta de operandos (constantes,
variables )y operadores:
• aritméticos (+ - * /=…)
• lógicos ( y o no)
• relacionales (< > <= >= = <>)
24. REPRESENTACIÓN DE ALGORITMO
Para representar un algoritmo, se utilizan, distintos tipos de
notación:
Lenguaje natural
Pseudocódigo y
Diagramas de flujo.
Lenguaje de programación
25. REPRESENTACIÓN DE ALGORITMO
Lenguaje natural
Una representación a través de un lenguaje de uso
cotidiano como el castellano.
Ej: Sumar 2 números y mostrar el resultado.
Paso 1: Leer dos números (pedir datos)
Paso 2: Sumar los datos (realizar la operación)
Paso 3: Obtener el resultado (mostrar el resultado)
Paso 4: Probar el resultado (verificar el resultado)
26. REPRESENTACIÓN DE ALGORITMO
Pseudocódigo
Permite escribir algoritmos en un lenguaje
humano simplificado, que no es
dependiente de ningún lenguaje de
programación , pero contiene las mismas
estructuras de ellos.
29. REPRESENTACIÓN DE ALGORITMO
Lenguaje de Programación
Codificar consiste en escribir en un
lenguaje de programación (lenguaje de
máquina o lenguaje de alto nivel) la
solución ya encontrada o sugerida, por
medio del algoritmo.
30. REPRESENTACIÓN DE ALGORITMO
Paradigmas de Programación
Existen diferentes paradigmas o modelos de
programación basados en la forma que
determina los métodos y las herramientas que
un programador usará en la construcción de un
software.
Asi tenemos lenguajes lineales estructurados,
híbridos (aceptan distintos paradigmas), u
orientados a objeto. Con o sin entorno gráfico.
31. MAS SOBRE …
Lenguajes de alto nivel
Son aquellos que el programador utiliza
de manera simple para expresar cada
una de las instrucciones-acciones del
programa, son lenguajes mas cercanos
al programador que a la máquina..
32. REPRESENTACIÓN DE ALGORITMO
Estructuras de programación
Todos ellos cuentan con las mismas
estructuras de programación, que pueden
escribirse de distinta forma, según el
lenguaje que utilicemos.
Se dividen en: Entrada / Salida, y Control
(Condicionales y Repetición).
33. ESCRIBIENDO UN PROGRAMA
El código fuente está formado por un conjunto de
líneas de texto, con las instrucciones que debe seguir la
computadora.
Una vez que el código fuente es traducido por el
compilador, intérprete o ensamblador, se genera un
código llamado: código ejecutable.
Estas etapas también varían dependiendo del lenguaje
de programación que utilicemos.
34. ALGUNOS EJEMPLOS…
HTML , CSS, PHP, SQL: HyperText Markup
Language (lenguaje de marcado de
hipertexto) se utiliza en la construcción de
sitios Web.
Action Script: Es el lenguaje de
programación orientado a objetos, utilizado
por la Plataforma Adobe Flash, que permite
optimizar las animaciones.